单片机源程序如下:
//从零到项目开发学PIC单片机与C语言技术视频教程配套实验源码
#include
#define uchar unsigned char
#define uint unsigned int
__CONFIG(0x3B31);
const uchar table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,
0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
const uchar table1[]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,
0x87,0xff,0xef};
void delay(uint x);
void init();
void disp(uchar num1,uchar num2,uchar num3,uchar num4,uchar num5);
void disp1(uchar num1,uchar num2,uchar num3,uchar num4);
uint get_ad();
void main()
{
uint lednum,u1,u2,r1,r2;
float n;
uchar a1,a2,a3,a4,a5;
init();
while(1)
{/*
lednum=get_ad();
a1=lednum/1000;
a2=lednum%1000/100;
a3=lednum%100/10;
a4=lednum%10;
disp(a1,a2,a3,a4);
*/
lednum=get_ad();
// n=(lednum*10)/(10240-lednum);
n=lednum;
//u1=5120-lednum;
//r1=u2/u1;
// r2=r2*1000;
// r2=lednum;
//r1=u1/i;
// r2=lednum*10/i*10
// r2=i;
// i=i*10000
// r2=lednum;
// r2=u2/i;
//i=(5000-lednum)/10000;
// r2=lednum/i;
//lednum=(int)r2;
// n=n*1000;
r2=n;
//r2=lednum;
/*
a1=r2/10000;
a2=r2%10000/1000;
a3=r2%1000/100;
a4=r2%100/10;
a5=r2%10;
disp1(a1,a2,a3,a4,A5);
*/
a1=r2/1000;
a2=r2%1000/100;
a3=r2%100/10;
a4=r2%10;
disp1(a1,a2,a3,a4);
}
}
void delay(uint x)
{
uint a,b;
for(a=x;a>0;a--)
for(b=110;b>0;b--);
}
void init()
{
TRISA=0x01;//0000 0001
TRISD=0;
PORTA=0;
PORTD=0;
TRISB=0;
PORTB=0;
ADCON0=0x41;
ADCON1=0x80;
delay(10);
}
uint get_ad()
{
uint adval;
float advalf;
GO=1;
while(GO);
adval=ADRESH;//00000000 00000011
adval=adval<<8|ADRESL;//00000011 11111111
//advalf=adval/1023.0*5.0;//==2.3843
//advalf=adval/1023.0*5.0;//==2.3843
//adval=advalf*1000;
// adval=adval*1024;
adval=adval;
return (adval);
}
void disp(uchar num1,uchar num2,uchar num3,uchar num4,uchar num5)
{
PORTD=table1[num1];//显示第一个数码管
PORTA=0x20;//0010 0000
delay(2);
PORTD=table[num2];//显示第二个数码管
PORTA=0x10;//0001 0000
delay(2);
PORTD=table[num3];//显示第三个数码管
PORTA=0x08;//0000 1000
delay(2);
PORTD=table[num4];//显示第四个数码管
PORTA=0x04;//0000 0100
delay(2);
PORTD=table[num5];//显示第四个数码管
PORTB=0x20;//0000 0100
delay(2);
}
void disp1(uchar num1,uchar num2,uchar num3,uchar num4)
……………………
『本文转载自网络,版权归原作者所有,如有侵权请联系删除』