微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于USB接口的ISP下载系统设计

基于USB接口的ISP下载系统设计

时间:01-07 来源:互联网 点击:

简化了编程和调试。前后台任务处理关系如图5所示。

5 前后台任务处理关系图

整个系统程序设计采用模块化设计思想。为了使软件可移植性强、易维护,采用分层

的方法来编写PDIUSB12的驱动程序和ISP下载程序。

2.2.2 PCISP下载软件设计

PC机ISP下载软件是面向用户的一个接口,它向用户提供读目标芯片厂商号,读目标芯片型号,写目标芯片Flash,读目标芯片Flash和擦除目标芯片Flash等ISP编程操作。因为所有ISP操作都在单片机控制系统中实现,所以PC机ISP下载软件仅是通过USB接口向单片机发送ISP编程指令和代码数据,同时接收并显示单片机反馈回的信息。

实现USB通信的功能函数包括ReadData和WriteData两个函数。

(1)ReadData函数

int __stdcall ReadData(int pipenum,unsigned char *recbuffer,int len,int waittime=-1)

其中参数pipenum表示要操作的管道号,可以为0、2、4,分别对应端点0、1、2;参数recbuffer表示接收数据缓冲区;len为接收缓冲区长度,而且必须为要接收数据的真实长度,但最大长度为1024;waittime表示超时时间,单位为毫秒。

(2)WriteData函数

int __stdcall WriteData(int pipenum,unsigned char *sendbuffer,int len,int waittime=-1)

其中参数pipenum表示要操作的管道号,可以为1、3、5,分别对应端点0、1、2;参数recbuffer表示发送数据缓冲区;len为发送缓冲区长度,而且必须为要发送数据的真实长度,但最大长度为1024;waittime表示超时时间,单位为毫秒。

3 应用与测试

使用USB Analyser分析USB-bus1.1分析仪采集的数据,当本设计与PC连接时,主机检测到新设备,并提示安装驱动程序,安装完驱动程序后,PC机开始枚举USB设备。PC

机根据读取得USB设备描述符配置设备,此时,USB设备枚举成功,进入挂起状态,本设备已经被PC机识别,如图6所示,USB接口测试成功。

6 PC机识别出本设计

将USB-ISP单片机开发与教学实验板与PC机相连接,在PC机运行USB调试助手,通过USB调试助手与本设计进行数据通信,在PC机上运行ISP控制软件,测试检测连接功能、擦除Flash功能、下载功能和读取Flash功能能够较好的实现。

4 结论

本文作者创新点:设计了一种单片机(MCU)控制、基于USB接口通信的通用智能型ISP下载器。由于ISP下载系统使用USB接口,PC机主机不直接操纵编程器的硬件电路,而是向内置单片机发以命令的形式间接控制下载器工作,避免PC机软件受病毒侵害出现错误、联机电缆接触不良、外界电磁干扰等原因造成控制错误,整个设计显得灵活、方便。

参考文献

[1]胡晓军.USB接口开发技术[M].西安:西安电子科技大学出版社.2005

[2]任卫华、叶明.基于PDIUSB12芯片的USB接口实现方案[J].国外电子元器件.2005

[3]USB Interface Association Descriptor Device Class Code and Use Model, http://www.usb.org.

[4]王志强等. USB设备驱动程序开发技术研究[J].微计算机信息,2006,2:257-260www.

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top