哪位大侠可以告诉我下面的动态扫描程序错在哪里?在Proteus里仿真不出来。
#include<pic.h> #define uchar unsigned char #define uint unsigned int // uchar zxm[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//0~9的字形码,共阳 void delay(uint t); void display(uint height); /////// void delay(uint t) {uchar i; while(t--) {for(i=0;i<=125;i++);} } // void display(uint height) {PORTB=zxm[height/100]; PORTC=0x08; delay(1);
PORTB=zxm[(height-(height/100)*100)/10]; PORTC=0x04; delay(1);
PORTB=zxm[(height-(height/100)*100)-((height-(height/100)*100)/10)*10]; PORTC=0x02; delay(1); } // void main() { asm("clrwdt"); INTCON=0; TRISB=0; TRISC=0; PORTB=0x00; while(1) { display(137); } }
如果有更好的程序,就给我吧,谢谢。 |