s3c2440的A/D转换应用
10 地点 CMOS ADC(模/数字转换器)是 8 通道模拟输入型设备回收。该模拟输入信号转换 10 位二进制数字编码,A/D变化。也被称为模数转换。该模拟信号被转换成美元
算机可以处理的数字信号。
对于s3c2440来说。实现A/D转换比較简单,主要做的事情就是 ADC 控制寄存器 ADCCON 和 ADC 转换数据寄存器 ADCDAT0。寄存器ADCDAT0的低10位用于存储A/D转换
后的数据。寄存器ADCCON的第15位用于标识A/D转换是否结束。
第14位用于使能是否进行预分频。而第6位到第13位则存储的是预分频数值,由于A/D转换的速度不能太快,
所以要通过预分频处理才干够得到正确的A/D转换速度。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvWHNjS2VybmVs/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
如我们想要得到A/D转换频率为1MHz,则预分频的值应为49。第3位到第5位表示的是A/D转换的通道选择。
第2位能够实现A/D转换的待机模式。第1位用于是否通过读
取操作来使能A/D转换的開始。
第0位则是在第1位被清零的情况下用于开启A/D转换。
单独的adc操作 非常easy,就配置下轮询寄存器的某个位变化了就说明採样完成了:
int readADC(INT8U channel)
{
channel &= 7;
rADCCON = (1<<14)|(49<<6)|(channel<<3); //设置预分频器和A/D通道 rADCCON|=0x1; //启动A/D转换 while(rADCCON & 0x1)
OSTimeDly(1); //确认A/D转换是否開始 while(!(rADCCON & 0x8000))
OSTimeDly(1); //等待A/D转换的结束 return ( (int)rADCDAT0 & 0x3ff ); //读取A/D转换的数据
}
在多任务环境下while循环后面能够增加一个比較短的 OSTimeDly 。
没有什么模拟传感器,能够用螺丝刀转动PR2可见採集数据随着转动改变。 在这里就不把採集的数据显示在lcd上了,只通过串口打印出来吧。
详细代码能够从我github上clone。
參考:
blog.csdn.net/zhaocj/article/details/5495730
s3c2440文档
版权声明:本文博客原创文章。博客,未经同意,不得转载。
s3c2440的A/D转换应用的更多相关文章
- S3C2440触摸屏驱动实例开发讲解
出处:http://www.embeddedlinux.org.cn/html/yingjianqudong/ 一.开发环境 主 机:VMWare--Fedora 9 开发板:Mini2440--6 ...
- S3C2440触摸屏控制总结
触摸屏控制原理,其实与ADC读取一个滑动变阻器中间触点电压的原理一样.只不过,读取触摸屏的X.Y方向上的电压需要两次,而且需要设置其工作模式以实现一个ADC读取两个通道的电压. S3C2440的ADC ...
- 转 s3c2440硬件学习----内存管理单元MMU
本篇基本是韦东山书上的 一.内存管理单元MMU介绍 内存管理单元简称MMU,它负责虚拟地址到物理地址的映射,并提供硬件机制的内存访问权限检查.MMU使得每个用户进程拥有自己独立的地址空间,并通过内存访 ...
- S3C2440 ADC详解
S3C2440拥有八通道的十位ADC, 最大转换率为2.5MHz A/D转换器时钟下的500KSPS.A/D转换器支持片上采样-保持功能和掉电模式的操作. 八个通道中有四个通道适用于电阻屏的触摸屏触摸 ...
- S3C2440的RTC解析
位二-十进制交换码(BCD)值数据给CPU.这些数据包括年.月.日.星期.时.分和秒的时间信息.RTC单元工作在外部32.768kHz晶振并且可以执行闹钟功能 实时时钟模块保存的数据是DCD码形式. ...
- 【转】S3C2440与SDRAM NorFlash NandFlash连线分析
一.SDRAM(HY57V561620F)连线分析 1. S3C2440 有27根地址线ADDR[26:0],8根片选信号ngcs0-ngcs7,对应bank0-bank7,当访问bankx 的地址 ...
- s3c2440对nandflash的操作
转:http://blog.csdn.net/zhaocj/article/details/5795254 nandflash在对大容量的数据存储中发挥着重要的作用.相对于norflash,它具有一些 ...
- S3C2440 IIS操作 uda134x录放音
IIS(Inter-IC Sound)由飞利浦公司开发.是一种经常使用的音频设备接口,主要用于CD.MD.MP3等设备. s3c2440一共同拥有5个引脚用于IIS:IISDO.IISDI.IISSC ...
- 十三、S3C2440 裸机 — 初始化代码及MMU
13.1 NOR FLASH 搬运 把程序从 nor flash 上搬运到 SDRAM 中 程序存储在 nor flash 上,运行时将程序搬运到 SDRAM 中运行 nor flash 启动:nor ...
随机推荐
- [SVN]创建本地的SVN仓库
本地创建SVN仓库,就算是自己平时写代码也养成使用SVN的习惯. 环境: OS:Mac OS X10.9.1 SVN Version:1.7.10 创建本地SVN仓库: $svnadmin creat ...
- phpc.sinaapp.com 加密的解密方法
原文:phpc.sinaapp.com 加密的解密方法 很简单,用类似phpjm的解密方式,替换掉_inc.php中最后一个return中的eval为print就出来了.
- Andorid Clip 实现自定义的进度条效果实例
Android该系统提供了一个水平进度条为我们展现了运行使用进展情况,水平进度条显示用于运行进度Clip Drawable技术 下面我们通过一个具体的例子来说明Clip Drawable使用. 还有我 ...
- 盒子游戏(The Seventh Hunan Collegiate Programming Contest)
盒子游戏 有两个相同的盒子,其中一个装了n个球,另一个装了一个球.Alice和Bob发明了一个游戏,规则如下:Alice和Bob轮流操作,Alice先操作.每次操作时,游戏者先看看哪个盒子里的球的数目 ...
- 无法删除 C_PAN.GHO: 访问被拒绝 解决办法
右击“C-PAN.GHO",属性->安全(如果没有安全选项卡,可以在工具->文件夹选项->查看中将”使用简单头文件共享“前的对勾去掉),这时”添加“和”删除“按钮应该是不可 ...
- Android 从相冊获取近期拍摄的多张照片(获取相机拍照所存储的照片)
转载请标明出处:http://blog.csdn.net/android_ls/article/details/39928519 在做公司项目时.遇到的需求:自己定义显示照片的网格视图,显示用户近期採 ...
- String数组必须初始化之后才能赋值
犯了一个很大的错误: String sample[]=null; sample[]="hello"; samlple[]="world"; 直接就报异常了. 记 ...
- java单例模式(线程安全,效率高,双重推断)
这样的方法,在获取单利的时候,避免了线程锁,导致訪问该方法速度非常慢, 同是,防止了多线程同事房屋该方法就会产生多个实例的问题. 效率高.线程安全. public class TestInstance ...
- Hello World 之 控制台版本(Console Application)
原文:Hello World 之 控制台版本(Console Application) 先来介绍下Hello, World "Hello, World"程序指的是只在计算机屏幕 ...
- ConcurrentHashMap中的2的n次方幂上舍入方法(转)
最近看JDK中的concurrentHashMap类的源码,其中有那么一个函数: /** * Returns a power of two table size for the given desir ...