全球旧事资料 分类
定义计数变量
sbitRELAYP36
延时函数voiddelayui
tzui
ti、j;forizi0iforj110j0j数码管动态显示函数voiddisplayuchariLedOut3tablecou
t2100001000LedOut2tablecou
t21000100LedOut1tablecou
t210010LedOut0tablecou
t210fori0i4i
9
fP0LedOutiswitchicase0P20x7fbreakcase1P20xbfbreakcase2P20xdfbreakcase3P20xefbreakdelay5蜂鸣器函数voidbeepBeep0delay100Beep1继电器函数voidrelayRELAYRELAY串口发送函数voidse
ducharLedOut14LedOut13cou
t21000010000x30LedOut12cou
t210001000x30
10
fLedOut11cou
t2100100x30LedOut10cou
t2100x30SBUFLedOut13whileTITI0SBUFLedOut12whileTITI0SBUFLedOut11whileTITI0SBUFLedOut10whileTITI0SBUF
whileTITI0外部中断0函数voidcou
teri
terrupt0EX00cou
t1cou
t2se
dEX01串口初始化函数voidi
itUartvoid
11
中断计数
fTMOD0x20SCON0x50PCON0x7fTH10xfdTL10xfdTR11主函数voidmai
i
itUartIT01EA1EX01while1displayifcou
t110cou
t10beeprelay下降沿触发开外部中断
12
f22调试过程
由于单片机实验箱的存在,因此硬件部分无需做过多准备,主要是进行软件程序方面的调试。程序的调试我们是分一个一个模块进行的,具体的顺序是先进行数码管动态显示模块的调试,然后是蜂鸣器和继电器的调试,最后是串口通信的调试。这样调试的好处是,当某一个功能没有实现时,我们可以知道是哪一段程序出了问题,可以迅速地对其修改,直到每个模块都能正确而准确地完成各自的功能为止。等到所有的模块调试完毕,就能实现零件计数器的功能。这样与整体调试相比,等到出现问题,再一个个地去找是哪一段程序发生了错误,大大地提高了工作效率,节省了时间。
23问题与解决
问题一:蜂鸣器的声音太小,几乎无法听到。解决方案:改变蜂鸣器的延时时间,直到合适为止。问题二:数码管动态显示的调试时,显示的数字闪的比较厉害。经过多次调试,最终取得了比较好的显示效果。解决方案:是因为数码管显示延迟的时间太短,改变延时的时间,直到调试成功。问题三:进行的串口调试时,PC机但发现收到的数据是乱码,不是发送的数据。解决方案:把发送的数据由十六进制显示改为字符显示,在程序中也有所调整后,发r
好听全球资料 返回顶部