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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

單片機芯片內部ADC計算值不正確,為什么?

[復制鏈接]
跳轉到指定樓層
樓主
各位大佬,請教個問題,這邊使用STC15W408as主控芯片,測量通道內部第9的內部基準源電壓數值,為什么總是算不對呢?我放上源碼,請大神幫忙看下。使用的是ssop20的芯片,我看也沒有Vref這個管腳,默認不是電壓供電多少,計算的值就是多少嗎?為什么算出來的值怎么大

51hei圖片_20210805230916.png (243.54 KB, 下載次數: 43)

ADC初始化

ADC初始化

51hei圖片_202108052309161.png (158.84 KB, 下載次數: 59)

主函數調用

主函數調用

51hei圖片_202108052309162.png (78.69 KB, 下載次數: 42)

顯示結果

顯示結果
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:235200 發表于 2021-8-6 01:30 | 只看該作者
程序中讀出的是10位ADC轉換值, 并沒有算出來對應的電壓值來

評分

參與人數 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

板凳
ID:752974 發表于 2021-8-6 10:23 | 只看該作者
AD轉換后的數據只是一個二進制數,定標后就是實際的物理量了。V=D*Vref/1024,D是AD后讀取的數據。

評分

參與人數 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

地板
ID:646328 發表于 2021-8-6 10:58 | 只看該作者
csmyldl 發表于 2021-8-6 01:30
程序中讀出的是10位ADC轉換值, 并沒有算出來對應的電壓值來

adc_value_Vcc=(unsigned long)(5000*(unsigned long)adc_value)/1024;
這句話不就是算電壓值的嗎?
回復

使用道具 舉報

5#
ID:646328 發表于 2021-8-6 10:58 | 只看該作者
munuc_w 發表于 2021-8-6 10:23
AD轉換后的數據只是一個二進制數,定標后就是實際的物理量了。V=D*Vref/1024,D是AD后讀取的數據。

adc_value_Vcc=(unsigned long)(5000*(unsigned long)adc_value)/1024;
我就是用這句話來根據這個公式算的
回復

使用道具 舉報

6#
ID:609524 發表于 2021-8-6 11:03 | 只看該作者
baocong2019 發表于 2021-8-6 10:58
adc_value_Vcc=(unsigned long)(5000*(unsigned long)adc_value)/1024;
我就是用這句話來根據這個公式算 ...

你是用內部vcc做參考電壓的嗎
回復

使用道具 舉報

7#
ID:646328 發表于 2021-8-6 11:05 | 只看該作者
楊天想 發表于 2021-8-6 11:03
你是用內部vcc做參考電壓的嗎

標定的供電電壓是5v  = 5000
然后來測外部通道
回復

使用道具 舉報

8#
ID:401564 發表于 2021-8-6 13:31 | 只看該作者
PCON2默認是0x00
你在ADC初始化那加一條
PCON2=0x20;
試一下

評分

參與人數 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

9#
ID:928549 發表于 2021-8-6 15:27 | 只看該作者
假設有一個參考電壓,其中一個通道測量該參考電壓,那么就可以逆推出當前的電源電壓(電源電壓不一定有多么穩定,因此一般需要一個穩定的參考電壓),然后用逆推出的電源電壓去計算所要測量的電壓,你這個5000乘的有點夢幻了吧,這個5000直接用逆推出的電源電壓就可以了吧,,,如果對精度要求不高(直接乘5v就可以了),還有,我感覺程序有點問題 (ADC_RES<<8)|(ADC_RESL&3),這里有問題吧,把數增大了吧

評分

參與人數 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

10#
ID:646328 發表于 2021-8-6 17:09 | 只看該作者
1093562897 發表于 2021-8-6 15:27
假設有一個參考電壓,其中一個通道測量該參考電壓,那么就可以逆推出當前的電源電壓(電源電壓不一定有多么 ...

                adc_value_temp = (ADC_RES<<2)|(ADC_RESL&3);
最終問題解決了,是偏移位數的問題,高8位在RES寄存器,低2位在bit1-bit0,所以應該是左移2位,而不是左移8位。
回復

使用道具 舉報

11#
ID:401564 發表于 2021-8-6 18:08 | 只看該作者
ADC_RESL&3
你看一下數據手冊,你這個公式對嗎?
所以我叫你PCON2改一下試一下
回復

使用道具 舉報

12#
ID:584195 發表于 2021-8-6 18:18 | 只看該作者
學習了,雖然我不用STC單片機!
回復

使用道具 舉報

13#
ID:646328 發表于 2021-8-6 20:25 | 只看該作者
Y_G_G 發表于 2021-8-6 18:08
ADC_RESL&3
你看一下數據手冊,你這個公式對嗎?
所以我叫你PCON2改一下試一下

不是PCON2寄存器的問題,是移位出現了問題
回復

使用道具 舉報

14#
ID:401564 發表于 2021-8-6 21:08 | 只看該作者
baocong2019 發表于 2021-8-6 20:25
不是PCON2寄存器的問題,是移位出現了問題

哦哦,匯編用習慣了,就覺得高位會變成低位了...
你這樣也是對的
但,如果你有看過PCON2的說明,你就會知道,你最初的公式是PCON2的ADRJ位為1時的公式,網上大多是用這個公式的,但ADRJ默認是0的,別人的程序是要設定PCON2的
這就是我提醒你修改PCON2試一下原因
回復

使用道具 舉報

15#
ID:569384 發表于 2021-8-10 11:48 | 只看該作者
ad值需要用公式換算會電壓值,而且檢測的電壓值要做降壓處理,不能超過參考電壓,再根據降壓比推算會原來的電壓值。
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美成人a∨高清免费观看 欧美日韩中 | 国产高清免费在线 | 成人午夜免费福利视频 | 国产精品99久久久久久宅男 | 精产嫩模国品一二三区 | 成人精品 | 男人天堂网址 | a级黄色毛片免费播放视频 国产精品视频在线观看 | 亚洲精品成人在线 | 91久操视频 | 一本大道久久a久久精二百 欧洲一区二区三区 | 一区二区三区四区在线视频 | 国产高清自拍视频在线观看 | 日韩欧美高清dvd碟片 | 久久久精品一区 | 91天堂网| 成人欧美一区二区三区黑人孕妇 | 久久国产欧美日韩精品 | 亚洲精品日韩综合观看成人91 | 中文字幕亚洲精品 | 91国产在线播放 | 免费看爱爱视频 | 成人h片在线观看 | 超碰97在线免费 | 久久久免费少妇高潮毛片 | 亚洲综合天堂 | 福利视频三区 | 91精品国产一区二区三区 | 国产一区二区三区在线观看免费 | 精品国产一区二区三区性色 | 国产成人精品一区二区三区 | 久久99国产精一区二区三区 | 日韩av.com | 超碰超碰| 欧美一区视频在线 | 伊人网伊人 | 亚洲人精品午夜 | 国产高清在线精品一区二区三区 | 日韩中文字幕网 | 一区二区三区免费 | 国产精品不卡视频 |