厦门阿米控技术有限公司 联系人:徐亚婷 手机:18020776785 QQ:2851195472 座机:0592-5087595详细地址:厦门市思明区湖滨南路388号32D之六(国贸大厦32楼)
单片机程序死机,跑飞了可以从以下几个方面查找原因:
1. 意外中断。是否打开了某个中断,但是没有响应和清除中端标志,导致程序一直进入中断,造成死机假象
2. 中断变量处理不妥。若定义某些会在中断中修改的全局变量,这时要注意两个问题:首先为了防止编译器优化中断变量,要在这些变量定义时前加volatile,其次在主循环中读取中断变量前应该首先关闭全局中断,防止读到一半被中断给修改了,读完之后再打开全局中断;否则出现造成数据乱套。
3. 地址溢出,常见错误为指针操作错误。我要着重说的是数组下标使用循环函数中循环变量,如果循环变量没控制好则会出现数组下标越界,意外修改系统的寄存器造成死机,这种情况下如果死机说明运气好,否则后面不知道发生什么头疼的事。
SM 1221 6ES7221/6ES7 221-1BF32-0XB0/OXBO
SM 4216ES7421/6ES7 421-7DH00-0AB0
DPTM-E30S46-A1ET200S30mm6ES7193-4CF40-0AA0
6SN1118-1NH01/0NK01/0NJ01/0NK01/0NH0/0AA0
CP 443-1 6GK7443/6GK7 443-1EX30-0XE0
CP 443-1 6GK7443/6GK7 443-1EX20-0XE0
CP 243-16GK7243/6GK7 243-1EX01/1GX00-0XE0
CP 243-16GK7243/6GK7 243-1EX01-0XE0/OXEO
CP2436GK7243/6GK7 243-1GX00-0XE0/OXEO
西 门子PS 5A6ES7 307 -1EA01/1EA00/1KA01/1KA02/0AA0
西门ET200 PRO的 8 DO 24V DC0.5A 6ES7142-4BF00-0AA0
3RW4024/4026/4027/4028/4036/4037/4038/4046/4047-1BB15
6116SN1118-0NH01-0AA0
6ES7288/6ES7 288-3AM03-0AA0 I/O SM AM06
6ES7288/6ES7 288-3AQ04-0AA0 SM AQ04
6ES7288/6ES7 288-5AQ01-0AA0 SB AQ01
6ES7288/6ES7 288-5CM01-0AA0 CM 01 RS-485
免责声明:
AMIKON我们销售新产品和停产产品,独立渠道购买此类特色产品。阿米控不是本网站特色产品的授权分*销*商、经销商或代表。本网站上使用的所有产品名称/产品图片、商标、品牌和徽标均为其各自所有者的财产。带有这些名称,图片、商标、品牌和徽标的产品描述、描写或销售仅用于识别目的,并不表示与任何权利持有人有任何关联或授权。