欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
基于PICf16877的ADC源碼
[打印本頁]
作者:
wangshuo
時間:
2018-5-3 08:08
標題:
基于PICf16877的ADC源碼
國內關于PIC的內容太少了, 希望大家都相互交流學習.
0.jpg
(18.48 KB, 下載次數: 78)
下載附件
2018-5-3 17:18 上傳
單片機源程序如下:
//從零到項目開發學PIC單片機與C語言技術視頻教程配套實驗源碼
#include<pic.h>
#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)
……………………
…………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼
所有資料51hei提供下載:
ADC.zip
(110.4 KB, 下載次數: 32)
2018-5-3 08:07 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
歡迎光臨 (http://www.raoushi.com/bbs/)
Powered by Discuz! X3.1