AT89S51单片机兼容标准8051的指令系统及引脚。下面以 AT89S51单片机为例,简要介绍51系列单片机的内部结构。
通常,单片机片内含 CPU、ROM、RAM、并行 I/O 口、定时器/计数器、中断控制系统、时钟电路、系统总线等。
1.中央处理器(CPU)
中央处理器是 AT89S51单片机的核心,完成运算和控制功能。其 CPU 能处理8位二进制数或代码。
2.程序存储器
程序存储器用于存放用户编写的程序、原始数据或表格,分为片内程序存储器和片外程序存储器。AT89S51采用片内、片外统一编址的64kB(0000H~FFFFH)程序存储器地址空间。片内有4kB Flash Memery.地址范围为0000H~OFFFH.既可在线编程(ISP),也可以用传统方法进行编程。采用汇编语言或 C 语言编写的源程序,必须通过编译软件(如 Keil C51)把编译生成二进制代码,即机器码。用户编写的程序、原始数据、表格等,都是以二进制的形式存放在程序存储器中的。计算机的工作,就是按照事先编好的程序从0000H 地址单元一条条地循序执行的。
当 AT89S51(31) 脚 EA 接高电平时,从片内 ROM 中的0000H 地址单元开始执行程序。当 AT89S51(31)脚 EA 接低电平时,片内 ROM 不起作用,CPU 只能从片外 ROM 中取指令。内部 ROM 0000H~002AH 共43个单元。被分为六段,作为程序运行的入口地址使用。其中:0000H~0002H 为复位后或初始化引导程序地址区;0003H~000AH 外部中断0中断入口地址区;000BH~0012H 定时器/计数器0中断入口地址区;001 3H~001 AH 外部中断1中断入口地址区;001 BH~0022H 定时器/计数器1中断入口地址区;0023H ~ 002AH 串行中断入口地址区。
通常, 我们编写程序时不得占用上述中断程序入口地址单元, 即0003H~002AH 单元。也就是说, 主程序一般不放在该地址空间。编程时, 可以采用起始伪指令 ORG,跳过0003H~002AH 单元。伪指令,是告诉汇编程序如何进行汇编的一类指令,不会被汇编成机器代码,只能为汇编软件(如 KeilC51)所识别。
图1 8路LED 花样显示电路图
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !