标题: [求助]帮忙看下我写这个程序有什么不对的地方 [打印本页]

作者: spawm    时间: 2012-10-12 20:32
标题: [求助]帮忙看下我写这个程序有什么不对的地方
现在的情况是下载到单片机上就第一个数码管显示一个零,然后就停在那里 单片机原理图在这里http://wenku.baidu.com/view/0fc085f5f90f76c661371a1e.html #include #define uint unsigned int #define uchar unsigned char sbit en=P3^3; //锁存器E口 sbit dula=P3^7;//锁存器dula口 uchar tt,shu,bai,shi,ge; uchar code table[]={ 0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71 }; void display(bai,shi,ge);//数码管显示程序 void ys(uint z); //延时程序 void init();//程序初始化 void main(){ init();//程序初始化 en=0; dula=1; while(1){ if(tt==20){ tt=0; shu++; if(shu==100) shu=0; bai=shu/100; shi=shu%100/10; ge=shu%10; } display(bai,shi,ge);//显示变量shu } } void init(){ //程序初始化 shu=0; TMOD=0x01; TH0=(65536-50000)/256; TL0=(65536-50000)%256; EA=1; ET0=1; TR0=1; } void ys(uint z){ //延时程序 uint y,x; for(x=100;x>0;x++) for(y=z;y>0;y++); } void timer() interrupt 1 //计数中断 { TH0=(65536-50000)/256; TL0=(65536-50000)%256; tt++; } void display(bai,shi,ge){ //数码管显示 P2=0xef; P1=table[bai]; //第一个数码管显示第一位变量bai ys(5); P2=0xdf; P1=table[shi]; //第二个数码管显示第二位变量shi ys(5); P2=0xbf; P1=table[ge]; //第三个数码管显示第三位变量ge ys(5); }
[此贴子已经被作者于2012-10-12 20:45:58编辑过]

作者: spawm    时间: 2012-10-12 20:34
为什么不会换行
作者: A呆    时间: 2012-10-13 08:22

换个行吧,这样看很费劲!


作者: syxi    时间: 2012-10-22 14:42
void ys(uint z){ //延时程序 uint y,x; for(x=100;x>0;x++) for(y=z;y>0;y++); 是x--吧。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1