#include<reg933.h> #include<stdio.h> uchar code table[]={ 0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f,}; //共阴数码管0~9 #define ad; void delay() ; //延时 void RDAC(); //读取调速信号 void PWM( ); void display(); //显示 void stimer1() ; //定时计数 void main() //主程序 { while(1) { RDAC();//读取AD信号 PWM();//PEM调速 stimer1(); display(); } } void RDAC( ) //AD信号读取程序 { ADINS=0X01 ; //AD0通道选择 ADMODA=0X10 ; // 固定通道单次转换 ADCON0=0x04; //AD使能 delay() ad=AD0DAT0 ;//读取AD结果 ADCON0=0x00; //关闭AD使能 } void PWM() //PWM调速程序 { int a=5 CMP1=ad //比较器1的设定值 TMOD20=0X11 //PWM定时器0非对称模式 TR0=1 //定时器0开启 HLTEN=1 //PWM开始 delay(10) //运行10个延时 HLTEN=0 //PWM停止 } void stimer1() //速度计算程序 { int shu=0; TMOD=0x10; TH1=(65536-50000)/256; TL1=(65536-50000)%256; EA=1; ET0=1; TR0=1; delay(1); while(1) {if(P1^7==1)shu++; if(TF0==1)break; } } TR=0; ET0=0; EA=0; } void display() //显示程序 { int bai,shi; shu=72*shu/5; //换算成0.1KM/H shi=shu/10%10;bai=shu/100; P0=table[bai]; P2^2==1 ; //开百位 delay(2); //延时 P2^2==0; P0=table[shi]; P2^3==1 ; //开十位 delay(2); P2^3==0; } 用keil编写为什么出现1.C(5): error C129: missing ';' before 'code' 请高手解答
有很明显的错误啊,开位选时应该是P2^3=0 而不是P2^3==0
字库编码里面最后一个数后面不用 带;
哦,是这个0x6f后面不要,
#define uchar unsigned char 怎么没有这个
uchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,}; 后面的0x6f后面不用逗号
欢迎光临 (http://www.51hei.com/bbs/) | Powered by Discuz! X3.1 |