AD采樣是應(yīng)用非常廣泛的一種模式,其中包括DMA方式和非DMA方式。
部分代碼如下:
#include
#include
#define ADC_DEV_NAME "adc0" /* ADC 設(shè)備名稱 */
#define ADC_DEV_CHANNEL 7 /* ADC 通道 */
#define REFER_VOLTAGE 330 /* 參考電壓 3.3V,數(shù)據(jù)精度乘以 100 保留 2 位小數(shù)*/
#define CONVERT_BITS (1 << 10) /* 轉(zhuǎn)換位數(shù)為 10 位 */
static int adc_vol_sample(int argc, char *argv[])
{
rt_adc_device_t adc_dev;
rt_uint32_t value, vol;
rt_err_t ret = RT_EOK;
/* 查找設(shè)備 */
adc_dev = (rt_adc_device_t)rt_device_find(ADC_DEV_NAME);
if (adc_dev == RT_NULL)
{
rt_kprintf("adc sample run failed! can't find %s device!\n", ADC_DEV_NAME);
return RT_ERROR;
}
/* 使能設(shè)備 */
ret = rt_adc_enable(adc_dev, ADC_DEV_CHANNEL);
/* 讀取采樣值 */
value = rt_adc_read(adc_dev, ADC_DEV_CHANNEL);
rt_kprintf("the value is :%d \n", value);
/* 轉(zhuǎn)換為對應(yīng)電壓值 */
vol = value * REFER_VOLTAGE / CONVERT_BITS;
rt_kprintf("the voltage is :%d.%02d \n", vol / 100, vol % 100);
/* 關(guān)閉通道 */
ret = rt_adc_disable(adc_dev, ADC_DEV_CHANNEL);
return ret;
}
/* 導(dǎo)出到 msh 命令列表中 */
MSH_CMD_EXPORT(adc_vol_sample, adc voltage convert sample);
最后做一個總結(jié),首先新建一個 rt-thread studio 的工程,接著配置 rt-thread setting,使能 sdk 的 adc,配置完后 crtl+s 保存,接著在 application 文件夾下新建測試源文件,在源文件中添加官方的 adc 設(shè)備測試代碼,后面編譯好后下載到開發(fā)板就可以開始測量電壓了。
審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。
舉報投訴
-
adc
+關(guān)注
關(guān)注
98文章
6402瀏覽量
543846 -
操作系統(tǒng)
+關(guān)注
關(guān)注
37文章
6694瀏覽量
123147 -
AD采樣
+關(guān)注
關(guān)注
0文章
23瀏覽量
15937 -
RT-Thread
+關(guān)注
關(guān)注
31文章
1264瀏覽量
39850
發(fā)布評論請先 登錄
相關(guān)推薦
如何對RT-Thread內(nèi)核有基本的了解?
RT-Thread 的時鐘管理以時鐘節(jié)拍為基礎(chǔ),時鐘節(jié)拍是 RT-Thread 操作系統(tǒng)中最小的時鐘單位。
STm32與RT-thread操作系統(tǒng)的配合使用
操作系統(tǒng)的配合使用效果還是很不錯的,前一段兒我又看了下華為的操作系統(tǒng)LiteOS,并參考了野火的教程,完成了STM32項目的移植,兩者整體上也是很類似的,感覺沒有RT-thread的簡
發(fā)表于 08-04 06:29
RT-Thread Studio操作系統(tǒng)
stm32f407+rtthread 使用 ec20 ppp撥號開發(fā)環(huán)境一、工程創(chuàng)建二、模塊添加三、參數(shù)配置四、測試開發(fā)環(huán)境IDE:RT-Thread Studio操作系統(tǒng)
發(fā)表于 08-24 07:44
基于RT-Thread操作系統(tǒng)衍生rt-smart實時操作系統(tǒng)簡介
1、rt-smart 實時操作系統(tǒng)簡介RT-Thread Smart(簡稱 rt-smart)嵌入式實時操作系統(tǒng)是基于
發(fā)表于 06-22 17:56
RT-Thread編程指南
RT-Thread編程指南——RT-Thread開發(fā)組(2015-03-31)。RT-Thread做為國內(nèi)有較大影響力的開源實時操作系統(tǒng),本文是RT
發(fā)表于 11-26 16:06
?0次下載
RT-Thread用戶手冊
RT-Thread用戶手冊——本書是RT-Thread的編程手冊,用于指導(dǎo)在RT-Thread實時操作系統(tǒng)環(huán)境下如何進行編
程。
發(fā)表于 11-26 16:16
?0次下載
RT Thread操作系統(tǒng)教程及資料
## RT-Thread 簡介 ##
RT-Thread RTOS是一款來自中國的開源實時操作系統(tǒng),
由國內(nèi)一些專業(yè)開發(fā)人員開發(fā)、維護。
它不僅僅是一款高效、穩(wěn)定的實時核心,也是一套
發(fā)表于 05-11 14:54
?2次下載
RT-Thread Smart微內(nèi)核操作系統(tǒng)發(fā)布!
9月1日,由上海睿賽德電子科技有限公司舉辦的RT-Thread Smart微內(nèi)核操作系統(tǒng)發(fā)布會于北京圓滿落幕,發(fā)布會以見微為主題,邀請到中國工程院院士、產(chǎn)業(yè)專家、高校教授及行業(yè)從業(yè)人員100余位蒞臨
國民技術(shù)攜手RT-Thread共同推進MCU與RT-Thread操作系統(tǒng)廣泛適配
日前,國民技術(shù)股份有限公司與知名物聯(lián)網(wǎng)操作系統(tǒng)廠商睿賽德科技(RT-Thread)簽署會員合作協(xié)議,正式成為RT-Thread高級會員。國民技術(shù)將基于通用MCU和RT-Thread物聯(lián)
RT-Thread實時操作系統(tǒng)安裝向?qū)?/a>
RT-Thread 是一個集實時操作系統(tǒng)(RTOS)內(nèi)核、中間件組件和開發(fā)者社區(qū)于一體的技術(shù)平臺,由熊譜翔先生帶領(lǐng)并集合開源社區(qū)力量開發(fā)而成,RT-Thread 也是一個組件完整豐富、高度可伸縮
發(fā)表于 04-02 09:43
?7次下載
RT-Thread學(xué)習(xí)筆記 RT-Thread的架構(gòu)概述
的種種優(yōu)越之處。RT-Thread 是一款完全由國內(nèi)團隊開發(fā)維護的嵌入式實時操作系統(tǒng)(RTOS),具有完全的自主知識產(chǎn)權(quán)。經(jīng)過 16 個年頭的沉淀,伴隨著物聯(lián)網(wǎng)的興起,它正演變成一個功能強大、組件豐富的物
RT-Thread操作系統(tǒng)已經(jīng)成功部署至芯馳E3
近日,國內(nèi)領(lǐng)先的車規(guī)芯片企業(yè)芯馳科技與國內(nèi)領(lǐng)先的車載RTOS(實時操作系統(tǒng))企業(yè)睿賽德科技(RT-Thread)共同宣布:RT-Thread操作系統(tǒng)全面支持芯馳科技E3系列 MCU芯片
RT-Thread操作系統(tǒng)的FreeRTOS兼容層
的兼容項目中。 1 概述 這是一個針對RT-Thread國產(chǎn)操作系統(tǒng)的FreeRTOS操作系統(tǒng)兼容層,可以讓原有基于FreeRTOS操作系統(tǒng)的項目快速、無感地遷移到
RT-Thread榮獲“最具影響力IoT操作系統(tǒng)獎”
2024年3月30日,第十一屆開源操作系統(tǒng)年度技術(shù)會議(OS2ATC)在西郊賓館舉辦!RT-Thread作為國內(nèi)領(lǐng)先的開源操作系統(tǒng)斬獲了“最具影響力IoT操作系統(tǒng)獎”。該獎項是對
新書發(fā)布——《實時操作系統(tǒng)應(yīng)用技術(shù):RT-Thread與ARM編程實踐》
RT-Thread又一本新書《實時操作系統(tǒng)應(yīng)用技術(shù)——基于RT-Thread與ARM的編程實踐》發(fā)布,標志著RT-Thread生態(tài)和實時操作系統(tǒng)
評論