欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2069|回復: 9
打印 上一主題 下一主題
收起左側

STC單片機 ADC模擬量有個地方不理解,每次讀ADC的值時,要先打開轉換ADC_CONTR |=...

[復制鏈接]
跳轉到指定樓層
樓主
STC單片機  ADC模擬量有個地方不理解,每次讀ADC的值時,要先打開轉換ADC_CONTR |= 0x40;
轉換完成后又關閉轉換ADC_CONTR &= 0xBF;
讀完ADC的值后,又打開轉換ADC_CONTR |= 0x40;
每次要讀ADC數據,都要這樣操作一便。
什么是轉換?為什么每次讀數據都要打開和關閉一次轉換?
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:227818 發表于 2024-1-10 06:18 | 只看該作者
ADC_CONTR |= 0x40,是把ADC_CONTR的D6置1,D6是ADC_START位,應該是開始AD轉換的意思。
看手冊是這樣說的:ADC_START:ADC 轉換啟動控制位。寫入 1 后開始 ADC 轉換,轉換完成后硬件自動將此位清零。看手冊,讀完AD值后,應該不用關閉了。
回復

使用道具 舉報

板凳
ID:213173 發表于 2024-1-10 07:16 | 只看該作者
模擬量轉換成數字量不是立即完成,需要一點時間。啟動轉換后等待轉換完成標志ADC_FLAG為1后,讀取的數字量才有效,并且軟件清0 ADC_FLAG,為下一次轉換作準備。
回復

使用道具 舉報

地板
ID:427868 發表于 2024-1-10 08:37 | 只看該作者
根據手冊得知,每次轉換前是需要先寫入ADC_CONTR |= 0x40,但轉換結束不需要再寫入ADC_CONTR &= 0xBF了,因為單片機會自己清零,在實際應用中也是這樣的。





回復

使用道具 舉報

5#
ID:226055 發表于 2024-1-10 09:22 | 只看該作者
    1、要看下你的芯片版本,STC很多芯片如果不是最終版本會有硬件BUG,那么有問題不奇怪。
    2、你的應用是不是需要多個通道切換,如果是,這種打開ADC之后關閉ADC再到打開是屬于正常的邏輯。如果是單個固定通道,又不考慮功耗,那么打開一次就可以不用關閉的。
    3、樓上正解,ADC打開后,包括ADC電源打開,是需要稍作延時的,這樣檢測出的值才更準確。
回復

使用道具 舉報

6#
ID:1064915 發表于 2024-1-10 10:30 | 只看該作者
這是STC12的

回復

使用道具 舉報

7#
ID:1063563 發表于 2024-1-12 16:26 | 只看該作者
劉佑紅 發表于 2024-1-10 08:37
根據手冊得知,每次轉換前是需要先寫入ADC_CONTR |= 0x40,但轉換結束不需要再寫入ADC_CONTR &= 0xBF了,因 ...

謝謝!
回復

使用道具 舉報

8#
ID:1063563 發表于 2024-1-12 16:27 | 只看該作者
wulin 發表于 2024-1-10 07:16
模擬量轉換成數字量不是立即完成,需要一點時間。啟動轉換后等待轉換完成標志ADC_FLAG為1后,讀取的數字量 ...

謝謝!
回復

使用道具 舉報

9#
ID:1019324 發表于 2024-1-12 16:47 | 只看該作者
adc采集是獨立于51單片機運行的,AD轉換芯片與51單片機通過對應通信協議進行數據通信。0x40相當于二者溝通的門戶,當單片機需要使用ADC的數據時打開通道進行數據交換。習慣上在讀完后關閉通道,解放cpu資源。
回復

使用道具 舉報

10#
ID:106977 發表于 2024-1-13 17:15 | 只看該作者
提出這類問題或是表明你沒有認真閱讀STC的說明書。或是你沒有讀懂說明書,那就是就是基礎問題,還需要加倍努力提高單片機開發基礎能力!
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表