CC1000低功耗无线数字传输模块的设计与应用.doc

CC1000低功耗无线数字传输模块的设计与应用.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
CC1000低功耗无线数字传输模块的设计与应用

低功耗无线数字传输模块的设计与应用 [日期:2005-1-17] 来源:电子技术应用? 作者:申长军 吴庆宏 [字体:大 中 小] 介绍了一种以PIC16F73单片机芯片和CC1000调制解调芯片为核心的超低功耗无线数字传输模块的设计方案及实现方法,并给出了该模块在无线智能IC卡水表中的应用。该模块通信速率最高可达38.4kbps,查询工作方式下平均工作电流为10μA,与同类设计相比,该模块具有功耗低、使用方便、通信可靠等优点。 无线通信 低功耗 移频键控 PIC16F73单片机芯片 CC1000调制解调芯片 该模块采用Chipcon公司的超低功耗FSK调制解调芯片CC1000和Microchip公司的低功耗单片机PIC16F73,从而保证了系统的超低功耗。同时,为了适应电池供电系统的应用,该模块支持查询方式的无线通信,可以使系统的平均工作电流低至10μA。该模块具有8组信道,可以实现点对点、点对多点的半双工通信,并且提供标准串行数据接口,支持TTL、RS232和RS485通信接口,可以方便地与其它控制器或计算机连接。 图1 1 模块硬件设计 模块结构框图如图1所示。 作为工作在物理层和数据链路层的底层通信设备,该系统完成数据的调制解调、假数据过滤、数据组合、解码数据帧、数据校验等功能。在接收过程中完成数据由电信号向位流、由位流数据向字节,由字节向数据帧的变换,而在发送过程中则完成接收到的逆向过程。数据发送过程中数据流的变化如图2所示。 调制解调由CC1000完成。系统采用频移键控调制(FSK),载波频率为434MHz,带宽为64kHz,数据采用差分曼彻斯特编码发送,空中发送数据速率可以根据需要设置,最高FSK数据速率为76.8kpbs。CC1000采用三线命令接口和两线数据接口,可编程配置载波频率和数据速率等内容。有关CC1000的详细内容见参考文献。 模块控制器在发送时从用户接口接数据和命令,并将用户数据转换成数据帧传送给CC1000,控制CC1000进行数据发送。在接收时,控制器接收从CC1000传送过来的数据,分析数据,过滤噪声,将数据由位流转换为字节,进行校验并将用户数据通过串行口传送给用户,使用户可以实现所发即所收。 ??? 模块是为低功耗系统而设计的,除了具有SLP引脚可以直接休眠模块外,还有一些专门设计的命令来支持使用查询方式的通信。PCMD、RX、TX三线组成模块的三线接口,配置命令时PCMD必须为高电平。配置命令工作时序如图3所示。 发送数据时PCMD应置为低电平,通过串行口发送数据即可。模块使用时间间隔区分数据帧,如果有传输半个字节的时间没有接收到数据,则认为此前接收到的为一帧数据,系统将编码该帧数据并通过CC1000进行调制和发送。因此,如果用户数据是以数据帧的格式发送的,用户应当连续发送数据,以避免模块将一帧数据分割为两帧数据发送,从而降低发送效率。模块只能进行半双工通信,没有数据发送时模块处于接收状态;有休眠信号时模块进入体眠状态,此时模块无法接收和发送数据,只有将模块唤醒后,才能发送和接收数据。READY信号是模块工作状态指示信号。当READY长时间处于低电平状态时,可以使用RST将模块复位,重新设置模块的工作状态,以避免模块处于错误工作状态。 2 软件设计 系统软件采用专门为PIC单片机进行了优化,能够为PIC系列单片机产生优质高效的代码,具体内容参考文献。系统控制器软件设计是本系统的核心内容,由于控制器要完成与用户和CC1000双方的通信及数据封装,因此系统软件借用Windows系统的消息循环机制设计,采用消息循环的体系结构。这种结构使得程序结构清晰、可扩展性强、可移植性强。经过长时间的初中,证明这种结构非常适合单片机系统软件的开发。 ??? 图4为程序初始化和主函数部分的结构框图。系统程序总线结构采用消息驱动机制。在系统内部寄存器和变量初始化完成后便可以进入消息循环程序查询系统消息。系统消息一般是CPU外部或内部的事件通过CPU中断系统激励CPU运行的。为了能够使系统产生和响应消息,必须启动CPU的中断系统,因而在进入消息循环前启动CPU定时中断、串行通信中断、外部触发中断。程序初始化部分在CPU上电或复位后只执行一次,CPU在正常工作时即将终都在消息循环中反复检测消息是否存在,并根据消息的种类做不同的操作,最后清除相应的消息标志,再进行循环检测消息。本系统中消息共有三种,分别是程序节拍控制信号、与CC1000通信的信号以及与用户通信的信号。程序节拍控制信号控制程序的运行过程,包括时间信号、外部中断信号(休眠、唤醒)以及其它定时动作信号;与CC1000通信的信号包括CC1000状态转换信号、接收完成信号、发送开始信号以及发送完毕信号等,负责管理与CC1000的通信和控制工作;

文档评论(0)

skvdnd51 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档