完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
就因为一条赋值语句(标记那条),整个单片机就不运行了。。。下面是我的主程序
void main() { read_9byte_eeprom(0,0); delay(300); TT=D1; PP=D2*100000+D3*10000+D4*1000+D5*100+D6*10+D7; EA=1; //打开中断总开关 EX0=0; //允许外部中断0 EX1=1; //允许外部中断1 IT0=1; //外部中断0采用下降沿触发 IT1=1; //外部中断1采用下降沿触发 ET0=1; //允许定时器0中断 ET1=1; //允许定时器1中断 PT0=1; //定时器0设置为最高优先级 TMOD=0x11; //设置定时器0和1为工作方式1 timer0=0; Timer1=0; buzzer=1; count=1; lcd_init(); while(1) { Timer1=0; bmp180_convert(); deplay_and_save(); buzzer=1; if((Temperature>(TT*10))|(Pressure>PP)) buzzer=0; EX0=1; EX1=1; TR1=1; while(Timer1<100); TR1=0; EX1=0; EX0=0; } } 就是标记的那条语句。编译没有错误,能生成hex文件,也可以下载进单片机,但单片机就不运行,没有反应。如果把这条语句注释掉,单片机又能正常运行。。。。。我实在搞不懂。我用的是stc89C52RC |
|
相关推荐
22个回答
|
|
|
是不是数据类型不对,超出数据类型的数值范围了,试试把PP定义成float
|
|
|
|
|
|
你的PP这个参数是用来干嘛的?
|
|
|
|
|
|
PP是unsigned long 类型,D1到D9都是unsigned char,实际大小是小于10的数。 |
|
|
|
|
|
关键不是报错,不是没法编译,而是直接死机,单片机不工作了。。。。 |
|
|
|
|
|
PP这是压力参数,设置的报警阈值存储起来,在通过eeprom读取赋值给PP。PP只是作为一个比较大小的数使用 |
|
|
|
|
|
液晶能初始化吗,编译只是按编译规则检查而已,逻辑错误或数据类型等错误是查不出来的,现在需要判断单片机是不运行,还是PP这个数据无效了
|
|
|
|
|
|
液晶不能初始化,没有动静。开发板也有很多外围电路,一般下载进去后那些电路都会有反应的,然而这个就一点反应没有 |
|
|
|
|
|
没有反应,不能初始化 |
|
|
|
|
|
试试把这段read_9byte_eeprom(0,0);
delay(300); TT=D1; PP=D2*100000+D3*10000+D4*1000+D5*100+D6*10+D7; 移到液晶初始化之后 |
|
|
|
|
|
|
|
|
|
|
|
目前解决了。我猜应该是代码量超了的原因。我修改了不少非必要的全局变量,剪短了几十行代码,现在运行正常了
|
|
|
|
|
|
正常就好。这说明就是你用的数据类型不一样所致程序跑非了! |
|
|
|
|
|
这肯定是超出了单片机的RAM大小,导致程序跑飞了
|
|
|
|
|
|
程序跑飞了,我之前也碰到过类似的 不过那个是小数运算 A=455/10.0*5,使用的是STC15系列的芯片,程序卡这里。
|
|
|
|
|
|
学习学习0.0,小白在此记笔记了
|
|
|
|
|
|
学习一下,观望
|
|
|
|
|
|
这个PP是你宏定义的一个参数,程序里有它的相关计算 应该是这个参数不对了 所以无法正常运行
|
|
|
|
|
|
就是代码量超出了
|
|
|
|
|
|
就是代码量超出了
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
818 浏览 1 评论
994 浏览 0 评论
877 浏览 0 评论
STM32F405驱动DS1302时钟模块,输出时间错乱该怎么排查?
4892 浏览 2 评论
stm32f405rgt6驱动DS1302ZN出现时间错乱问题
3696 浏览 1 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-12 04:17 , Processed in 1.344275 second(s), Total 109, Slave 92 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
1720