久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 24422|回復(fù): 5
打印 上一主題 下一主題
收起左側(cè)

STC15F2K60S2單片機內(nèi)部自帶AD轉(zhuǎn)換實驗

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:329974 發(fā)表于 2018-7-5 10:18 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
實驗  AD轉(zhuǎn)換

一、實驗?zāi)康?/strong>

了解STC單片機ADC的結(jié)構(gòu);

掌握STC單片機ADC的使用。

二、實驗原理

STC15F2K60S2單片機內(nèi)含8路10位高速AD轉(zhuǎn)換器,速度可達(dá)30萬次/秒。單片機P1口既可作為普通I/O口,也可作為AD轉(zhuǎn)換器模擬電壓輸入口。AD轉(zhuǎn)換器相關(guān)的寄存器如表1所示。

表1  ADC轉(zhuǎn)換相關(guān)寄存器

P1ASF

P17ASF

P16ASF

P15ASF

P14ASF

P13ASF

P12ASF

P11ASF

P10ASF

ADC_CONTR

ADC_POWER

SPEED1

SPEED0

ADC_FLAG

ADC_START

CHS2

CHS1

CHS0

ADC_RES









ADC_RESL









CLK_DIV

PCON2

MCKO_S1

MCKO_S0

ADRJ

Tx_Rx

Tx2_Rx2

CLKS2

CLKS1

CLKS0

IE

EA

ELVD

EADC

ES

ET1

EX1

ET0

EX0

IP

PPCA

PLVD

PADC

PS

PT1

PX1

PT0

PX0


①P1口控制寄存器P1ASF

P1ASF某一位為“1”,P1口對應(yīng)的引腳設(shè)為模擬功能。某一位為“0”,對應(yīng)的引腳設(shè)為普通I/O。

②ADC控制寄存器ADC_CONTR

              ADC_POWER=1,打開AD轉(zhuǎn)換器電源(關(guān)閉電源可降低功耗,ADC初次上電需適當(dāng)延時,再啟動AD轉(zhuǎn)換)。

              SPEED1、SPEED0選擇AD轉(zhuǎn)換速度。            

SPEED1

SPEED0

AD轉(zhuǎn)換時間

1

1

90個時鐘周期

1

0

180個時鐘周期

0

1

360個時鐘周期

0

0

540個時鐘周期


              ADC_FLAG:AD轉(zhuǎn)換結(jié)束標(biāo)志,需由軟件清0。

              ADC_START:AD轉(zhuǎn)換啟動控制。

              CHS2、CHS1、CHS0:選擇模擬輸入通道P1.0~P1.7。

轉(zhuǎn)換結(jié)果存放在ADC_RES和ADC_RESL寄存器中,當(dāng)CLK_DIV.5/ADRJ=0時,ADC_RES為結(jié)果的高8位,ADC_RESL為結(jié)果的低2位(如表2所示)。當(dāng)CLK_DIV.5/ADRJ=1時,ADC_RES為結(jié)果的高2位,ADC_RESL為結(jié)果的低8位(如表3所示)。

表2  ADRJ=0時ADC轉(zhuǎn)換結(jié)果寄存器格式

ADC_RES

RES9

RES8

RES7

RES6

RES5

RES4

RES3

RES2

ADC_RESL

-

-

-

-

-

-

RES1

RES0


表3  ADRJ=1時ADC轉(zhuǎn)換結(jié)果寄存器格式

ADC_RES







RES9

RES8

ADC_RESL

RES7

RES6

RES5

RES4

RES3

RES2

RES1

RES0


STC15F2K60S2的AD轉(zhuǎn)換器以Vcc為參考電壓,當(dāng)ADRJ=0時,10位轉(zhuǎn)換結(jié)果與輸入模擬電壓的關(guān)系由式(1)計算:

…………...……………………(1)

如果只取高8位,則由式(2)計算:

……………………………………...…………………(2)

當(dāng)ADRJ=1時,10位轉(zhuǎn)換結(jié)果與輸入模擬電壓的關(guān)系由式(3)計算:

…………………………………(3)

如果單片機Vcc電壓不穩(wěn),會引起AD轉(zhuǎn)換誤差,在實際應(yīng)用中,可用一路AD采樣外部的基準(zhǔn)電壓(如用TL431基準(zhǔn)電源),另一路AD采樣被測電壓,按式(4)計算:

………………………………..…………………..(4)

三、實驗環(huán)境

Windows XP;

Keil μ Vision 4;

STC-ISP-6.28。

四、實驗內(nèi)容

1.實驗連線

分別用兩根8芯杜邦線將單片機P2口與J61、單片機P0口與J62連接起來,P0口用于數(shù)碼管的位選擇,P2口輸出數(shù)碼管的顯示碼。用跳線帽短接JP8、JP9,模擬輸入經(jīng)過RC濾波(如圖1所示)。用杜邦線連接連接J35和P1.3,單片機通道3采樣模擬輸入電壓。

圖1  ADC模擬輸入濾波電路

2.程序設(shè)計

Keil匯編或C語言頭文件REG51.H不包含STC單片機ADC寄存器定義,而編程時需要用到ADC_CONTR、ADC_RES等特殊功能寄存器,STC-ISP軟件提供各種STC單片機的寄存器定義頭文件。在STC-ISP軟件界面,選擇頭文件選項卡,選擇好單片機系列,該系列的寄存定義出現(xiàn)在文本框中,可以復(fù)制頭文件內(nèi)容,也可以保存頭文件(如圖8-2所示)。本實驗可以將頭文件命名為STC15F2K.H,保存到\Keil\C51\INC文件夾中,以后編程時直接用該頭文件替換REG51.H。

AD轉(zhuǎn)換可以用中斷的方式,也可以用查詢的方式。每次轉(zhuǎn)換結(jié)束,將ADC_RES寄存器和ADC_RESL寄存器內(nèi)容存入整型變量result。當(dāng)ADRJ=0時:

int  result;

    result=(ADC_RES<<2)|(ADC_RESL&3);

    vin=result*Vcc/1024;              //Vcc單位為毫伏

圖9-2  STC15F2K系列頭文件

3.程序設(shè)計

程序經(jīng)編譯生成HEX文件,再利用STC-ISP軟件將代碼下載到單片機中,調(diào)節(jié)多圈電位器W3,觀察數(shù)碼管顯示值的變化。用數(shù)字萬用表核對J35的輸入電壓與數(shù)碼管顯示的電壓是否一致。

五、思考題

1. ADC通道2對2.45V基準(zhǔn)電壓(J41)采樣,通道3對模擬輸入電壓采樣,根據(jù)(4)式計算并顯示被測電壓。

2.如何實現(xiàn)多路電壓檢測并輪流顯示?



以上圖文的Word格式文檔下載(內(nèi)容和本網(wǎng)頁上的一模一樣,方便保存):

實驗 AD轉(zhuǎn)換.docx (104.09 KB, 下載次數(shù): 228)



評分

參與人數(shù) 1黑幣 +11 收起 理由
李春雨 + 11 很給力!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏4 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:371957 發(fā)表于 2018-8-18 17:16 | 只看該作者
分析的很好
回復(fù)

使用道具 舉報

板凳
ID:396581 發(fā)表于 2018-9-26 13:52 | 只看該作者
雞肋,食之無味,棄之可惜
回復(fù)

使用道具 舉報

地板
ID:408797 發(fā)表于 2018-10-12 22:07 來自手機 | 只看該作者
#include "ad_12c.h"unsigned char ch=0;unsigned int  AD_value[10]={0};unsigned int  AD_data[3]={0};void init_AD(){                P1ASF=0X07;                ADC_RES=0;          ADC_RESL=0;          ADC_CONTR=(ADC_POWER|ADC_SPEEDLL|ADC_START)&(~ADC_FLAG)|ch;          EA=1;          EADC=1;}void AD_areg(){        unsigned char i=0;        unsigned int sum=0;        for(i=0;i<10;i++)        {                sum=sum+AD_value[i];        }        AD_data[ch]=sum/10;        }void ADC_inter()interrupt 5{        static unsigned char i=0;                 ADC_CONTR&=~ADC_FLAG;        AD_value[i]=ADC_RES;        AD_value[i]=(AD_value[i]<<2)+(ADC_RESL&3);  ADC_CONTR=(ADC_POWER|ADC_SPEEDLL|ADC_START)|ch;          i++;        if(i>9)        {                i=0;                AD_areg();                ch++;                if(ch==3)ch=0;        }               
回復(fù)

使用道具 舉報

5#
ID:420186 發(fā)表于 2019-12-25 10:39 | 只看該作者
出來的數(shù)據(jù)為什么不對
回復(fù)

使用道具 舉報

6#
ID:960285 發(fā)表于 2021-8-13 09:31 | 只看該作者
這個咋仿真
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产视频三区 | 久久精品综合 | 一级毛片视频免费观看 | 国内成人免费视频 | 日韩在线观看视频一区 | 麻豆精品国产91久久久久久 | 久久成人一区 | 国产精品视频一二三区 | 成人在线视频网站 | 亚洲久在线 | 国产在线麻豆精品入口 | 国产福利资源在线 | 在线视频91| 亚洲图片一区二区三区 | 亚洲国产精品视频一区 | 青青草免费在线视频 | 亚洲天堂一区二区 | 中文字幕av在线一二三区 | 91欧美精品成人综合在线观看 | 荷兰欧美一级毛片 | 国产精品一区二区福利视频 | 欧美另类视频在线 | 日本综合在线观看 | 国产免费一区二区 | 国产精品综合一区二区 | 国产美女久久久 | 欧美一级电影免费观看 | 久久国产精品久久久久久 | 中文字幕国产 | 国产性生活一级片 | 午夜精品久久久久久久 | 国产在线一区二区三区 | 欧美午夜影院 | 国产福利91精品一区二区三区 | 国产精品久久久一区二区三区 | 99re国产 | 亚洲狠狠爱 | 一区二区中文字幕 | 中文字幕免费在线 | 日本国产高清 | 久久久久成人精品亚洲国产 |