ADC實驗

查看VR1鏈接的絲印:XadcAIN3
在這里插入圖片描述
在這里插入圖片描述
設置相關寄存器
在這里插入圖片描述

使用的是通道3,要設置相應的通道寄存器
在這里插入圖片描述

#include "exynos_4412.h"int main()
{unsigned int AdcValue = 0;/*將ADC的精度設置成 12bit*/ADCCON = ADCCON | (1 << 16);/*使能ADC的分頻器*/ADCCON = ADCCON | (1 << 14);/*設置ADC的分頻值, ADC的時鐘頻率 = PLCK/(19+1) = 5MHZ * ADC的轉換頻率 = 5MHZ / 5 = 1MHZ*/ADCCON = ADCCON & (~(0xFF << 6)) | (19 << 6);/*關閉待機模式,使能正常模式*/ADCCON = ADCCON & (~(1 << 2));/*關閉讀使能通過轉換AD*/ADCCON = ADCCON & (~(1 << 1));/*選擇轉換通道 3通道*/ADCMUX = 3;while(1) {/*開始轉換*/ADCCON = ADCCON | 1;/*等待轉換完成,因為轉換需要時間*/while(!(ADCCON & (1 << 15)));/*讀取轉換結果*/AdcValue = ADCDAT & 0xFFF;/*將結果轉換成實際的電壓值 mv   1800(mv) / (2^12-1) = 0.44*/AdcValue = AdcValue * 0.44;printf("AdcValue = %dmv\n", AdcValue);}return 0;
}

ADC實現小作業

1.編程實現通過LED狀態顯示當前電壓范圍
注:
電壓在1501mv~1800mv時,LED2、LED3、LED4、LED5點亮
電壓在1001mv~1500mv時,LED2、LED3、LED4點亮
電壓在501mv~1000mv時,LED2、LED3點亮
電壓在0mv~500mv時,LED2閃爍

#include "exynos_4412.h"/* 點亮LED2 */
#define LED2_ON (GPX2.DAT = GPX2.DAT | (1 << 7))/* 熄滅LED2 */
#define LED2_OFF (GPX2.DAT = GPX2.DAT & (~(1 << 7)))/* 點亮LED3 */
#define LED3_ON (GPX1.DAT = GPX1.DAT | 1)/* 熄滅LED3  */
#define LED3_OFF (GPX1.DAT = GPX1.DAT & (~ 1))/* 點亮LED4 */
#define LED4_ON (GPF3.DAT = GPF3.DAT | (1 << 4))/* 熄滅LED4 */
#define LED4_OFF (GPF3.DAT= GPF3.DAT & (~(1 << 4)))/* 點亮LED5 */
#define LED5_ON (GPF3.DAT = GPF3.DAT | (1 << 5))/* 熄滅LED5 */
#define LED5_OFF (GPF3.DAT = GPF3.DAT & (~ (1 << 5)))/*循環延時*/
void Delay(unsigned int Time) {while(Time--);
}/*初始化呢ADCCON寄存器*/
void ADC_CON(void) {/*將ADC的精度設置成 12bit*/ADCCON = ADCCON | (1 << 16);/*使能ADC的分頻器*/ADCCON = ADCCON | (1 << 14);/*設置ADC的分頻值, ADC的時鐘頻率 = PLCK/(19+1) = 5MHZ * ADC的轉換頻率 = 5MHZ / 5 = 1MHZ*/ADCCON = ADCCON & (~(0xFF << 6)) | (19 << 6);/*關閉待機模式,使能正常模式*/ADCCON = ADCCON & (~(1 << 2));/*關閉讀使能通過轉換AD*/ADCCON = ADCCON & (~(1 << 1));/*選擇轉換通道 3通道*/ADCMUX = 3;
}int main()
{unsigned int AdcValue = 0;ADC_CON();GPX2.CON = GPX2.CON & (~(0xF << 28)) | (0x1 << 28);GPX1.CON = GPX1.CON & (~(0xF)) | (0x1);GPF3.CON = GPF3.CON & (~(0xFF << 16)) | (0x11 << 16);while(1) {/*開始轉換*/ADCCON = ADCCON | 1;/*等待轉換完成,因為轉換需要時間*/while(!(ADCCON & (1 << 15)));/*讀取轉換結果*/AdcValue = ADCDAT & 0xFFF;/*將結果轉換成實際的電壓值 mv   1800(mv) / (2^12-1) = 0.44*/AdcValue = AdcValue * 0.44;/*打印電壓值*/printf("AdcValue = %dmv\n", AdcValue);if(AdcValue >= 1501 && AdcValue <= 1800) {/*LED2 LED3 LED4 LED5 點亮*/LED2_ON;LED3_ON;LED4_ON;LED5_ON;} else if (AdcValue >= 1001 && AdcValue <= 1500) {/*LED2 LED3 LED4 點亮*/LED5_OFF;LED2_ON;LED3_ON;LED4_ON;} else if (AdcValue >= 501 && AdcValue <= 1000) {/*LED2 LED3 點亮*/LED4_OFF;LED5_OFF;LED2_ON;LED3_ON;} else if (AdcValue >= 0 && AdcValue <= 500) {/*LED2 閃爍*/LED3_OFF;LED4_OFF;LED5_OFF;LED2_ON;Delay(1000000);LED2_OFF;Delay(1000000);}  }return 0;
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/37949.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/37949.shtml
英文地址,請注明出處:http://en.pswp.cn/news/37949.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

SAP ABAP 直接把內表轉換成PDF格式(smartform的打印函數輸出OTF格式數據)

直接上代碼&#xff1a; REPORT zcycle055.DATA: lt_tab TYPE TABLE OF zpps001. DATA: ls_tab TYPE zpps001.ls_tab-werks 1001. ls_tab-gamng 150.00. ls_tab-gstrp 20201202. ls_tab-aufnr 000010000246. ls_tab-auart 標準生產. ls_tab-gltrp 20201205. ls_tab-matn…

MyBatis面試題

MyBatis面試題&#xff1a; 1、MyBatis是什么&#xff1f; Mybatis是一個半ORM&#xff08;對象關系映射&#xff09;框架&#xff0c;它內部封裝了JDBC&#xff0c;加載驅動、創建連接、創建statement等繁雜的過程&#xff0c;開發者開發時只需要關注如何編寫SQL語句&#xf…

榮耀X40 GT真機調試APP,HBuilder X刷新不到設備

今天使用榮耀X40GT進行真機調試App的時候&#xff0c;hbuilder怎么都刷不出來設備&#xff0c;經歷一番風雨最終連接成功&#xff0c;特此記錄一下。 我的設備Android版本12&#xff0c;MagicOS版本7.0&#xff0c;進行了如下配置&#xff1a; 1、打開“設置”-》“系統和更新”…

keil5突然編譯輸出框build output 不見了

今天keil5突然編譯輸出框build output 不見了&#xff0c;但可以編譯和下載。 首先嘗試&#xff0c;在view里面打開和關閉build output window&#xff0c;沒有反應&#xff1b; 其次&#xff0c;點擊window-reset view to defaults&#xff0c;果然build output又恢復了&#…

數據結構---圖

這里寫目錄標題 圖的基本概念和術語基本概念和術語1基本概念和術語2 圖的類型定義抽象數據類型定義二級目錄二級目錄 一級目錄二級目錄二級目錄二級目錄二級目錄二級目錄二級目錄 圖的基本概念和術語 基本概念和術語1 V代表頂點的有窮非空集合 E代表邊的有窮集合 n為頂點 有向…

數據結構與算法-棧(LIFO)(經典面試題)

一&#xff1a;面試經典 1. 如何設計一個括號匹配的功能&#xff1f;比如給你一串括號讓你判斷是否符合我們的括號原則&#xff0c; 棧 力扣 2. 如何設計一個瀏覽器的前進和后退功能&#xff1f; 思想&#xff1a;兩個棧&#xff0c;一個棧存放前進棧&…

Python爬蟲之解決瀏覽器等待與代理隧道問題

作為專業爬蟲程序員&#xff0c;我們往往需要應對一些限制性挑戰&#xff0c;比如瀏覽器等待和使用代理隧道。在Python爬蟲開發中&#xff0c;這些問題可能會導致我們的爬蟲受阻。本文將為你分享解決這些問題的方案&#xff0c;幫助你順利應對瀏覽器等待和代理隧道的挑戰&#…

【vue3】固定上導航欄和左側導航欄,只顯示其他內容在主內容區域

實現思路&#xff1a; 在一個單獨的vue組件文件中只寫出上導航欄和左側導航欄的內容將你想要展示的頁面主內容寫到單獨的組件中在index.js寫路由&#xff0c;將【想要展示的頁面主內容的路由】作為【子路由】寫在【只寫出上導航欄和左側導航欄的路由】的下面&#xff1b; 在el…

Oracle 開發篇+Java通過共享模式訪問Oracle數據庫

標簽&#xff1a;共享服務器進程、shared server process釋義&#xff1a;shared server process是Oracle的一種數據庫連接技術&#xff0c;類似的還有專用模式和DRCP ★ 數據庫配置 alter system set shared_server_sessions1 scopespfile; alter system set max_shared_serv…

AIGC|AGI究竟是什么?為什么大家都在爭先入場?

一、AI大語言模型進入爆發階段 2022年12月ChatGPT突然爆火&#xff0c;原因是其表現出來的智能化已經遠遠突破了我們的常規認知。雖然其呈現在使用者面前僅僅只是一個簡單的對話問答形式&#xff0c;但是它的內容化水平非常強大&#xff0c;甚至在某些方面已經超過人類了&#…

運動控制系統::幾篇大佬的文章

運動規劃 - 知乎 (zhihu.com) 運動規劃、運動控制 & 運動感知 - 知乎 (zhihu.com)

電腦屏幕閃爍?別慌!解決方法在這!

“我新買了一臺電腦&#xff0c;還沒用幾天呢&#xff0c;就出現了電腦屏幕閃爍的情況&#xff0c;這讓我感到很煩躁。有什么方法可以解決電腦屏幕閃爍的問題呢&#xff1f;” 使用電腦的過程中&#xff0c;我們不難發現電腦屏幕有時候會出現閃爍的情況&#xff0c;這會導致使用…

在線預覽Word、Excel、PowerPoint等文件

在我們工作時&#xff0c;經常會有在線查看各種不同類型的文件的需要&#xff0c;如Word文檔、Excel表格、PowerPoint幻燈片和PDF等。可以直接在這里預覽&#xff1a;https://www.compdf.com/webviewer/demo Word 文件實現前端預覽 方案一&#xff1a; 使用 XDOC 可以實現預…

vscode|pycharm + docker + python

1&#xff0c;docker run的時候要加上port docker run -it --gpusall -p 2222:22 -v /掛載目錄/:/docker 目錄1/ -v /掛載目錄/:/docker 目錄2/ --namexxx image:v2 /bin/bash 2&#xff0c;docker 內部要安裝ssh 2.1方法命令&#xff1a; apt-get update apt-get install…

使用藍牙外設卻不小心把臺式機電腦藍牙關了

起因 今天犯了一個賊SB的錯誤&#xff0c;起因是藍牙鍵盤突然就不能輸入了&#xff08;雖然是連接狀態&#xff0c;但是按什么鍵都沒有反應&#xff09; 原來我的解決方法就是重啟一下電腦&#xff0c;但是那會電腦開了賊多的軟件。我就想重啟也太麻煩了&#xff0c;既然重啟…

Linux版本 centOS 7,java連接mysql

在Linux下 使用java 訪問數據庫 &#xff0c; java 1.7版本&#xff0c; mysql 8.0.33版本&#xff0c; 連接驅動 mysql-connector-java-5.1.49.jar 代碼如下&#xff1a; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import ja…

C#學習,反射

目錄 C#學習 .NET的體系結構 二次編譯 反射 什么是反射&#xff1f; 什么是Type&#xff1f; 什么是程序集&#xff1f; 反射API&#xff1a; 一&#xff0c;程序集 1&#xff0c; Load 2&#xff0c;LoadFrom 3&#xff0c;LoadFile 二&#xff0c;類型實例 1&a…

SSM中接口+mapper文件(增刪改查)

IActivateInfoDao接口 public interface IActivateInfoDao{//根據用戶id和驗證類型&#xff0c;判斷認證是否已存在ActivateInfo selectByUserIdAndType(Param("userId") String userId, Param("type") String type);//插入int insert(ActivateInfo activ…

一文讀懂c++語言

一文讀懂C語言 C的發展C的設計目標C的特性C的挑戰 C的發展 C是一種通用的、高級的編程語言&#xff0c;它是C語言的擴展。C由Bjarne Stroustrup于1983年首次引入&#xff0c;并在之后的幾十年中不斷發展壯大。C被廣泛應用于各種領域&#xff0c;包括系統開發、游戲開發、嵌入式…

pytest數據驅動(最簡單)

目錄 第一種&#xff1a;通過yaml文件獲取數據&#xff08;一維列表&#xff09; 第二種&#xff1a;通過yaml文件獲取數據&#xff08;二維列表&#xff09; 第三種&#xff1a;通過yaml文件獲取數據&#xff08;pytest.fixture&#xff09; 資料獲取方法 第一種&#xff…