usb的单片机程序包括三部分:
1.初始化单片机和外围电路(包括usb芯片)
2、主循环部分,用来检测
3.中断服务程序,其任务是对时间敏感的,必须马上执行
根据usb 协议,任何传输都是由主机host 开始的,这样,单片机作它的前台工作,等待中断,主机首先要发令牌包给usb 设备(这里是pdiusbd12),pdiusbd12 接收到令牌包后就给单片机发中断,单片机进入中断服务程序,首先读pdiusbd12 的中断寄存器,判断usb 令牌包的类型,然后执行相应的操作。
注意:因此,usb单片机程序主要就是中断服务程序的编写,在usb单片机程序中要完成对各种令牌包的响应,其中比较难处理的是setup包,主要是端口0的编程。
单片机与pdiusbd12 的通信主要是靠单片机给pdiusbd12发命令和数据来实现的。pdiusbd12的命令字分为三种:初始化命令字、数据流命令字和通用命令字。pdiusbd12给出了各种命令的代码和地址。单片机先给pdiusbd12 的命令地址发命令,根据不同命令的要求再发送或读出不同的数据。因此可以将每种命令做成函数,用函数实现各个命令,以后直接调用函数即可
usb 初始化过程为
set address enable;
set endpoint enable(此时led亮);
disconnect;
delay (1~2 s);
connect(即用43h 参数调用set mode,此时led灭);
read interrupt register。
美国国防创新委员会制定了人工智能使用原则
STK392-110引脚功能的电压资料参数
物联网产业将开启万亿美元市场
LG推出全球最大、分辨率最高的OLED屏幕
AR的技术原理/发展里程
USB初始化程序
技术创新成发展常态 人工智能推动彩电业升级
数据库数据恢复-Syabse数据库数据恢复案例
智能穿戴设备怎样选择适合的物联网卡
阀控式铅酸蓄电池的特性、应用及维护
就只有这么简单?全自动加药装置远程维护解决方案
protel是什么软件
魅族15mEngine触感引擎解读
新一代S7-1200的常用现场总线PROFINET
罗德与施瓦茨推出传输特性可调的宽带功率放大器
VCSEL市场份额格局的发展趋势
如何设计一个Logamp射频脉冲检测器
只有技术的飞速发展,智能家居才能产生质的变化
六场收官赛三个领奖台,远景维珍车队以车队总积分榜第四收官第六赛季
什么是过电压保护器,它的工作原理是怎样的