两位秒表 51单片机程序编程
发布网友
发布时间:2022-05-09 19:52
我来回答
共2个回答
热心网友
时间:2023-10-16 05:28
你好:
三个警告应该是void int_initial()与void timer0_initial()前边不用加void,然后就是Display()这个函数没有用。
其次我想说,TMOD=0x01就行了,因为程序里边只用到了定时器0,其他的状态不管,甚至可以说把其他定时器关掉。,也用不着TMOD&=0xfd。
然后中断函数要尽量精简、短小实干、不宜过长,因为中断本身就打扰了main函数的正常运行,而且中断内容太多反而容易在下次中断到来时还没处理完,就会栈溢出。养成好的习惯,中断就对最基本的时间计次就行,其余的都抛给main函数吧。
EA、ET0尽量就和定时器0一起初始化,你这习惯看着别扭。可读性略低。
中断里不要声明变量,你用个全局变量就OK。
希望我的回答能帮助到你。
热心网友
时间:2023-10-16 05:28
实验一下,就知道有否错误。
难道,楼主没有实验板吗?