当前位置:首页 > 智能硬件 > 智能硬件
[导读]为了解决单片机程序下载线的通用性问题,利用PDIUSBDl2、AT89S52和74HC244设计单片机与计算机USB口连接的下载线硬件电路,并为下载线系统设计和安装系统程序,使下载线和目标单片机成为计算机USB口的虚拟存储器,计算机通过对虚拟存储器的文件读写操作实现单片机的程序下载。

0 引言
    随着单片机技术的不断发展,支持ISP(In-SystemProgramming)或IAP(In-Application Programming)的单片机芯片日益增加,这类单片机芯片的应用程序写入采用了在线下载的方式。单片机与计算机的连接端口也从串口或并口逐步过渡到USB(Universal SerialBus)口。由于USB口具有高速、使用灵活方便等特点,单片机程序下载连接口也更加广泛地应用USB口。但是,USB口与单片机连接的下载线在设计和应用上还是与串、并口连接一样,不同的单片机采用不同的下载线,也对应有不同的下载软件和硬件驱动程序。这些软件和程序随着功能的完善和操作改进等原因具有不同的版本。这就造成下载线的使用者需要不断更新软件,也让使用者在更换单片机时不仅更换下载线,还要熟悉新的下载软件及使用方法。为此,如果能设计一种不需要下载软件的下载线或统一操作的下载软件,则能大大提高单片机程序下载线的通用性及操作效率。设计一种通用而不需下载软件的USB接口的单片机的下载线就显得尤其必要。

1.硬件设计
1.1 设计分析

    单片机USB接口下载线对于计算机而言,就是一个USB外部设备。为了实现在计算机中不需要安装额外的下载线驱动程序和操作软件,尽可能使用操作系统已有的USB设备的驱动程序、操作系统命令或软件作为下载线的驱动程序及操作软件。在对计算机操作系统进行分析和比较下,目前计算机操作系统中都带有U盘的驱动程序,资源管理器就是一个现有的磁盘操作软件。若将下载线虚拟为一个U盘,即从计算机角度将下载线和目标单片机视为一个虚拟磁盘,计算机对目标单片机的程序下载变为计算机对磁盘的写操作。
    当下载线系统接收到计算机写入该磁盘的文件时,通过下载线系统程序对数据进行处理后把数据写入目标单片机,实现单片机程序下载。下载线系统完成对计算机的磁盘响应和程序的控制和传输,这样既能保证在所有计算机上都可以通用,又实现了在计算机中不需要专用的下载程序,只需要如磁盘操作一样进行复制、粘贴或其他文件复制操作即可将程序写入单片机。
    下载线硬件系统如图1所示。


1.2 硬件设计
   
在分析各种USB接口芯片后,选用Philips公司的PDIUSBDl2作为系统的USB接口芯片,实现与微控制器进行通信的高速通用并行接口。该芯片采用了USB 1.1标准,现有的计算机采用USB 1.1及USB 2.O接口标准,采用PDIUSBDl2作为下载线与计算机的接口芯片能够满足设计需要。
    为了实现可靠的程序下载,对目标单片机的接口电路选用原Altra的并口驱动芯片74HC244作为下载线与目标单片机的接口驱动芯片。该芯片是三态的总线驱动芯片,在写入和读出目标单片机数据时有足够的驱动能力和较小的延时,能够实现正常的程序下载,在程序下载完成后,该芯片工作于高阻态,使下载线不影响目标单片机的正常工作。系统电路原理如图2所示。


    在图2中,PDIUSBDl2的数据端口连接到单片机的P0端口,实现单片机与PDIUSBDl2的数据交换通道。将PDIUSBDl2的读写控制分别接到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所示。


2.2 程序设计
  
下载线是连接计算机与目标单片机的中间设备,仅在计算机发出操作要求时才产生对应的操作响应,因而下载线系统程序设计过程中以处理计算机端数据为主要目标,根据计算机的数据对单片机进行相应的操作。为了程序编写简洁和易于调试,设计系统主程序采用查询方式对USB接口数据进行处理。对目标单片机的程序下载写入时,将其设为整个程序的一个功能模块,仅当需要下载写入时调用该功能模块,在程序编写中将其定义为一个系统函数。
    与PC的接口芯片采用了PDIUSBD12作为USB接口芯片,下载线为了处理来自USB接口的数据,必须完成对PDIUSBD12的处理。在设计中利用Philips提供的PDIUSBD12驱动程序进行修改加以实现。
    数据处理过程的系统主函数如下:


3 系统调试
   
首先对下载线系统进行程序写入和程序调试,然后再进行综合调试。按下面步骤进行。
3.1 调试下载线系统
   
首先将下载系统控制程序写入系统单片机,然后进行ISP下载调试。
    将BIN文件代码写进下载线控制单片机程序内部,采用程序直接将二进制代码写进目标单片机,观察目标单片机的运行情况来判断程序是否写入。
    将HEX文件内的数据写在下载线控制单片机的源程序内部,通过单片机程序对HEX格式进行解释并写入目标单片机,观察目标单片机的运行情况来判断程序是否解释并写入正确。
3.2 硬件识别调试
   
通过将下载线插入PC,在PC上发现USB设备,验证下载线硬件是否工作。通过对USB器件的应答,能够在计算机中出现一个USB盘符。
    通过对下载线内部的磁盘启动扇区、FAT表和根目录等信息的写入,在PC上出现一个具体的磁盘,并能在磁盘上创建文件。
3.3 综合调试
   
在下载线所对应的磁盘上写入HEX文件,由下载线系统单片机对HEX文件进行解释,并写入目标单片机,在目标单片机实验板上观察结果以判断下载线是否完成功能。

4 结语
   
通过下载系统的硬件和软件设计,在计算机中不需要安装驱动程序,利用计算机系统中自带的USB磁盘的驱动程序,只需要复制、粘贴或其他文件复制操作即可将单片机应用程序写入单片机,实现计算机通用的USB下载线的设计。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

美国纽约州阿蒙克2022年10月20日 /美通社/ -- IBM(NYSE: IBM)发布 2022 年第三季度业绩报告。 IBM 董事长兼首席执行官 Arvind Kri...

关键字: IBM 软件 BSP 云平台

成都2022年10月19日 /美通社/ -- 近期,平安养老险积极筹备个人养老金的产品设计和系统开发工作,发展多样化的养老金融产品,推动商业养老保险、个人养老金、专属商业养老保险等产品供给。 搭养老政策东风 ...

关键字: 温度 BSP 东风 大众

广东佛山2022年10月19日 /美通社/ -- 空间是人居生活的基础单元,承载着生存与活动的最基本功能。而对于理想空间的解构意义却在物理性容器之外,体现出人们对于空间和生活深层关系的思考,同时也塑造着人与空间的新型连接...

关键字: 温度 BSP 智能化 进程

上海2022年10月19日 /美通社/ -- 10月17日晚间,安集科技披露业绩预告。今年前三季度,公司预计实现营业收入7.54亿元至8.33亿元,同比增长60.24%至77.03%;归母净利润预计为1.73亿...

关键字: 电子 安集科技 BSP EPS

北京2022年10月19日 /美通社/ -- 10月18日,北京市经济和信息化局发布2022年度第一批北京市市级企业技术中心创建名单的通知,诺诚健华正式获得"北京市企业技术中心"认定。 北京市企业技...

关键字: BSP ARMA COM 代码

北京2022年10月18日 /美通社/ -- 10月14日,国际数据公司(IDC)发布《2022Q2中国软件定义存储及超融合市场研究报告》,报告显示:2022年上半年浪潮超融合销售额同比增长59.4%,近5倍于...

关键字: IDC BSP 数字化 数据中心

上海2022年10月18日 /美通社/ -- 2022年9月5日,是首都银行集团成立60周年的纪念日。趁着首都银行集团成立60周年与首都银行(中国)在华深耕经营12年的“大日子”,围绕作为外资金融机构对在华战略的构想和业...

关键字: 数字化 BSP 供应链 控制

东京2022年10月18日  /美通社/ -- NIPPON EXPRESS HOLDINGS株式会社(NIPPON EXPRESS HOLDINGS, INC.)旗下集团公司上海通运国际物流有限公司(Nipp...

关键字: 温控 精密仪器 半导体制造 BSP

广州2022年10月18日 /美通社/ -- 10月15日,第 132 届中国进出口商品交易会("广交会")于"云端"开幕。本届广交会上高新技术企业云集,展出的智能产品超过140,...

关键字: 中国智造 BSP 手机 CAN

要问机器人公司哪家强,波士顿动力绝对是其中的佼佼者。近来年该公司在机器人研发方面获得的一些成果令人印象深刻,比如其开发的机器人会后空翻,自主爬楼梯等。这不,波士顿动力又发布了其机器人组团跳男团舞的新视频,表演的机器人包括...

关键字: 机器人 BSP 工业机器人 现代汽车

智能硬件

22003 篇文章

关注

发布文章

编辑精选

技术子站

关闭