|
|
| | -文章搜索 - 最新文章 - | |
AT89C51\52的编程原理 |
| 发布时间:2006年10月15日 点击次数:3261 |
| 来源: 作者: |
AT89C51\52的编程原理 AT89C51和AT89C52的编程原理完全相同,内部都有一个可重复编程的Flash ROM,AT89C51的ROM容量为4KB,而AT89C52的容量为8KB. 我们以AT89C52为例来说明其编程原理: A:由其ROM的容量可知其地址线需要13条,硬件连接如图1所示,整个P1口和P2口的低5位为编程地址输入线, P0口为数据输入端,P2.6、P2.7、P3.6、P3.7为编程模式.其电平组合见表1. B:以下是编程过程: 1. 将RST接高电平,PSEN接低电平. 2. 擦除芯片,每次重新编程前都要首先把原来ROM里面的程序擦除掉,将编程模式组合为擦除模式,送ALE端一个10ms宽度的低电平脉冲即可. 3. 在地址线上输入所需编程的存储单元的地址. 4. 将正确的控制信号组合为有效(写模式). 5. 在数据线上输入相应的字节. 6. 将EA升至12V. 7. 给ALE一个50us的低电平脉冲. 8. 效验数据,将控制信号组合为读模式,数据即出现在P0口. 9. 改变地址和数据,重复步骤3~8步,直至程序写完. AT89C1051\2051\4051的编程原理 AT89C1051\2051\4051只有20个脚,相对AT89C51\52来说少了P0口和P2口.以AT89C2051为例,它内部有一个地址计数器,它的编程地址是通过XTAL1串行输入的,对XTAL1管脚施加一个脉冲,内部地址计数器递增,而数据则通过P1口输入.编程时硬件参照图2连接,控制信号见表2: 其编程步骤如下: 1. 擦除程序,电平组合为擦除模式,往P3.2口送一10ms低电平脉冲,内部ROM全部被置1,擦除完成. 2. 将XTAL1和RST置低电平. 3. 将RST和P3.2置高电平. 4. 将P3.4、P3.5、P3.6、P3.7的电平组合为写模式. 5. 将编程数据送入P1口. 6. 将RST端电压升至12V编程电压. 7. 送P3.2一个50us的低电平脉冲,即将一个字节写入内部ROM. 8. 效验数据,将RST电压降为5V,组合电平变为读模式,数据即出现在P1口. 9. 对下一存储单元编程,在XTAL1施加一个脉冲,内部计数器加1,新数据送入P1口. 10. 重复步骤1~8,直至程序写完. 11. 下电步骤:将XTAL1置低电平,RST置低电平. 对十六进制文件的理解 当对源程序进行编译链接完成后,将得到相应的十六进制文件(后缀是.HEX), 对单片机进行编程就是将*.HEX文件写入内部ROM, 当用记事本程序打开HEX文件时,可以发现其每一行都是以“:”开头,后面是一串十六进制数字; 从“:”开始,第一个字节表示要写入ROM的字节数,第二、三字节表示这一串数据在ROM中的首地址,第四个字节总是00,一般不作处理,第五个字节到倒数第二个字节就是要写入ROM的数据,最后一个字节作效验用,使得整行数据之和低8位为0。 |
|
|
|
|
[单片机] 相关文章: 软件包实现DTMF信号的产生简介:
#pragma SMALL /* 预处理命令 */ //#pragma SRC #i nclude<stdio.h> #i nclude<re...... 山东省大学生电子设计竞赛圆满结束
AVR单片机的RTOS-AVRX应用
基于单片机的嵌入式SNMP代理器设计与实现
基于M—BUS的趣低功耗数据采集系统
单片机复位标志位的设置与应用研究
基于GPS的高精度无误差倒计时牌设计
温度测量处理变送器设计
基于80C196的频率测量及在电压采样中的应用
单片机在微型打印机中的应用 |
|
|
|