当前位置:首页 > 单片机 > 单片机
[导读]在学习单片机和进行单片机产品开发过程中,我们通常使用仿真器作为调试程序的有力工具。但仿真器价格昂贵,对于初学者和一般个人开发人员很难承受。为此,我们选用了带ISP 功能的AT89S51/52 系列单片机,不需要仿真器也能很轻易地完成系统调试和开发。所谓ISP,即In SystemProgrammerable 在线系统可编程。也就是说,单片机可在系统应用板上进行擦除和编程,然后立即运行。AT89S51/52 系列单片机的内部程序存储器采用Flash 存储器,可以反复擦写1000 次以上。

在学习单片机和进行单片机产品开发过程中,我们通常使用仿真器作为调试程序的有力工具。但仿真器价格昂贵,对于初学者和一般个人开发人员很难承受。为此,我们选用了带ISP 功能的AT89S51/52 系列单片机,不需要仿真器也能很轻易地完成系统调试和开发。所谓ISP,即In SystemProgrammerable 在线系统可编程。也就是说,单片机可在系统应用板上进行擦除和编程,然后立即运行。AT89S51/52 系列单片机的内部程序存储器采用Flash 存储器,可以反复擦写1000 次以上。

一、电路构成

具有ISP 下载与串口通讯功能的下载线的电路如图1 所示。该下载线成本低廉,元件易得,既可完成在线系统擦除与编程,又可以作为单片机与PC机的串口通讯接口,进行PC 机串口产品的开发。

图1 具有ISP下载与串口通讯功能的下载线的电路

本电路中的核心元件是MAX232,起到PC 机的串口EIA 电平与单片机系统板的TTL 电平之间的电平转换作用,其内部有两套共四路独立的电平转换电路。而单片机编程脚为⑥~⑨脚,其中⑨脚为复位脚,⑥~⑧脚为通讯脚;单片机串口通讯脚为⑩、脚。这样需要转换电平的信号有五路,为此,我们增加了一个双刀双掷拨动开关作为“ISP 下载”和“串口收发”切换开关。另外,在使用“ISP 下载”功能时,⑨脚必须是高电平+ 5V,而在单片机运行时,⑨脚应为低电平,所以我们在制作单片机系统板时必须要有手动复位电路。在使用“ISP 下载”功能时,需要一直按下手动复位键,编程结束后,只要释放手动复位键,程序便立即运行,如图2 所示。

图2 复位电路

这样,有了具有ISP 下载与串口通讯功能的下载线,我们在制作电路时只要安装一个7 针的插座,就可以调试和反复擦写程序了,同时也可以实现单片机与PC 机串口通讯的产品开发。

二、串口下载线擦除和下载程序的使用方法

这里,我们以下载软件“电子在线ISP 编程器v2.0”为例说明串口下载线擦除和下载程序的使用方法。

连接好下载线和单片机目标板,目标板加上+5V 电源。启动电子在线ISP 编程器v2.0 软件,如图3 所示。

图3 电子在线ISP编程器v2.0界面

首先选择串行端口,根据下载线实际连接的端口进行设置(如本例选择COM1):

(1)点击“鉴别”按钮,检查单片机型号,并验证线路是否通畅;(2)点击“打开”按钮,载入电脑中预先编译好的HEX 文件;(3)点击“擦除”按钮,将单片机程序存储器中原有内容擦除;(4)点击“写入”按钮,将打开的文件下载到单片机程序存储器中。

也可以设置好自动选项后,点击“自动”按钮完成程序的擦除和写入。

三、几点说明

(1) 配用软件可在网络上免费下载,自行搜索相关资源。

(2) 在使用本下载的“ISP 下载”功能时,一定要始终按下手动复位键,保证复位脚⑨保持编程所需的高电平。

(3) 如果只想制作具有ISP 下载功能的下载线,只需对电路略加修改即可;同样如果想制作和开发单片机与PC 机通讯的产品,可以将本电路的串口通讯功能部分直接加到单片机系统板上。

(4)本文所述编程器只适用于Atmel 公司的AT89S51 和AT89S52 单片机。

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

平时使用串口打印出现乱码的,绝大部分原因是串口波特率没对。那么,我们怎么测量实际的波特率呢?在这之前,顺便一起回顾一下波特率的概念。什么是波特率、比特率?比特率(Bitrate)表示每秒钟传输的二进制位数,单位为比特每秒...

关键字: 串口通讯

USR-N580是有人物联网新开发的一款工业级8串口服务器,8串口独立工作、互不影响;双网口设计,支持交换机功能,可级联,有效扩展串口数量;采用Arm Cortex-M7方案,数据传输速度快且稳定可靠;内部集成TCP/I...

关键字: 物联网 RS485 串口通讯 串口 串口服务器 交换机

点击上方嵌入式开发圈 记得关注我们哦! 【134.1   应用层的“半双工”和“全双工”。】        应用层的“半双工”。主机与从机在程序应用层采用“一问一答”的查询模式,主机是主动方,从机是被动方,主机问一句从机...

关键字: 应用层 串口通讯 双机

单片机在控制本地的外围期间时,信息的交互是通过8位并行数据总线进行的,但是在较大规模的现代控制系统中,单片机还需要控制远端的设备,可以利用单片机的串行通信模块,在学习了RS-232串口通信的原理和时序后,学习了利用RS-...

关键字: 串口通讯 单片机 数据传输

一、串口通讯常识1.串口角色解析2.串口通讯参数串口通讯,分为同步通讯和异步通讯,我们通常使用的都是异步串口。通讯时,双方先约定好数据帧的格式,即波特率,数据位,停止位,奇偶校验位等。波特率:这是一个

关键字: 串口通讯 驱动程序

资源使用说明:2410+LINUX、UART(即RS-232串口)全双工通信、RS-485半双工通信局部程序框图及其设计说明:调试记录及调试结果:MODBUS总结:...

关键字: 2410 串口通讯 modbus协议 ascii模式

这两天在某嵌入式系统做了个串口通讯程序,遇到了每次只接收8个字节的问题。相信很多人都遇到了。上网一查资料,找到串口配置结构体struct termios中的c_cc[VTIME] 和 c_cc[VMI

关键字: 串口通讯 嵌入式系统

前言:串口通讯对于所有的嵌入式工程师十分常见,对于一个与外界交互的系统必须依赖一些手段,比如串口、USB、红外、GPRS之类的数据通讯传输方式。而串口作为一种廉价的短距离可靠的通讯方式得到了广泛应用。废话少说

关键字: 51 串口通讯 编程 软件架构

1、根据波特率和时钟频率设置T2L、T2H的初值2、通过辅助寄存器AUXR,设置T2启动运行,极其运行方式3、通过ES打开串口中断、通过EA打开总中断1、主函数中可以直接使用SBUF=0xXX;向串口发送数据2、接收完数...

关键字: 串口通讯 单片机

串口通讯中发送的关键字一般为16进制数,输出的数据也是16进制数,有负数存在时候要特殊处理。常用处理方法有两种:1、较为常用的是高位定义,高位为1代表负数,为0代表正数,当为负数显示时,采用补码显示。2、将整

关键字: 串口通讯 编程
关闭
关闭