当前位置: 首页 > news >正文

s3c2440---ADC模数转换器

目录

一、模数转换器简述

1.1.简述

1.2.转换过程    

​编辑

1.3. ADC类别

二、普通ADC转换的实现 

2.1.设置ADC控制寄存器

2.2. 读取ADC转换数据寄存器

 三、总结


一、模数转换器简述

1.1.简述

S3c2440有一个10-bit的CMOS ADC 模数转换器支持8个模拟通道输入10位的分辨率(1024个比较器),最高速度可达500KSPS(500 千次/每秒)。

量程:3.3v

精度:10位

转换速率:500KSPS

 

1.2.转换过程    

AD转换过程:采样 、 保持、量化 、 编码

  

1.3. ADC类别

 模拟ADC,包含了2部分功能一部分是触屏功能另一部分就是普通ADC功能,分别可以产生INT_TC和INT_ADC 两个中断。8个AIN模拟输入(A[3:0],YM,YP,XM,XP)通过一个8路模拟开关MUX进行通道片选。 ADC模块共有20个寄存器。对于普通ADC转换,使用ADCCON 和 ADCDAT0即可完成控制ADCCON用于控制设置,ADCDAT0保存了转换结果。

二、普通ADC转换的实现 

                                            

如图,通过控制可变电阻的电阻值来模拟不同电压ADC转换的过程。

2.1.设置ADC控制寄存器

/*ADC初始化  ---   模数转换控制器*/
void init_adc(void)
{ADCCON |= (1 << 14);ADCCON &= ~(0xff << 6);ADCCON |= (49 << 6);ADCCON &= ~(0x7 << 3);ADCCON &= ~(0x1 << 2);ADCCON |= (0x1 << 1);}

2.2. 读取ADC转换数据寄存器

读取前需要等待转结束

/*读取数据*/
unsigned short adc_read(void)
{//读取数据,自动转换unsigned short data = ADCDAT0;while(!(ADCCON & (1 << 15))); // 等待结束再读取data = ADCDAT0 & 0x3ff;return data;}

 三、总结

        强调一下,预分频时的值会默认+1,防止设置0造成不好的结果;还有就是ADC控制寄存器的设置中,如果选择了使能读启动操作,那么就不需要设置AD转换启动且此位置在启动后被清零;读取ADC转换数据存储器的值时,一定要等待ADC转换结束

 

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 微信小程序路由跳转之间的区别
  • 【知识图谱】4、LLM大模型结合neo4j图数据库实现AI问答的功能
  • 会员营销如何利用JSON发送短信
  • 网络安全宗旨和目标
  • 随笔1:数学建模与数值计算
  • 美妆行业的画册电子版如何制作?
  • Quartz.Net_快速开始
  • 什么是AIGC?什么是AGI?
  • python和java哪个发展前景好?
  • 深度学习与大模型第1课环境搭建
  • 找不同-第15届蓝桥省赛Scratch初级组真题第4题
  • 【SQL】Delete使用
  • perf 基础 -- perf ext_mem_req
  • 如何测试一个算法
  • WPF性能优化之UI虚拟化
  • avalon2.2的VM生成过程
  • Java教程_软件开发基础
  • Java小白进阶笔记(3)-初级面向对象
  • MySQL QA
  • PV统计优化设计
  • Redux系列x:源码分析
  • SpingCloudBus整合RabbitMQ
  • SpringCloud(第 039 篇)链接Mysql数据库,通过JpaRepository编写数据库访问
  • webpack项目中使用grunt监听文件变动自动打包编译
  • 程序员最讨厌的9句话,你可有补充?
  • 从零开始的无人驾驶 1
  • 电商搜索引擎的架构设计和性能优化
  • 构建二叉树进行数值数组的去重及优化
  • 计算机常识 - 收藏集 - 掘金
  • 技术胖1-4季视频复习— (看视频笔记)
  • 紧急通知:《观止-微软》请在经管柜购买!
  • 如何正确配置 Ubuntu 14.04 服务器?
  • 设计模式 开闭原则
  • 微信端页面使用-webkit-box和绝对定位时,元素上移的问题
  • 微信开源mars源码分析1—上层samples分析
  • 一起来学SpringBoot | 第十篇:使用Spring Cache集成Redis
  • AI又要和人类“对打”,Deepmind宣布《星战Ⅱ》即将开始 ...
  • Python 之网络式编程
  • 阿里云IoT边缘计算助力企业零改造实现远程运维 ...
  • 如何正确理解,内页权重高于首页?
  • 说说我为什么看好Spring Cloud Alibaba
  • ###C语言程序设计-----C语言学习(3)#
  • #java学习笔记(面向对象)----(未完结)
  • #pragam once 和 #ifndef 预编译头
  • $.each()与$(selector).each()
  • (3)STL算法之搜索
  • (Charles)如何抓取手机http的报文
  • (vue)el-cascader级联选择器按勾选的顺序传值,摆脱层级约束
  • (每日持续更新)jdk api之FileReader基础、应用、实战
  • (十五)Flask覆写wsgi_app函数实现自定义中间件
  • (五)关系数据库标准语言SQL
  • (一)UDP基本编程步骤
  • (一)搭建springboot+vue前后端分离项目--前端vue搭建
  • .gitattributes 文件
  • .net core docker部署教程和细节问题