你好!欢迎来到 !
语言
当前位置: 首页>> 技术中心>> 单片机入门>> MCS-51单片机系统程序的设计

MCS-51单片机系统程序的设计

作者:admin 来源:不详 发布时间:2018-05-08 浏览:2
  微控制器MCS-51单片机具有64K程序存储器和64K数据存储器的寻址能力。其数据存储器和I/O设备统一编址均在64K的范围内。其复位后的程序指针为0000H,因此在设计系统的硬件时必须将程序存储器的地址安排在0000H开始的存储器,使其与系统复位后的程序指针保持一致。同时在设计系统程序时,也必须将程序的起始地址安排在0000H开始的单元中。
  INTEL MCS-51单片机采用了5个中断,即外部中断0、定时器T0中断、外部中断1、定时器T1中断和串行口中断,这5个中断的中断服务程序入口地址分别为0003H、000BH、0013H、001BH和0023H。这样在地址0000H到0003H之间只有3个字节,因此在启动地址通常只能安排转移指令,使程序在启动后转移到主程序。如需在程序中使用中断,就要在中断服务程序入口地址内存放相应的转移指令,在执行中断程序时,通过这5个地址的转移指令跳转到相应的中断服务程序中。
  MCS-51单片机的堆栈安排在内部RAM的00H~7FH单元。由于00H~1FH为寄存器组,20H~2FH为位操作单元,此外还需在30H以后的地址安排部分工作单元,因此堆栈通常只能安排在大于30H的内部RAM中。MCS-51单片机的堆栈操作采用了在数据压入堆栈的时候,堆栈指针加大,而数据弹出堆栈的时候,堆栈指针减小的方法,因此可将堆栈指针设置为在内部RAM中堆栈的最小地址减1。应估计子程序和中断程序使用的数量和数据压入、弹出堆栈的数量,以确定堆栈的大小。如堆栈估计不足将会使堆栈指针超出内部RAM(7FH)的范围,这样将可能使压入的数据无法恢复,也可能使压入堆栈的程序指针丢失,而后者将导致程序无法执行,形成死机。

编辑:admin 最后修改时间:2018-05-08

联系方式

0755-82591179

传真:0755-82591176

邮箱:vicky@yingtexin.net

地址:深圳市龙华区民治街道民治大道973万众润丰创业园A栋2楼A08

Copyright ? 2014-2023 All Rights Reserved.粤ICP备14043402号-4

Baidu
map