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.mzph.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…

荣耀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;这会导致使用…

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;既然重启…

一文读懂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…

四、Linux中cd、pwd以及相对/绝对路径和特殊路径符

1、cd命令&#xff1a; cd命令可以切换当前工作目录&#xff0c;基础语法是&#xff1a; cd [linux路径] &#xff08;1&#xff09;、打开Linux的命令提示行&#xff0c;当前工作目录是home&#xff0c;输入“cd /”&#xff0c;可以切换到根目录下&#xff0c;在根目录下输…

6_AccessKeyId和AccessKeySecret的环境变量配置

系列文章目录 第1章 Linux安装Docker 第2章 Docker安装jdk1.8和MySql 第3章 Docker安装redis 第4章 Jar包部署Docker 第5章 Docker-compose多服务统一编排管理 第6章 AccessKeyId和AccessKeySecret的环境变量配置 文章目录 系列文章目录前言一、WIN系统配置二、LINUX系统配置三…

【go语言学习笔记】05 Go 语言实战

文章目录 一、 RESTful API 服务1. RESTful API 定义1.1 HTTP Method1.2 RESTful API 规范 2. RESTful API 风格示例3. RESTful JSON API4. Gin 框架4.1 导入 Gin 框架4.2 使用 Gin 框架4.2.1 获取特定的用户&#xff08;GET&#xff09;4.2.2 新增一个用户&#xff08;POST&am…

【前端 | CSS】align-items与align-content的区别

align-items 描述 CSS align-items 属性将所有直接子节点上的 align-self 值设置为一个组。align-self 属性设置项目在其包含块中在交叉轴方向上的对齐方式 align-items是针对每一个子项起作用&#xff0c;它的基本单位是每一个子项&#xff0c;在所有情况下都有效果&…

SpringBoot复习:(31)Controller中返回的对象是如何转换成json字符串给调用者的?

首先&#xff0c;SpringBoot自动装配了HttpMessageConvertersAutoConfiguration这个自动配置类 而这个自动配置类又通过Import注解导入了JacksonHttpMessageConvertersConfiguration类&#xff0c; 在这个类中配置了一个类型为MappingJackson2HttpMessageConverter类型的bean…