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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 24786|回復: 5
收起左側

STC15F2K60S2單片機內部自帶AD轉換實驗

  [復制鏈接]
ID:329974 發表于 2018-7-5 10:18 | 顯示全部樓層 |閱讀模式
實驗  AD轉換

一、實驗目的

了解STC單片機ADC的結構;

掌握STC單片機ADC的使用。

二、實驗原理

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

表1  ADC轉換相關寄存器

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口對應的引腳設為模擬功能。某一位為“0”,對應的引腳設為普通I/O。

②ADC控制寄存器ADC_CONTR

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

              SPEED1、SPEED0選擇AD轉換速度。            

SPEED1

SPEED0

AD轉換時間

1

1

90個時鐘周期

1

0

180個時鐘周期

0

1

360個時鐘周期

0

0

540個時鐘周期


              ADC_FLAG:AD轉換結束標志,需由軟件清0。

              ADC_START:AD轉換啟動控制。

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

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

表2  ADRJ=0時ADC轉換結果寄存器格式

ADC_RES

RES9

RES8

RES7

RES6

RES5

RES4

RES3

RES2

ADC_RESL

-

-

-

-

-

-

RES1

RES0


表3  ADRJ=1時ADC轉換結果寄存器格式

ADC_RES







RES9

RES8

ADC_RESL

RES7

RES6

RES5

RES4

RES3

RES2

RES1

RES0


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

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

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

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

當ADRJ=1時,10位轉換結果與輸入模擬電壓的關系由式(3)計算:

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

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

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

三、實驗環境

Windows XP;

Keil μ Vision 4;

STC-ISP-6.28。

四、實驗內容

1.實驗連線

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

圖1  ADC模擬輸入濾波電路

2.程序設計

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

AD轉換可以用中斷的方式,也可以用查詢的方式。每次轉換結束,將ADC_RES寄存器和ADC_RESL寄存器內容存入整型變量result。當ADRJ=0時:

int  result;

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

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

圖9-2  STC15F2K系列頭文件

3.程序設計

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

五、思考題

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

2.如何實現多路電壓檢測并輪流顯示?



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

實驗 AD轉換.docx (104.09 KB, 下載次數: 228)



評分

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

查看全部評分

回復

使用道具 舉報

ID:371957 發表于 2018-8-18 17:16 | 顯示全部樓層
分析的很好
回復

使用道具 舉報

ID:396581 發表于 2018-9-26 13:52 | 顯示全部樓層
雞肋,食之無味,棄之可惜
回復

使用道具 舉報

ID:408797 發表于 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;        }               
回復

使用道具 舉報

ID:420186 發表于 2019-12-25 10:39 | 顯示全部樓層
出來的數據為什么不對
回復

使用道具 舉報

ID:960285 發表于 2021-8-13 09:31 | 顯示全部樓層
這個咋仿真
回復

使用道具 舉報

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

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久av一区| 欧美极品在线视频 | 免费久久精品视频 | 久久久久精 | 中文字幕第一页在线 | 自拍亚洲| 亚洲性视频 | 黄色毛片在线播放 | 天天夜夜操 | 欧美三级在线 | 亚洲性综合网 | 亚洲精品中文字幕 | 欧美日韩综合一区 | 亚洲精品在线免费观看视频 | 欧美一级二级视频 | 久精品久久 | 欧美色综合| 午夜影视免费片在线观看 | 国产一区二区不卡 | 国产一级片在线观看视频 | 国产一级在线观看 | 97伦理电影 | 国产免费一区二区三区免费视频 | 国产成人免费视频网站视频社区 | 久久久人成影片免费观看 | 国产精品国产精品国产专区不卡 | 伦理二区| 中文在线一区二区 | 日本中文字幕在线视频 | 日韩欧美久久精品 | 国产精品日韩欧美一区二区三区 | 欧美激情在线精品一区二区三区 | 亚洲综合五月天婷婷 | 精品一区二区三区四区视频 | 天天玩夜夜操 | 亚洲成人av在线 | 日韩在线免费视频 | 一区二区三区高清在线观看 | 免费在线毛片 | 国产视频精品区 | 羞羞视频网站在线观看 |