Lpc1768内置有一个ad外设,该外设有八路复用输入,所以,可以同时接八路ad设备,同时还支持触发转换模式,由外部端口进行ad触发,ad转换完成之后可以产生中断

Lpc1768支持的转换模式有两种,分别会连续转换模式和软件单次转换模式,连续转换模式可以自动的按照我们选择的转换位进行ad的依次转换,单次转换模式是软件转换,只能一次转换一个ad值

使用AD分为以下几步

  1. 打开ADC时钟,注意,顺带gpio的时钟也要打开

  1. 设置gpio的功能为ad

  1. 设置转换模式和转换引脚

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

  1. 设置转换完成中断

  1. 在转换完成之后提取转换结果

代码例程如下

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;

}

转载于:https://www.cnblogs.com/dengxiaojun/p/4338677.html

lpc1768ADC使用相关推荐

最新文章

  1. 在全面部署 IPV6 前,你需要了解都在这儿
  2. python【力扣LeetCode算法题库】69-x 的平方根
  3. java lists 引用包,在线等java【不在同一类,同一个包的两个LIst可以实现复制么?怎...
  4. matlab神经网络1:功能特色
  5. python循环语句打印矩形_Python中使用循环语句打印三角形、菱形
  6. matlab fopen wt,matlab的fopen和fprintf
  7. mifare classic 2.2.3中文_Adobe Lightroom Classic CC 2019 v8.4.1 中文完整直装版
  8. CentOS 7上快速安装saltstack
  9. java类的引用使用即String类的toUpperCase的使用
  10. ubuntu14.04 下 mysql 存储目录迁移
  11. 控制Tello无人机扫描条形码
  12. 一套键鼠操控多台电脑Mouse without Borders
  13. html判断闰年,javascript怎么判断是否闰年?
  14. mysql既有整数又有小树字段类型,事业单位招考计算机专业知识试题
  15. 各种翻车问题——最长公共前缀
  16. 程序员励志视频_5个最适合程序员的励志视频
  17. 批量生成独一无二的NFT猫猫图,这项目王多鱼会投吗?
  18. 转行程序员需要做好哪些准备?只有这种人能成功转行ǃ
  19. 2022电大国家开放大学网上形考任务-桥梁工程技术非免费(非答案)
  20. java 1.7.0 51下载 64_JD7K_jd7k-7u51-windows-x64.exe V7.0u51 64位 官方版

热门文章

  1. 计算机网络基础课后习题,《计算机网络技术基础》课后习题参考答案
  2. 如何用PDF编辑器编辑、修改PDF文本和图片?
  3. 面试阿里巴巴有多难,看看面经你就知道了
  4. Canvas--文字
  5. 北京市211学校计算机专业,北京较容易考的2所211大学,王牌专业实力强悍,学生不愁就业...
  6. python eel vue_张莽子—
  7. 使用ASMap构建高密度遗传图谱
  8. 微信公众号Java开发记录(二)接收、回复消息
  9. MySQL比较两张表数据相同、不同结果记录
  10. matlab x的平均值符号怎么打出来,教你在Word中输入平均数的符号X上加一横(X拔)...