- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验四 ADC实验
实验四 ADC实验
姓名:刘乾坤 学号:20110661104 班级:11电子科学与技术
实验目的:
1.了解STM32的基本工作原理?;
2.?通过实践来加深对ARM芯片级程序开发的理解;?
3.利用STM32的ADC1通道0来采样外部电压值值,并在TFTLCD模块上显示出来;?
实验原理:
STM32 ADC简介
STM32 拥有 1~3 个 ADC,这些 ADC 可以独立使用,也可以使用双重模式(提高采样率)。STM32 的 ADC 是 12 位逐次逼近型的模拟数字转换器。它有 18 个通道,可测量16个外部和2个内部信号源。各通道的 A/D 转换可以单次、连续、扫描或间断模式执行。ADC 的结果可以左对齐或右对齐方式存储在 16 位数据寄存器中。模拟看门狗特性允许应用程序检测输入电压是否超出用户定义的高/低阀值。
STM32F103系列最少都拥有2个ADC, 我们选择的 STM32F103RBT6 也包含有 2 个 ADC。STM32 的 ADC 最大的转换速率为 1Mhz,也就是转换时间为 1us(在 ADCCLK=14M,采样周期为 1.5个ADC 时钟下得到),不要让 ADC 的时钟超过 14M,否则将导致结果准确度下降。STM32 将 ADC 的转换分为 2 个通道组:规则通道组和注入通道组。规则通道相当于你运行的程序,而注入通道呢,就相当于中断。在你程序正常执行的时候,中断是可以打断你的执行的。同这个类似,注入通道的转换可以打断规则通道的转换, 在注入通道被转换完成之后,规则通道才得以继续转换。
ADC 控制寄存器(ADC_CR1 和 ADC_CR2)
寄存器 ADC_CR1 各位描述
ADC_CR1[19:16]用于设置 ADC 的操作模式,详细的对应关系如下:
ADC 操作模式
寄存器 ADC_CR2 各位描述
EXTSEL[2:0]用于选择启动规则转换组转换的外部事件,详细的设置关系如下:
ADC 采样事件寄存器(ADC_SMPR1 和 ADC_SMPR2)
寄存器 ADC_SMPR1 各位描述
寄存器 ADC_SMPR2 各位描述
ADC 规则序列寄存器(ADC_SQR1~3)
ADC 规则数据寄存器(ADC_DR)
寄存器 ADC_ JDRx 各位描述
ADC 寄存器为 ADC 状态寄存器(ADC_SR)
使用 ADC1的通道 0 来进行 AD 转换,其详细设置步骤如下:
1 )开启 PA 口时钟,设置 PA0为模拟输入。
STM32F103RBT6 的 ADC 通道 0 在 PA0 上,所以,我们先要使能 PORTA 的时钟,然后设置 PA0 为模拟输入。
2 )使能 ADC1 时钟,并设置分频因子。
要使用 ADC1,第一步就是要使能 ADC1 的时钟,在使能完时钟之后,进行一次 ADC1 的复位。接着我们就可以通过 RCC_CFGR 设置 ADC1 的分频因子。分频因子要确保 ADC1 的时钟(ADCCLK)不要超过 14Mhz。
3 )设置 ADC1 的工作模式。
在设置完分频因子之后,我们就可以开始 ADC1 的模式配置了,设置单次转换模式、触发方式选择、数据对齐方式等都在这一步实现。
4 )设置 ADC1 规则序列的相关信息。
接下来我们要设置规则序列的相关信息,我们这里只有一个通道,并且是单次转换的,所以设置规则序列中通道数为 1,然后设置通道 0 的采样周期。
5 )开启 AD 转换器,并校准。
在设置完了以上信息后,我们就开启 AD 转换器,执行复位校准和 AD 校准,注意这两步是必须的!不校准将导致结果很不准确。
6 )读取 ADC 值。
在上面的校准完成之后,ADC 就算准备好了。接下来我们要做的就是设置规则序列 0 里面的通道,然后启动 ADC 转换。在转换结束后,读取 ADC1_DR 里面的值就是了。通过以上几个步骤的设置,我们就可以正常的使用 STM32 的 ADC1 来执行 AD 转换操作了
三:实验电路图:
本次实验电路连接图如下:
四:程序流程图:
五、实验现象及分析:
实验现象:
上电进行调节电位器,观察LCD显示的输入值的大小变化,从0V--3.3V之间数值的变化,可以自由的进行输入电压的调节。
现象分析:
实验现象与程序设置的预期效果基本一致,达到实验的目的,ADC端口的配置正确,可以正常的采集到输入的电压的变化并且可以显示出来,硬件电路可以正
您可能关注的文档
最近下载
- 对光伏发电项目的合理化建议.docx VIP
- 工程管理导论课件P1038.pptx
- 大学军事理论课教程第四章现代战争第三节 机械化战争.ppt
- ppt8 曹一鸣——面向核心素养发展的评学教一体化研究.pdf VIP
- 【百家讲坛】大隋风云下部(十三)朝廷五贵.docx VIP
- 中国特色社会主义理论体系形成发展过程课件.pptx VIP
- 2025年度临港新片区文员招聘43人笔试模拟试题及答案解析.docx VIP
- 人教部编版四年级上语文5《一个豆荚里的五粒豆》优秀课堂PPT教学课件.pptx VIP
- 个人简历表格空白word.doc VIP
- 全新版大学高阶英语:综合教程 第4册 U6习题答案.docx VIP
原创力文档


文档评论(0)