新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于AVR USB接口的温度测量系统下位机设计

基于AVR USB接口的温度测量系统下位机设计

作者:时间:2009-03-25来源:网络收藏
DDRD=0x14;PORTD=0x00;
通常可在程序其他部分初始化完成后再调用函数usbInit (),最后再调用sei ()函数允许中断。在main.c文件中的实现代码如下:
(2)事件处理函数
用户程序的主循环中需要定期调用事件处理函数usbPoll ()。事件处理函数usbPoll ()在没有事件需要处理时将直接返回,否则将调用内部函数来进行相应的事件处理,最后再将数据传递到用户函数中。通常的方法是:
一次USB通信的超时时间是50ms。所以,在编程时应注意其他事件不要占用太长的时间,以勉usbPoll ()函数不能及时执行。
(3)事件函数
在用户程序中,需要编写USB用户事件函数,以完成USB通信。USB将用户接口简化为以下3个函数:
上述三个函数需要用户进行编程处理,它们将完成USB通信的数据处理。
为了使代码最优化,本只使用usbFunctionSetup函数,而屏蔽了usbFunctionWrite和usbFnctionRead函数,方法是在usbconfig.h中设置相应的位为0或1即可(参见表2)。

函数usbFunctionSetup负责传递USB请求,其参数存放在一个8字节的数组中(uchar data [8]),其含义是:
由于该功能只需要将测得的值传送到PC端,因此,该函数中只需做数据传送即可,而无须作不同指令的辨识,时使用如下代码来实现上述功能:
2.4编译文件的配置
在WIN软件环境下,还需要配置MakeFile,以用于编译编程文件:

经过上述过程的配置和编程后,即可实现机的数据采样和USB端口的数据传输。
3 结束语
USB技术的和显示由于使用了一体的软USB技术,其硬件电路更加小巧稳定。经使用和测试证明:该系统具有性能稳定、价格低廉等特点。重要的是,本系统提供了一种低成本的USB方案,同时较详细的提供了机的设计流程和部分代码,从而为中低成本的USB设备开发提供了一个较好的思路。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭