关 闭

新闻中心

EEPW首页>工控自动化>设计应用> 基于虚拟存储器的USB下载线设计

基于虚拟存储器的USB下载线设计

作者: 时间:2010-11-02 来源:网络 收藏

在图2中,PDIDl2的数据端口连接到单片机的P0端口,实现单片机与PDIDl2的数据交换通道。将PDIDl2的读写控制分别接到P3.6和P3.7引脚,实现单片机写入和读出PDIUSBDl2的数据。地址端A0接到P2.O引脚上,用于实现对PDIUSBDl2的数据和地址选择。PDIUSB Dl2从CLKOUT输出时钟信号,连接到单片机AT89S52的XTAL1上,作为单片机的时钟信号。
接口驱动电路74HC244采用P2的部分引脚进行控制。其中,P2.1接74HC244的门控端,输出低电平时电路工作,在平时输出高电平时使74HC244工作在高阻状态,使与目标单片机脱离连接。P2.2接2Y4通过接口作为SCK,实现ISP接口的同步脉冲。P2.3通过74HC244后接到下载线接口作为MOSI,实现对目标芯片的串行数据读出。下载线接口的MISO通过74HC244驱动后接到P2.5,实现对目标芯片的串行数据的读出。P2.5通过74HC244控制目标芯片的RESET引脚,使其进入和退出串行程序下载模式。
另外,在系统中保留了P3.O和P3.1作为异步串行通信端口,作为系统调试端口。P1.5,P1.6,P1.7和RESET与VCC,GND连接到系统控制芯片,作为系统控制芯片自身的程序写入接口。

2 软件系统设计
2.1 系统架构

基于虚拟内存的USB下载线,就是从计算机角度看,下载线与目标单片机是计算机的一个通用的USB存储器,在对目标单片机程序进行写操作时,就像对磁盘(U盘)进行写操作一样。
在PC机端主要完成的任务是USB设备驱动程序,即将USB设备(下载线)识别为U盘,实现文件的写入和读出操作。在Windows 2000及以后的操作系统中,将USB磁盘驱动作为标准驱动程序,直接利用操作系统磁盘驱动程序。文件的写入和读出,由操作系统完成相关功能,在本系统中不需要编写程序。
下载线与计算机连接采用PDIUSBD12作为接口芯片,要与计算机交换数据,就需要对PDIUSBDl2芯片进行操作,下载线系统需要PDIUSBDl2驱动程序。要向计算机说明下载线是一个U盘,下载线系统需要在计算机硬件询问时要按USB Disk应答,下载线系统还需要构建一个文件系统,由于下载线系统是面向单片机的程序下载,数据量小,采用FAT12作为下载线的文件系统。
当下载线接收到计算机传送过来的一个程序文件时,需要将程序文件中的内容分离出来。设计本系统主要支持bin和HEX两种格式,其中bin文件就是机器指令的数据,直接写入单片机的程序存储器中即可完成程序下载;Hex文件的INTEL格式是Intel公司提出的按地址排列的数据信息,并不是直接的机器指令代码,因此还需要将HEX格式转换为bin格式。
在对目标单片机进行程序下载时,需要按照目标单片机的程序下载时序,逐次将数据写入目标单片机的程序存储器中,下载系统需要控制下载接口电路实现程序时序。整个硬件电路结构与软件关系如图3所示。

本文引用地址://m.amcfsurvey.com/article/202506.htm



评论


相关推荐

技术专区

关闭