当前位置:首页 > 嵌入式 > 嵌入式硬件

在特殊环境的数据测控应用中,无线数据传输已经越来越广泛地被运用,+的组合特别适合于低功耗,短距离(100-200m)、小数据量的无线数传系统, CPU在低功耗应用方面有很大优势,芯片具有功耗低、控制简单、可自动处理字头和CRC校验的优点,两者结合组成的数传系统可以在很多产品中得到应用。

1 简介

MSP430是TI公司新推出的16位系列,在供电的低功耗应用中具有独特的优势,其工作电压在1.8-3.6V之间,正常工作时功耗可控制在200μA左右,低功耗模式使可实现2μA甚至0.1μA的低功耗,MSP430具有非常高的集成度,通常在单个芯片上集成有12位的A/D、比较器、多个器,片内、看门狗、片内振荡器、大量的I/O端口及大容量的片内存储器,一般单片就可以满足大多数的应用需要。

在低功耗应用中设计程序时,最好采用以下方法:CPU在初始化完成后,处于低功耗工作模式,在有外部事件发生时唤醒进入终端服务程序,完成后重新进入低功耗模式,照此循环往复,可以最大限度地降低功耗。

2 简介

nRF905是挪威Nordic公司推出的单片射频发射器芯片,工作电压为1.9-3.6V,32引脚QFN封装(5mm×5mm),工作于433/868/915MHz3个ISM频道(可以免费使用)。nRF905可以自动完成处理字头和CRT(循环冗余码校验)的工作,可由片内硬件自动完成曼彻斯特编码/解码,使用SPI接口与微控制器通信,配置非常方便,其功耗非常低,以-10dBm的输出功率发射时电流只有11mA,在接收模式时电流为12.5mA。

nRF905传输数据时为非实时方式,即发送端发出数据,接收端收到后先暂存于芯片存储器内,外面的MCU可以在需要时再到芯片中去取。nRF905一次的数据传输量最多为32B。

2.1 nRF905的工作模式及设置

nRF905的两种工作模式和两种节能模式,分别为掉电模式、待机模式、ShockBurst TM接收模式和ShockBurst TM发送模式,这几种模式由外界CPU通过控制nRF905的3个引脚PWR_UP、TRX_CE和TX_EN的高低电平来决定。

外界MCU通过SPI总线配置nRF905的内部寄存器,读写数据时必须把其置为待机或掉电模式,nRF905在待机模式时功耗为40μA,在掉电模式时功耗为2.5μA。

2.2 nRF905的状态输出

nRF905有3个引脚用于状态输出,分别是:CD(载波检测)、AM(地址匹配)和DR(数据就绪),均为高电平有效,nRF905在处于接收模式时,若检测到接收频率段的载波,就置CD为高,接着检测载波数据中的地址字节,若与本身已配置的接收地址相同,则置AM为高,若再检测到接收数据中的CRC校验正确,则存储有效数据字节,置DR为高。

此外,nRF905还有一个时钟输出引脚uPCLH,供用户选择使用。通过配置内部寄存器,可改变其频率输出,这一点在调试时很有用。无线系统至少需要一发一收两个设备,调试时若出现问题很难判断是哪一方的故障。可以通过修改nRF905的寄存器,用观察uPCLK输出是否变化的方法,来判断其硬件电路和CPU操作,nRF905的程序是否正确,从而判断及设备是否工作正常。

2.3 nRF905的数据接口

外围MCU通过SPI总线配置nRF905的内部寄存器和收发数据,nRF905的SPI总线包括4个引脚:CSN(SPI使能)、SCK(SPI时钟)、MISO(主入从出)和MOSI(主出从入)。这里nRF905为从机,其SPI的时钟范围很宽,可以从1Hz-10MHz,因此MCU在写控制程序时不必苛求时间的准确度。

SPI总线的每次操作都必须在使能引脚CSN的下降沿开始,CSN低电平有效,总线上的数据在时钟的上升沿有效,MCU对SPI总线的操作不外乎两种方式:读和写,在进行读操作时,先把CSN置低,然后在MOSI数据线上输出一个表示读命令的字节,与此同时,nRF905会在MISO数据线上输出一字节表示状态信息的数据,随后输出一地址字节,后面跟随有效数据,在进行写操作时比较简单,MCU先把CSN拉低,然后在MOSI线上输出写命令字节和数据字节即可。

2.4 nRF905的寄存器配置

nRF905内部有5类寄存器:一是射频配置寄存器,共10个字节,包括中心频点、无线发送功率配置、接收灵敏度、收发数据的有效字节数、结社地址配置等重要信息;二是发送数据寄存器,共32字节,MCU要向外发的数据就需要写在这里,三是发送地址,共4个字节,一对收发设备要正常通信,就需要发送端的发送地址与接收端的接手地址配置相同,四是接收数据寄存器,共32字节,nRF905接收到的有效数据就存储在这些寄存器中,MCU可以在需要时到这里读取,五是状态寄存器,1个字节,含有地址匹配和数据就绪的信息,一般不用。

MCU若要操作这些寄存器,需遵循nRF905规定的操作命令,常用的有以下7种,都是1个字节;写射频配置(0XH,“X”含4位二进制位,该字节表示要开始写的初始字节数)、读射频配置(1XH,“X”含4位二进制位,该字节表示要从哪个字节开始读)、写发送数据(20H),读发送数据(21H)、写发送地址(22H)、读发送地址(23H)和读接收数据(24H),关于寄存器的详细信息可以参阅nRF905的数据手册。

2.5 nRF905的工作过程

nRF905在正常工作前应由MCU先根据需要写好配置寄存器,或是按照默认配置工作,其后的工作主要是两个:发送数据和接收数据。

发送数据时,MCU应先把nRF905置于待机模式(PWR_UP引脚为高、TRX_CE引脚为低)然后通过SPI总线把发送地址和待发送的数据都写入相应的寄存器中,之后把nRF905置于发送模块(PWR_UP、TRX_CE和TX_EN全置高)数据就会自动通过发送出去,若射频配置寄存器中的自动重发位(_RETRAN)设为有,数据包就会重复不断地一直向外发,直到MCU把TRX_CE拉低,退出发送模式为止。为了数据更可靠地传输,建议多使用此种方式。

接收数据时,MCU先在nRF905的待机模式中把射频配置寄存器中的接收地址写好,然后置其于接收模式(PWR_UP=1、TRX_CE=1、TX_EN=0),nRF905就会自动接收空中的载波,若收到地址匹配的和校验正确的有效数据,DR引脚会自动置高,MCU在检测到这个信号后,可以改其为待机模式,通过SPI总线从接收数据寄存器中读出有效数据。

3 系统硬件设计

MSP430的模块可通过寄存器配置为通用异步串行口或SPI模块功能,这里配置为SPI模块,本系统选用的MCU是,在硬件设计时把MCU的SPI接口和nRF9051SPI接口相连即可,另外再选几个I/O口连接Nrf9051输出输出信号。

对于初次接接触无线系统的设计者,因其射频部分的元件采购,焊接和调试比较麻烦,可以选用模块,该模块内核使用nRF905,硬件电路已经焊好,十月起来相对方便一些。

4 控制程序设计

本系统设计的重点是控制的程序设计,大致分为两个阶段:首先是对进行初始配置,配置完成后按 需要便携书记的发送或接收程序。

4.1 初始化配置

第一阶段应完成初始化配置,分以下几项:

1)MSP430的SPI接口设置,MSP4301异步串行接口和SPI接口用同一个模块,贼里需要用软件配置为SPI功能,本设计中SPI配置为主机模块、3线制和8位数据,程序源代码参见子程序“SPI_SET五”。(编者注:程序源代码见本刊网站.cn)

2)初始化的射频配置寄存器,这些寄存器中有很多信息,必须根据实际情况进行配置,本设计中nRF905外界晶体,“XOF应配置为“011”;“PA_PWR”为发射功率,RX_RED_PWR”为接收命灵敏度,可根据需要配置;另外还有发送地址、接收地址、发送数据和结社数据的长度(字节数)可根据实际应用配置,注意贼组寄存器中海油接收时的实际地址,不而发送地址在单独的寄存器中。

3)配制的发送地址,最多4个字节(32位),发送端的发送地址应于接受端设备的结社地址相同,在实际工作中nRF901可以自动滤滤除地址不相同的数据,只有地址匹配且校验正确的数据彩绘被接受,并存储在接收数据寄存器中。

4.2 发送数据

使nRF905发送数据前需要MSP430通过SPI总线在待机模式便板待法数据填进发送数据寄存器中,一次最多32B,然而把nRF9051“TRX_CE”、“TX_EN” 因该都置为高电平,数据就会自动发送出去,本设计射频配置寄存器中选定了自动重发位,因此在“TRX_CE”被置高的时间内数据一直在重复不断地发。本程序中设计延时500ms,之后拉低“TR X_CE”因该,回到待机模式。

4.3 接收数据

MSP430把nRF905的“TRX_CE”引脚置为高电平,“TX_CE引脚拉为低电平后就刻蚀结社数据,本设计中CPU在设定的35s内一直判断Nrf9051“DR”引脚是否便变高个,若为高则证明接收到了有效数据,可以退出接收模式,弱一致没有接受2到,待时间到时也退出接接受是模块,退出后在待机模块,CPU通过SPI总线把内部的接收数据寄存器中数据读出,即接收道德有效数据。

便携接受部分程序时,有一点应该注意,很多资料中都没有提到,就是CPU在MOSI信号线上发出读命令字节后“MISO”信号线上nRF905会自动返回一字节数据,本本身的状态寄存器信息,后续的接收数据并不会自动跟着输出,只有CPU在MOSI上输出一个字节(可以是随意值),nRF905才会在“MISO”上返回一个字节,CPU再发,nRF905再满会,直到读完为止。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭