通过定时器初值可以看出单片机使用的是11.0592MHz晶振
把函数void dispiay(uchar ge,uchar shi)
改成void display(uchar shi,uchar ge)
即可编译通过
只是函数拼写错误和变量顺序错误
第一个问题:
如果你的晶振是12M的话
你的TH1 和TL1 的设置,表示你大约定时20ms,20ms*20=400ms
你需要的是1s定时,不是400ms定时
第二个问题是:
你的函数定义是 void dispiay(uchar ge,uchar shi)
你的调用却是 display(shi,ge); //显示函数
两个形参是相反的
第三个问题:★★★★★★★★★这是最主要的问题所在
你的函数申明和定义中:void dispiay(uchar,uchar); 将其中的 l 错写成 i 了
但是你的函数调用却是拼写正确的,所以函数调用失败