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

发布者:RainbowJoy最新更新时间:2015-03-20 来源: diangon关键字:MCS-51  单片机  系统程序 手机看文章 扫描二维码
随时随地手机看文章
  微控制器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)的范围,这样将可能使压入的数据无法恢复,也可能使压入堆栈的程序指针丢失,而后者将导致程序无法执行,形成死机。
关键字:MCS-51  单片机  系统程序 引用地址:MCS-51单片机系统程序的设计

上一篇:基于C8051F005的流量水头效率监测仪的设计
下一篇:MCS-51单片机的程序设计方法

推荐阅读最新更新时间:2024-03-16 13:55

基于STC单片机的LED护栏管控制系统设计
LED护栏管又名丽得管,是一种先进的LED装饰照明灯饰产品。以红、绿、蓝3种颜色的LED作为光源,使用了微电子和数码技术,能进行色彩追逐,色彩过渡渐变,灰度变化和七色变化,能产生十分丰富的色彩变幻效果。该产品外形采用一次成型,灯管和底座浑为一体,防水性更好,重量更轻。广泛适用于酒吧、舞厅、大厦、广场、桥梁、栏杆等各种大型建筑装饰,全彩管更可以在一个大范围的区域实现灯光群控和显示动态节目,适合大型主题夜景。 文中提出了一种主从式单片机的LED轮廓显示屏解决方案,该设计方案利用STC单片机自身的FLASH ROM和RAM,外部无需任何存储电路,电路结构简单。可实现交流同步显示,驱动当前LED亮化市场中的多款LED护栏管与点光源器件
[单片机]
基于STC<font color='red'>单片机</font>的LED护栏管控制<font color='red'>系统</font>设计
51 单片机编程:双路计数器
利用 51 单片机构成计数器,计数的上限,做的大一些,也不难,几千几万都可以。 下面的电路,小了一点,是个两路两位的计数器。 用来记录乒乓球比赛,还算可以,用于篮球比赛,分数超过 99,这个电路就不够用了。 电路图中,用的是共阳数码管;还设置了六个按键,用途,都已经标出。 用 C 语言编写驱动程序,是比较简单的,全部代码如下: #include reg51.h unsigned char n1, n2; //----------------------------------------------- void delay(unsigned int i) //1ms延时程序 { unsigned
[单片机]
51 <font color='red'>单片机</font>编程:双路计数器
单片机初学者做项目为什么这么难?单片机初学者心得有哪些?
现在回想起自己刚开始学习单片机的经历,让我印象最深,也感觉最难学的就是电路了。 当时看了模拟电路的视频,看到三极管放大电路就开始云里雾里了。 后面以为是自己基础太差,又买了一本比笔记本还厚的电子元器件手册的书。 然后死磕了一段时间,懂了一些概念,又回去听视频教程,发现一点帮助都没有,还是听得一头雾水。 那段时间我就非常焦虑,感觉学单片机开发太难了。 但是又没有办法,毕业了需要找工作。 后面我干脆就不看模电了,直接学单片机,就跟着视频教程一边看一边敲代码。 然后教程也有对电路这块的讲解,主要是开发板上的原理图。 我发现原来自己能听懂,比如控制一个灯或者继电器啥的,其实就控制引脚输出高低电平就行了。 三级管也是只需要理解开关
[单片机]
51单片机实现呼吸灯
一、概述 使用51单片机控制LED,实现其由暗变亮,再由亮变暗的渐变过程。 二、程序 #include STC15F2K60S2.H #include MacroAndConst.h sbit LED = P1^5; #define LED_ON() LED = 0; //LED亮 #define LED_OFF() LED = 1; //LED灭 #define LED_PWM_LIMIT_MAX 99 #define LED_PWM_LIMIT_MIN 0 static u8 s_u8TimeCounter = 0; //中断计数 static u8 s_u8LedDirection = 0;
[单片机]
8-基于51单片机的羽毛球计分器
具体实现功能 系统由STC89C52单片机+超声波测距传感器(HC-SR04)+DS18B20温度传感器+LCD1602液晶显示屏+按键+蜂鸣器+电源构成 具体功能:1、LCD1602液晶显示测量的距离和温度; 2、测量范围0.02m~4m,精度为0.01m; 3、可以设置距离报警上下限值;按键功能:加键,减键,设置键 4、超过设定的报警上下限值则开始声光报警。 设计分析 根据功能要求及设计成本,控制系统选用AT89C51芯片。采用按钮开关实现功能控制,按照设计的功能模块共选用8个按钮开关,分别实现启动、A队加分、A队减分、B队加分、B队减分、暂停、停止、清零功能。时钟电路由晶体振荡器、晶振控制芯片和电容组成,
[单片机]
8-基于51<font color='red'>单片机</font>的羽毛球计分器
Microchip ATtiny1617系列AVR MCU在贸泽开售
电子网消息,专注于新产品引入 (NPI) 并提供极丰富产品类型的业界顶级半导体和电子元件分销商贸泽电子(Mouser Electronics)即日起备货 Microchip Technology的ATtiny1617单片机系列。作为Microchip 低功耗8位AVR® 单片机家族中的一员,ATtiny1617扩大了闪存容量,并与ATtiny817系列器件的引脚和代码互相兼容。此款紧凑型8位器件的工作频率最高达20 MHz,提供定制化配置和简化的流程,适用于电容式触摸系统及核心独立外设(CIP),可帮助提高系统吞吐量,同时降低总体功耗。 贸泽电子供应的Microchip ATtiny1617 8位AVR 单片机配有16 KB系
[半导体设计/制造]
AVR单片机的串口转FSK的通信模块设计
随着信息技术与网络技术的飞速发展,信息交互应用业务给人类生活带来更多的便利,信息终端表现出巨大的市场潜力。但是由于终端用户环境不同,用户信息交互方式可能不同,目前常用的有IP方式、FSK方式以及无线通信方式等。为了能够提高终端市场竞争力,减少系统开发成本投入,通信模块与终端程序独立设计是较为理想的解决方案。本文采用ATmega48芯片及CMX865芯片实现FSK通信模块,基于此模块,用户与业务平台之间进行FSK信息交互,相对于终端来说就是简单的串口通信。 1 ATmega48介绍 ATmega48是基于AVR增强型RISC(精简指令集)结构的高性能、低功耗的8位CMOS微控制器。微控制器具有可控制的上电复位和可编程的掉电检测
[单片机]
AVR<font color='red'>单片机</font>的串口转FSK的通信模块设计
硬件小百科:单片机串行口介绍
串行口是单片机与外界进行信息交换的工具。 ■ 8051单片机的通信方式有两种: 并行通信:数据的各位同时发送或接收。 串行通信:数据一位一位次序发送或接收。 参看下图: 串行通信的方式包括异步通信和同步通信。 异步通信 它用一个起始位表示字符的开始,用停止位表示字符的结束。其每帧的格式如下: 在一帧格式中,先是一个起始位0,然后是8个数据位,规定低位在前,高位在后,接下来是奇偶校验位(能省略),最后是停止位1。用这种格式表示字符,则字符能一个接一个地传送。 在异步通信中,CPU与外设之间必须有两项规定,即字符格式和波特率。字符格式的规定是双方能够在对同一种0和1的串理解成同一种意义。原则上字符格式能由通信的双方自由
[单片机]
硬件小百科:<font color='red'>单片机</font>串行口介绍
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved