www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]所謂A/D轉(zhuǎn)換器就是模擬/數(shù)字轉(zhuǎn)換器(Analog to Digital Converter 簡稱ADC)是將輸入的模擬信號轉(zhuǎn)換成為數(shù)字信號。這里我們用ADC0804做這個(gè)試驗(yàn),下面的圖示它的引腳圖。/CS:芯片選擇信號。VREF:輔助參考電壓。/WR:

所謂A/D轉(zhuǎn)換器就是模擬/數(shù)字轉(zhuǎn)換器(Analog to Digital Converter 簡稱ADC)是將輸入的模擬信號轉(zhuǎn)換成為數(shù)字信號。這里我們用ADC0804做這個(gè)試驗(yàn),下面的圖示它的引腳圖。

/CS:芯片選擇信號。

VREF:輔助參考電壓。

/WR:用來啟動(dòng)轉(zhuǎn)換的控制,當(dāng)/WR自1變?yōu)?時(shí),轉(zhuǎn)換器被清除;當(dāng)/WR回到1時(shí),轉(zhuǎn)換正式啟動(dòng)。

/RD:外部讀取轉(zhuǎn)換結(jié)果的控制腳輸出信號。

/INTR:中斷請求信號輸出,低電平動(dòng)。

AGND,DGND:模擬信號以及數(shù)字信號接地。

CLK IN,CLK R:時(shí)鐘輸入或接振蕩元件(R,C),頻率約限制在100KHz~1460KHz。

VIN(+),VIN(-):差動(dòng)模擬電壓輸入。輸入單端正電壓時(shí),VIN(-)接地。

DB0~DB7:8位數(shù)字輸出。

ADC0804電壓輸入與數(shù)字輸出關(guān)系如表所示

 

十六進(jìn)制

 

二進(jìn)制碼

與滿刻度的比率

相對電應(yīng)值VREF=2.560

高四位字節(jié)

低四位字節(jié)

高四位字節(jié)電壓

低四位字節(jié)電壓

F

1111

15/16

15/256

4.800

0.300

E

1110

14/16

14/256

4.480

0.280

D

1101

13/16

13/256

4.160

0.260

C

1100

12/16

12/256

3.840

0.240

B

1011

11/16

11/256

3.520

0.220

A

1010

10/16

10/256

3.200

0.200

9

1001

9/16

9/256

2.880

0.180

8

1000

8/16

8/256

2.560

0.160

7

0111

7/16

7/256

2.240

0.140

6

0110

6/16

6/256

1.920

0.120

5

0101

5/16

5/256

1.600

0.100

4

0100

4/16

4/256

1.280

0.080

3

0011

3/16

3/256

0.960

0.060

2

0010

2/16

2/256

0.640

0.040

1

0001

1/16

1/256

0.320

0.020

0

0000

 

 

0

0

接下來看看實(shí)驗(yàn)電路的原理圖

片選CS接P2.4,RD接P3.7,WR接P3.6,為了簡單起見INTR沒有使用它

AD芯片的VIN(+)接一個(gè)可調(diào)電阻,改變阻值能夠帶來不同的電壓,以此作為輸入。

寫程序前還得看看時(shí)序圖

不同的電阻值顯示0-255不同大小的值,延時(shí)時(shí)間略長,有點(diǎn)閃爍

#include

#include

sbit ADCS = P2^4; //ADC0804片選信號,低電平有效

sbit ADWR = P3^6; //ADC0804寫信號,低電平有效

sbit ADRD = P3^7; //ADC0804讀信號,低電平有效

unsigned char code_table[]=

{

0x3f,0x06,0x5b,0x4f,

0x66,0x6d,0x7d,0x07,

0x7f,0x6f,0x77,0x7c,

0x39,0x5e,0x79,0x71,0

};

sbit Led8En = P2^6; //數(shù)碼管,鎖存器使能信號,高電平有效 ,數(shù)碼管輸出P0

sbit Led8CS = P2^7; //數(shù)碼管片選,鎖存器使能信號,電平有效,低電平選中

void delay(unsigned int times);

void dlight(unsigned char i, unsigned char number, unsigned int duration);

void ADC0804();

void main()

{

while(1)

{

ADC0804();

delay(100);

}

}

void delay(unsigned int times)

{

unsigned int i,j;

for (i=0; i

for (j=0; j<125; j++)

_nop_();

}

void ADC0804()

{

unsigned char temp;

ADCS = 0;

ADWR = 0;

delay(1);

ADWR = 1;

ADCS = 1;

delay(10);

ADCS = 0;

ADRD = 0;

_nop_();

temp = P1;

ADRD = 1;

ADCS = 1;

dlight(0xEE,code_table[temp % 10],1);

dlight(0xDD,code_table[temp / 100],1);

dlight(0xBB,code_table[(temp/10 )% 10],1);

}

void dlight(unsigned char cs, unsigned char display, unsigned int duration)

{

Led8CS = 1;

P0=cs; //片選

Led8CS = 0;

Led8En = 1;

P0=display; //. a b c d e f g, 高電平亮

Led8En = 0;

delay(duration);

}

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
關(guān)閉
關(guān)閉