采用P89C61x2和ISP1581的USB接口电路的设计

网友投稿 282 2022-11-03

采用P89C61x2和ISP1581的USB接口电路的设计

USB接口芯片ISP1581是一种价格低、功能强的USB接口器件,符合USB2.0规范,并为基于微控制器或微处理器的系统提供了高速USB通信能力;具有7个IN端点,7个OUT端点和1个固定的控制IN/OUT端点;可以通过软件控制与USB总线的连接;内部集成了带PLL的12MHz晶体振荡器;可通过内部上电复位、低电压复位电路和软件复位。 系统硬件设计系统的连接框图如图1所示。

图1系统的连接框图

系统的固件设计单片机的固件是USB设备运行的核心。主要包括以下几个部分:Kernel.c: 循环扫描USB事件;启动设备和系统的工作;Isr.c:   中断服务程序; Chap9.c:包含标准USB命令,用于在设备和主机之间建立一个基本连接;Vendor.c:包含厂商定义命令,处理厂商请求;Init.c:初始化单片机和ISP1581芯片。

USB设备采用控制传输完成枚举,从而判断出设备的状况。

数据传输过程采用中断方式,单片机通过读取中断寄存器的状态判断中断源,并进入相应的中断处理程序。ISP1581主要有SETUP中断、总线挂起中断以及端点输入/输出中断等,控制端点设置64B的缓冲区,每次只能传输64B,传输的数据量由单片机控制。若传输的字节数大于64B,将先传输64B,然后判断剩下的字节数,同时确定是否为空包或短包。如果没有数据传送到单片机,将发送一个空包表明数据发送完毕。

图2  固件程序流程图

参考文献1 周立功.USB2.0与OTG规范及开发指南.北京: 北京航空航天大学出版社,20042 萧世文.USB2.0硬件设计.北京:清华大学出版社,2002

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:数据库MySQL之事物
下一篇:Mysql数据库入门
相关文章

 发表评论

暂时没有评论,来抢沙发吧~