摘要:以PIC单片机和CC1000为中心器材,规划并完结无线数据传输发射机;介绍PIC16C73芯片和CC1000芯片的功用,详细评论发射机的硬件和软件体系规划并予以完结。 关键词:无线数据 传输发射机 PIC CC1000 本文介绍以PIC16C73和CC1000为根本部件,规划并完结无线数据传输发射机的进程。 1 PIC16C73及CC1000简介 PIC16C73是Microchip公司出产的一种高性价比的8位嵌入式微控制器。
CC1000是为在无线条件下运用所规划的一种极低功率单芯片射频收发器。它主要是为315、433、868和915MHz的ISM和SRD设备所规划,可以编程作业在300~1000MHz规模之间的任一频率上。它具有极低的电流耗费、高灵敏度、体积小、低供电电压、FSK数据传输率可达 76.8kbps、FSK调制频谱批改等特色,它还为用户供给了简略易用的开发包。运用CC1000芯片规划电路简略,不需求运用很少的外部元件、不需求外部射频转化和中频滤波器。 2 体系规划 本无线数据传输发射机框图如图1所示。 图中,PIC16C73接纳数字或模拟信号,通过缓存、组帧后,将数据传送到射频发射机,由CC1000完结FSK调制后发射出去。
本规划中PIC16C73的振动周期为4MHz,指令周期为1μs。CC1000作业在发射状况,发射频率306.874457MHz,频偏64kHz,速率7638Kbps,发射功率10dBm。发射数据选用自定义帧格局,其格局为: 4字节位同步字—0AAH,0AAH,0AAH,0AAH; 2字节帧同步字(3位0加13位巴克码)—1FH,35H; 1字节地址或指令; 50字节数据。 上述57字节组成一帧,每两帧之间距离为8.25ms。 3 硬件规划 单片机PCI16C73与CC1000的衔接如图2所示。
单片机通过对3-wire串行设置接口(PDATA,PCLK和PALE)编程,使CC1000处在不同作业形式下。为完结数据回读,PDATA有必要使能双向引脚,另一个双向引脚被用来完结数据(DIO)的发送和接纳。供给数据定位的方位寄存器,彻底设置CC1000需求发送29个16位的数据帧(7位地址位、1位读/写位和8位数据位)。
在每个写循环中,编程数据PDATA线上都发送16位数据,
每个数据帧中前7位为地址位,下一位是读/写位(高电平写,低电平读),后8位是数据。在地址和读/写位传送进程中,程序地址锁存器使能PALE线有必要坚持低电平,然后传送8位数据位。PDATA上的数据同步在编程时钟PCLK的负沿完结。当D0,即8位数据位的最终一位现已载入时,数据就会被载入内部设置寄存器,时序如图3所示。 这些设置寄存器也可被单片机通过相同的设置接口读取。7位地址首要被发送,然后读/写位被置为低来,开端数据回读,时序如图4所示。 4 软件规划 4.1 整体流程图 软件选用模块化程序规划办法,图5是整体流程。 4.2 初始化 初始化是一项十分重要的作业,需求分别对PIC16C73和CC1000两个芯片进行初始化。因为本规划中要完结PC机与PIC之间的异步通讯和PIC的模/数据换功用,所以除了PIC16C73的各个PORT端口外,还应对串行通讯接口SCI部件和A/D转化部件等进行初始化。在单片机初始化完结后,通过它对CC1000进行初始化,使其作业在发射形式,其流程如图6所示。 4.3 中止服务子程序规划 PIC16C73有多达11种中止源,本规划运用了其间的SCI异步接纳中止和A/D转化完结中止。初始化作业完结后,当单片机通过SCI接纳完一字节数据后就会发生SCI接纳中止,别的,当单片机完结一次A/D后也会发生中止。在产品中止后,程序即进入中止服务子程序,要完结数据的缓存、缓存办理及组帧、数据传送作业。 图6 缓存办理的意图是运用者可以清楚地知道当时存储数据和发送数据的进程。
详细完结办法是在PIC16C73通用寄存器里拓荒一个数据缓存区,由50个寄存器组成,一起自定义收发数据计数器RX_IF0和 TX_IF0.RX_IF0是接纳数据计数器,其间寄存的值表明PIC16C73接纳到第几个数据,每接纳到一个数据,就将RX_IF0加1,一起寄存器地址加1,以便接纳下一个数据。当RX_IF0的值等于50时表明接纳完一帧数据。TX_IF0是发送数据计数器,其间存在的值表明PIC16C73向 CC1000发送了几个数据,PIC每发送完一个数据,就把TX_IF0加1。一起寄存器地址加1,以便发送下一个数据。TX_IF0等于50时,表明已发送完一帧数据。中止服务子程序流程如图7所示。 编写的程序通过调试,通过编译生成机器码,将其写入PIC,再将P%&&&&&%嵌入发射机电路,衔接正确后,通过调试到达了无线发射机的成效。