基于单片机的无线式数据通讯接口卡的设计
4 软件设计
EZ-USB FX单片机软件主要包括系统初始化、看门狗监控程序、与计算机通讯和读写nRF903数据程序等4个部分。
4.1 系统初始化
系统初始化主要包括EZ-USB FX的初始化和X5043的初始化。EZ-USB FX的初始化程序是软件设计中一个很重要的部分,包括8051的初始化和USB的初始化两部分,下面对其进行详细介绍。
8051的初始化包括两方面的初始化:I/O口初始化,寄存器初始化。EZ-USB FX是根据I/O口分配表对接口初始化。但是其I/O引脚结构与标准8051有很大的不同,它由一个OE寄存器控制输出缓冲器,OE=0,关闭输出缓冲器,I/O引脚做输入用;OE=1,打开输出缓冲器,I/O引脚做输出用,数据送入输出寄存器。寄存器初始化主要是对EZ-USB FX内部特殊寄存器和数据缓冲区的初始化。由于EZ-USB FX基于增强型8051架构,内嵌USB内核,因此有些普通8051没有的内部特殊寄存器需要进行设置。
USB的初始化包括USB设备的初始化和USB传输通道的初始化。主机是通过获取设备的描述符来获得设备的属性、传输方式等信息,而这些信息都通过设备描述符文件dscr.a51实现。以中断传输为例,设备描述符的说明包括:设备描述符定义、设备配置描述符定义、接口描述符定义、输入终端描述符定义和输出终端描述符定义等。
4.2 通讯软件
接口卡通讯软件包括与计算机通讯和无线通讯软件两部分。图3是EZ-USB FX单片机程序流程图。
5 结束语
目前,基于EZ-USB FX设计的无线式数据通信接口卡已取得很好的实际应用效果。通过简单移植,可以很方便地将该方案应用于其它无线通讯场合和USB外围设备的设计中。
- FPGA的DSP性能揭秘(06-16)
- 基于单片机通用引脚的软件UART设计(10-16)
- 分时操作系统思想在单片机中的具体应用 (10-30)
- 基于AT89C51+DSP的双CPU伺服运动控制器的研究(05-26)
- 关于RTX51 TINY的分析与探讨(05-30)
- 基于MC9S12DGl28单片机的智能寻迹车设计(04-03)