位置:51电子网 » 技术资料 » 接口电路

基于USB的通用无线传输接口设计

发布时间:2008/5/26 0:00:00 访问次数:606

        

    

    

    来源:单片机及嵌入式系统应用 作者:武汉理工大学 任晖

     摘 要:介绍一种基于philips公司的32位arm7t[)mi—s微处理器lpc2210的usb接口设计,并使用nordic公司生产的单片射频收发芯片nrf2401设计usb接口的无线通信模块。阐述该系统的工作原理、硬件构成及软件设计方案。实现了基于usb接口的无线串行通信。

    

     关键词:无线传输 lpc2210 usb nrf2401 cy7c63231

    

    引 言

    usb通用串行总线主要用于usb设备与主机之间的数据通信,特别为usb设备与usb主机之间大量的数据传输提供了高速、可靠的传输协议。射频通信以其优点也应用在越来越多的场合。本文所设计的usb无线串行接口电路由nrf2401单片射频收发器、lpc2210微控制器和usb接口芯片组成。本系统充分利用usb口数据传输功能,设备连接方便,系统可用于进行无线串行数据双向传输,在仪器仪表、计算机遥测遥控系统、家庭网络系统等中得到了应用。

    

    1 硬件设计

    整个硬件设计分为两个部分:使用带并行总线的usb接口器件pdiusbd12设计lpc2200的usb接口,其电路图如图1所示;使用cypress公司的usb外围控制芯片cy7c63231设计射频芯片nrf2401的usb接口,其电路图如图2所示。两个部分通过usb口相接,整个硬件设计系统框图如图3所示。

    

    

    

    

    图1中,usb接口芯片采用的是philips公司的并行usb接口芯片pdlusbd12,符合通用串行总线(usb)1.1版本规范。这里以lpc2200微控制器与pdiusbi)12构成usb设备,pdiusbd)12连接到lpc2200的硬件原理图如图1所示。

    pdiusbd12使用lpc2200外部存储控制的bank2部分,数据地址为0x82000000,命令地址为ox82000001。rst_usb、susp为lpc2200的输出引脚,pdiusbd)12中断信号为中断输入信号,且为外部中断o。c1、c2和x1为pdiusbd)12提供工作所需的时钟输入。发光二极管goodlink在正常通信时闪烁。pdiusbd12的ad0连接到lpc2200的a0,当lpc2200在a0引脚输出l时,表示输出到pdiusbd12数据总线do~d7上的数据为命令字;当a0引脚输出0时,表示输出到pdiusbd)12数据总线do~d7的数据为数据字。

    

    图2中,cy7c63231是8位risc微处理器,特别适用在usb嵌入式方面,工作电压为5 v。nrf2401是单片射频收发芯片,有四种工作模式:收发模式、配置模式、空闲模式和关机模式。所有配置工作,工作模式选择和收发数据都是通过cy7c63231的po引脚控制完成的。用电压调整芯片lp2980im5—3.3产生nrf2401的工作电压(3.3 v),同时sn74lvc4245产生控制口3.3 v和5 v的电平转换,使工作在不同电压的这两种芯片能正常的相连。

    

    2 软件设计

    2.1 pdiusbdl2驱动软件构架

    为了使驱动软件可移植性强、易维护,采用分层的方法编写pdiusbdl2的驱动程序,图4为usb驱动程序软件分层结构图。

    

    

    usb驱动程序软件包提供给用户6个api函数,这6个函数都在usb应用层中定义,功能描述如表1所列。

    

    

    下面以接收和发送数据任务为例,演示了一个任务从端点2发送1024个字节。部分源代码如下:

    #define rw_nums 1024 //任务收发数据字节数

    void taskrecl(void*pdata)

    {#if os_crltical_method==3

    //为cpu状态寄存器分配存储空间

    os_cpu_sr cpu_sr;

    #endif

    int8u buff[rw_nums]; //接收及发送缓冲区

    int8u ack=0x01; //应答主机数值

    int8u err; //函数返回值

    pdata=pdata; //避免编译器警告

    for(;;){

    ossempend(taskreel_sere,0,&-err);//等待ta

        

    

    

    来源:单片机及嵌入式系统应用 作者:武汉理工大学 任晖

     摘 要:介绍一种基于philips公司的32位arm7t[)mi—s微处理器lpc2210的usb接口设计,并使用nordic公司生产的单片射频收发芯片nrf2401设计usb接口的无线通信模块。阐述该系统的工作原理、硬件构成及软件设计方案。实现了基于usb接口的无线串行通信。

    

     关键词:无线传输 lpc2210 usb nrf2401 cy7c63231

    

    引 言

    usb通用串行总线主要用于usb设备与主机之间的数据通信,特别为usb设备与usb主机之间大量的数据传输提供了高速、可靠的传输协议。射频通信以其优点也应用在越来越多的场合。本文所设计的usb无线串行接口电路由nrf2401单片射频收发器、lpc2210微控制器和usb接口芯片组成。本系统充分利用usb口数据传输功能,设备连接方便,系统可用于进行无线串行数据双向传输,在仪器仪表、计算机遥测遥控系统、家庭网络系统等中得到了应用。

    

    1 硬件设计

    整个硬件设计分为两个部分:使用带并行总线的usb接口器件pdiusbd12设计lpc2200的usb接口,其电路图如图1所示;使用cypress公司的usb外围控制芯片cy7c63231设计射频芯片nrf2401的usb接口,其电路图如图2所示。两个部分通过usb口相接,整个硬件设计系统框图如图3所示。

    

    

    

    

    图1中,usb接口芯片采用的是philips公司的并行usb接口芯片pdlusbd12,符合通用串行总线(usb)1.1版本规范。这里以lpc2200微控制器与pdiusbi)12构成usb设备,pdiusbd)12连接到lpc2200的硬件原理图如图1所示。

    pdiusbd12使用lpc2200外部存储控制的bank2部分,数据地址为0x82000000,命令地址为ox82000001。rst_usb、susp为lpc2200的输出引脚,pdiusbd)12中断信号为中断输入信号,且为外部中断o。c1、c2和x1为pdiusbd)12提供工作所需的时钟输入。发光二极管goodlink在正常通信时闪烁。pdiusbd12的ad0连接到lpc2200的a0,当lpc2200在a0引脚输出l时,表示输出到pdiusbd12数据总线do~d7上的数据为命令字;当a0引脚输出0时,表示输出到pdiusbd)12数据总线do~d7的数据为数据字。

    

    图2中,cy7c63231是8位risc微处理器,特别适用在usb嵌入式方面,工作电压为5 v。nrf2401是单片射频收发芯片,有四种工作模式:收发模式、配置模式、空闲模式和关机模式。所有配置工作,工作模式选择和收发数据都是通过cy7c63231的po引脚控制完成的。用电压调整芯片lp2980im5—3.3产生nrf2401的工作电压(3.3 v),同时sn74lvc4245产生控制口3.3 v和5 v的电平转换,使工作在不同电压的这两种芯片能正常的相连。

    

    2 软件设计

    2.1 pdiusbdl2驱动软件构架

    为了使驱动软件可移植性强、易维护,采用分层的方法编写pdiusbdl2的驱动程序,图4为usb驱动程序软件分层结构图。

    

    

    usb驱动程序软件包提供给用户6个api函数,这6个函数都在usb应用层中定义,功能描述如表1所列。

    

    

    下面以接收和发送数据任务为例,演示了一个任务从端点2发送1024个字节。部分源代码如下:

    #define rw_nums 1024 //任务收发数据字节数

    void taskrecl(void*pdata)

    {#if os_crltical_method==3

    //为cpu状态寄存器分配存储空间

    os_cpu_sr cpu_sr;

    #endif

    int8u buff[rw_nums]; //接收及发送缓冲区

    int8u ack=0x01; //应答主机数值

    int8u err; //函数返回值

    pdata=pdata; //避免编译器警告

    for(;;){

    ossempend(taskreel_sere,0,&-err);//等待ta

相关IC型号

热门点击

 

推荐技术资料

耳机放大器
    为了在听音乐时不影响家人,我萌生了做一台耳机放大器的想... [详细]
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!