访问电脑版页面

导航:老古开发网手机版51单片机AT89C51单片机

AT89C51\52的编程原理

导读:
关键字:

AT89C51\52的编程原理

AT89C51AT89C52的编程原理完全相同,内部都有一个可重复编程的Flash ROM,AT89C51ROM容量为4KB,AT89C52的容量为8KB.

我们以AT89C52为例来说明其编程原理:

A:由其ROM的容量可知其地址线需要13,硬件连接如图1所示,整个P1口和P2口的低5位为编程地址输入线, P0口为数据输入端,P2.6P2.7P3.6P3.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.5P3.6P3.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

来源:   作者:  2006/9/25 16:50:53
栏目: [ AT89C51单片机]

相关阅读

转:AT89C51的串口和电脑的串口进行通信

AT89C51\52的编程原理

[转载]基于AT89C51型单片机的号音自动播放器设计

AT89C51单片机电话遥控报警器电路的设计

基于AT89C51单片机的温度检测系统硬件电路设计

基于AT89C51单片机的贪吃蛇游戏代码设计

基于AT89C51单片机的双向通信FSK系统设计与实现

AT89c51与AT89S51单片机的区别

基于AT89C51单片机的LED汉字点阵滚动显示屏设计

AT89C51/8通道ADC0809电压采集器,功能在完善中。

基于AT89C51单片机的算术运算计算器系统设计

AT89C51单片机对智能语音拨号报警系统的设计

以AT89C51单片机为控制核心的低成本高精度倒计时系统设计

基于AT89C51单片机的RS232-GPIB控制器设计

AT89C51/55构成温湿度自动监测系统

基于AT89C51单片机的高性能直流稳压电源控制电路设计

以AT89C51单片机为核心的LED汉字滚动显示屏设计

基于AT89C51单片机在变频调速恒压供水系统中的应用

采用AT89C51单片机设计的变频调速控制系统

以AT89C51单片机为核心的发光二极管阵列控制系统设计