51系列单片机程序跑飞的经验总结

发布者:sumig最新更新时间:2018-11-19 来源: eefocus关键字:51系列  单片机  程序跑飞 手机看文章 扫描二维码
随时随地手机看文章

 一、 程序运行跑飞现象:


单片机中的程序计数器(PC)的值出乎我们所需要的,发生了异常的偏移,脱离了原本设定好的程序要执行的位置,进入原定程序以外的区域,例如:程序的空白区、程序以外的空间或者是某种死循环中。


二、 跑飞的影响:


使指令的地址码和操作码发生改变,而PC把操作码当作指令来执行,操作码改变就代表着将执行错误的指令;或者PC的值指向一个不符合逻辑关系的指令或非程序的区域,会造成运行结果进入死循环,即常说的“死机”。


三、 程序跑飞的原因:


1. 意外中断。打开了某个中断,但是没有响应和清除中断标志,导致程序一直进入中断,造成死机假象。


2. 中断变量处理不妥。


3. 地址溢出。


4. 无条件的死循环。


5. 看门狗没有关闭。


6. 堆栈溢出。


关键字:51系列  单片机  程序跑飞 引用地址:51系列单片机程序跑飞的经验总结

上一篇:利用8031单片机,设计跑马灯和流水灯
下一篇:真干货!从51到stm32开发入门

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

8位LCD驱动微控制器(富士通)
富士通半导体(上海)有限公司今日宣布推出新系列内置段式LCD控制器的高性能8位微控制器(属于其F2MC-New8FX家族)。这些产品包括搭载了LCD控制功能的12款64引脚 “MB95470系列”、6款80引脚“MB95410系列”。富士通已于2010年11月上旬开始提供样片,并计划明年1月开始批量供货。 随着近几年段式液晶面板在家用电器领域应用越来越普及,如空调、洗衣机、冰箱、微波炉等家用电器、温控器等各种设备附带LCD显示成为趋势,带动了对低成本带LCD控制功能的微控制器的需求。 针对市场的这一要求,富士通开发了可在2.4V—5.5V的电压条件下工作的64引脚“MB95470系列”和80引脚“MB95410系列”。该产
[嵌入式]
HOLTEK新推出HT67F5640 20-bit Delta-Sigma A/D + LCD型Flash MCU
Holtek推出全新的20-bit Delta-Sigma A/D + LCD型Flash MCU产品,HT67F5640。ADC有效位数(ENOB)可达18位,全系列符合工业等级 -40°C ~ 85°C 工作温度与高抗噪声之性能要求,提供I2C / SPI / UART接口,并搭载数据存储器 (EEPROM),可用于生产过程或成品运作中储存调校或运作所需参数与数据,不因电源关闭而消失,可有效提高生产效能与产品弹性。 HT67F5640 Program Memory为4K Words、SRAM 256 Bytes、内建64 Bytes Data EEPROM,除Crystal外并内建精准Internal RC Oscilla
[单片机]
单片机程序C语言与汇编语言混合编程
430单片机中C语言与汇编语言混合编程 1. C语言函数和汇编语言函数相互调用 在这个示例中C语言函数main()调用汇编语言函数get_rand()以得到一个随机数;汇编语言函数get_rand()首先调用C语言的标准库函数rand()得到一个整型随机值,然后用调用C语言函数mult()的方法把这个随机值乘以main()函数传递给自己的实参,并把乘积值返回给main()函数。 1.1 C语言源文件 #include extern unsigned long get_rand(unsigned char seed); void main( void ) { unsigned char se
[单片机]
单片机+FDC2214手势识别装置设计
随着时代的发展与科学技术的广泛应用,现代化科技化生活理念也越来越越多的被人们所接受,高科技为人们带来了很多方便,利用科技手段解决生活生产中的实际问题也就成了当今科技开发者们的共同话题。 本次设计实现手势识别装置,通过人手接近传感端引起电容的变化来判决手势代表含义。该项目基于FDC2214芯片以及KEIL5开发平台,利用18μH电感、22PF电容构成LC谐振电路,设计开发一套手势识别装置,该手势识别装置可实现的模式有:训练和判决。判决模式分别对划拳游戏、猜拳游戏的准确判决;训练模式下根据检测员在有限次的训练后能有效的在判决模式下指出相应手势。该项目灵活的运用电容检测传感器和 LC 谐振电路对频率的控制,为智能化的识别系统提供了全
[单片机]
<font color='red'>单片机</font>+FDC2214手势识别装置设计
致象科技推国内第一款ARM Cortex M4F内核MCU
2016年4月18日,国内唯一一家拥有紧耦合异构多核双OS系统设计能力的芯片公司致象科技宣布,推出国内首个基于ARM Cortex M4F内核开发的MCU 产品系列 Marco Polo系列,打开了国产MCU的新篇章。高性能的第一代Marco Polo系列MCU可广泛应用在智能家居、无人机、可穿戴设备等物联网领域。 致象科技CEO方之熙博士认为,以核心芯片为中心,整合软、硬件和应用服务,互联网化的开放式运算平台已经成为IC行业下一个潮流和利润增长点。致象科技作为一家国产高端集成电路芯片设计厂商,正在朝着跨时代发展方向奋斗。 致象科技此次推出的第一代Marco Polo系列MCU-TG401,不但具备小封装尺寸、低功耗、
[半导体设计/制造]
致象科技推国内第一款ARM Cortex M4F内核<font color='red'>MCU</font>
51单片机测变周期脉冲信号的简便方法
脉冲信号是工程中一类较常见的信号,如光电位移、速度、转速等传感器输出的信号,而脉冲宽度和脉冲周期是其基本参数,往往需对它们进行测量。对等周期的脉冲信号的测量比较容易,只需测量任一脉冲宽度或周期就可以了,近年来已有许多MCS-51用户利用测量脉冲信号的基本参数而开发新产品,如山东大学的“ZBCY—I型智能标枪速度测试仪”就是利用测量一个脉冲宽度来获得标枪在某一飞行距离内的平均速度。对连续变周期的脉冲信号周期的测量则相对困难些,许多测量人员都首先对这类信号进行二分频后一路反相,然后用两个定时/计数器分别测出两路脉冲信号的正脉冲宽度得到周期,这种方法硬件开销较大,软件设计也较复杂。本文将介绍了一种用MCS-51单片机内部一个定时/计
[单片机]
<font color='red'>51</font><font color='red'>单片机</font>测变周期脉冲信号的简便方法
建立一个AVR单片机RTOS(7)—占先式内核(只带延时服务)
第七篇:占先式内核(只带延时服务) Preemptive Multitasking 当大家理解时间片轮番调度法的任务调度方式后,占先式的内核的原理,已经伸手可及了。 先想想,占先式内核是在什么地方实现任务调度的呢?对了,它在可以在任务中进行调度,这个在协作式的内核中已经做到了;同时,它也可以在中断结束后进行调度,这个问题,已经在时间片轮番调度法中已经做到了。 由于中断是可以嵌套的,只有当各层嵌套中要求调度,并且中断嵌套返回到最初进入的中断的那一层时,才能进行任务调度。 #include avr/io.h #include avr/Interrupt.h #include avr/signal.h unsigned
[单片机]
基于单片机和CPLD的高精度大型望远镜伺服控制器设计
设计基于高速单片机C8051F120和CPLD的高精度大型望远镜的伺服控制器,由单片机实现闭环控制算法、上位机通信和LCD显示控制,CPLD实现增量式编码器计数、电机驱动波形发生以及I/O接口。该控制器可独立进行电机控制,也可配合上位机进行控制,具有实时性和抗干扰能力强、成本低、调试方便等特点。 引言 微电子技术和计算机的发展推动着伺服控制技术的进步,控制系统的硬件系统越来越高速化、小型化、模块化,功能也日趋强大完善;而且,伺服控制技术是朝着更开放、更加模块化的控制结构的方向发展的,要求控制器算法实现简单、控制接口灵活,针对不同的伺服控制对象时硬件系统不变,软件系统也可以完成参数的自动调整。 在高精度大型望远镜伺服控制应用
[单片机]
基于<font color='red'>单片机</font>和CPLD的高精度大型望远镜伺服控制器设计
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

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

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

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