lpc1768ADC使用
Lpc1768内置有一个ad外设,该外设有八路复用输入,所以,可以同时接八路ad设备,同时还支持触发转换模式,由外部端口进行ad触发,ad转换完成之后可以产生中断
Lpc1768支持的转换模式有两种,分别会连续转换模式和软件单次转换模式,连续转换模式可以自动的按照我们选择的转换位进行ad的依次转换,单次转换模式是软件转换,只能一次转换一个ad值
使用AD分为以下几步
- 打开ADC时钟,注意,顺带gpio的时钟也要打开

- 设置gpio的功能为ad

- 设置转换模式和转换引脚

设置转换时钟,设置转换器正常工作模式都是在cr中完整
- 设置转换完成中断

- 在转换完成之后提取转换结果

代码例程如下
void adc_init(u8 div)//最大时钟不得大于13M
{
//打开ADC和IO口时钟
LPC_SC->PCONP |= (1<<15)|(1<<12);
LPC_PINCON->PINSEL0 &= ~(3<<14);
LPC_PINCON->PINSEL0 |= 1<<14;//选择adc功能
LPC_ADC->ADCR = 0X00;
LPC_ADC->ADCR |= (1<<ch)|(div<<8)|(1<<21);//正常工作 非规则转换 并选中响应通道
LPC_ADC->ADINTEN = 0x00;//禁用全部中断
}
u16 adc_cover(u8 ch)
{
u16 temp;
LPC_ADC->ADCR &= ~(0x000000ff);
LPC_ADC->ADCR |= (1<<ch);
LPC_ADC->ADCR |= 1<<24;//启动转换
while(!(LPC_ADC->ADGDR &(1u<<31)));//等待转换结束
temp = (u16)((LPC_ADC->ADGDR & 0x00000fff0)>>4);
return temp;
}
lpc1768ADC使用的更多相关文章
随机推荐
- DHCPv6
SLAAC(RFC4862)(StatelessAddressAutoconfiguration),无状态自动配置 IT网,http://www.it.net.cn DHCPv6包含以下两种形式: n ...
- jenkins插件 build-name-setter
#${BUILD_NUMBER}-${PROJECT_NAME}-${ENV,var="VARIABLENAME"}-${ENV,var="BUILD_USER" ...
- HDU ACM 1495 非常可乐(广搜BFS)
非常可乐 Time Limit : 2000/1000ms (Java/Other) Memory Limit : 32768/32768K (Java/Other) Total Submissi ...
- Python -- Web -- WSGI
WSGI:Web Server Gateway Interface 只要求Web开发者实现一个函数,就可以响应HTTP请求. # hello.py def application(environ, s ...
- Linux关闭防火墙,关闭Selinux
查看防火墙状态 iptables -L or service iptables status 临时性关闭防火墙 iptables -F or service iptables stop 永久性关闭防火 ...
- L5,no wrong numbers
expressions: up to now,到现在为止 a great many,数量很大 in a way,在某种意义上说 words: burn,vt燃烧,vi烧毁,n灼烧 obtain,v ...
- Codeforces Round #363 (Div. 2) C. Vacations(DP)
C. Vacations time limit per test 1 second memory limit per test 256 megabytes input standard input o ...
- call_grant_sel.sql
set echo offpromptprompt =========================================================================== ...
- 转:从web三层架构解析软件测试内容
B/S架构的系统,都会使用如下的基础软件架构: 数据访问层:实现对数据的访问功能,如增加.删除.修改.查询数据. 业务逻辑层:实现业务的具体逻辑功能,如学生入学.退学.成绩管理等. 页面显示层:将业务 ...
- 发布时去掉 debug 和 提醒日志,简单无侵入
在 proguard 文件中加入下面代码,让发布时去掉 debug 和 提醒日志,简单无侵入! -assumenosideeffects class android.util.Log { public ...