更新时间2020-10-28 06:40:29
#include <reg51.h> #include¡¡"display.h"; sbit LEDBuf =P0^0;void Timer0Init(void);void display_Service();void Timer1Init(void); unsigned int dataNum; void main(){ Timer0Init(); Timer1Init(); EA=1;//ÖжÏ×Ü¿ª¹Ø while(1) { dataNum=TH1*256 + TL1;display_Service(); }} void display_Service(){ LEDBuf[0] = dataNum/1000; LEDBuf[1] = dataNum/100%10; LEDBuf[2] = dataNum/10%10; LEDBuf[3] = dataNum%10;}void Timer0Init(void)//1ºÁÃë@12.000MHZ{TMOD&=0xF0;//ÉèÖö¨Ê±Æ÷ģʽTMOD|=0x01;//ÉèÖö¨Ê±Æ÷ģʽTL0=0x18;//ÉèÖö¨Ê±³õÖµTH0=0xFC;//ÉèÖö¨Ê±³õÖµTF0=0;//Çå³ýTF0±êÖ¾ET0=1;//¶¨Ê±Æ÷0µÄÖжϿª¹Ø//EA=1;//ÖжÏ×Ü¿ª¹ØTR0=1;//¶¨Ê±Æ÷0¿ªÊ¼¼Æʱ} void Timer1Init(void)//@12.000MHZ{TMOD&=0x0F;//ÉèÖüÆÊýÆ÷ģʽTMOD|=0x50;//ÉèÖüÆÊýÆ÷ģʽTL1=0;//ÉèÖüÆÊý³õÖµTH1=0;//ÉèÖüÆÊý³õÖµTF1=0;//Çå³ýTF1±êÖ¾ET1=1;//¶¨Ê±Æ÷1µÄÖжϿª¹ØEA=1;//ÖжÏ×Ü¿ª¹ØTR1=1;//¶¨Ê±Æ÷1¿ªÊ¼¼ÆÊý} void timer0_ISR(void) interrupt 1{ TR0 = 0;Display();TL0 = 0X18; // ÉèÖö¨Ê±³õÖµTH0 = 0xFC; // ÉèÖö¨Ê±³õÖµTR0 = 1; }
估计你是复制了别人的程序(自己要理解才能用别人程序的)
#include¡¡"display.h";
中间多了一个非没符号,它应该是空格,且后面不能有分号的
还有,你工程目录下要有display.h这个文件的
再有你的
sbit LEDBuf =P0^0;
是位变量,它不能作为数组使用的
你的
LEDBuf[0] = dataNum/1000; LEDBuf[1] = dataNum/100%10; LEDBuf[2] = dataNum/10%10; LEDBuf[3] = dataNum%10;
不可用
上一篇:初二英语怎么学