ADC测量实时电压值并通过串口显示总结

第三期的任务是ADC实验,测量实时电压值并通过串口显示。做出的现象是可以显示电压值,但数值误差很大,提供3.3V电压源,一端接电压源地线,另一端接PA5引脚,测量这两端电压值,测出的数据在1.800V左右波动,与3.3V相差很大。目前尚未找出原因。总之,关于ADC的知识了解得不够多,还需多多学习,深入了解和掌握。

以下是有关ADC和串口内容的笔记:

1·外设复用功能。

对于ADC和DAC,在GPIOx_MODER寄存器中将所需I/O配置为模拟通道;

对于其他外设,在GPIOx_MODER寄存器中将所需I/O配置为复用功能。

2·处理器与外部设置通信。

并行通信;

串行通信:单工,半双工,全双工。

串行通信通信方式:

同步通信,带时钟同步信号传输。

异步通信,不带时钟同步信号传输。

3·常用的串口相关寄存器:USART_SR状态寄存器,USART_VR数据寄存器,USART_BRR波特率寄存器。

4·外部中断的一般配置步骤:

使能时钟;

初始化IO口为输入;

设置IO口与中断线的映射关系;

初始化线上中断,设置触发条件等;

配置中断分组NVIC,并使能中断;

编写中断服务函数;

清楚中断标志位。

5·GPIO

4种输入模式:输入浮空,输入上拉,输入下拉,模拟输入。

4种输出模式:开漏输出(只可输出强低电平,高电平得靠外部电阻拉高),开漏复用功能,推挽式输出(可以输出强高低电平,连接数字器件),推挽式复用功能。

6·中断优先级设置步骤:

系统运行后先设置中断优先级分组,整个系统执行过程中,只设置一次中断分组;

针对每个中断分组,设置对应的抢占优先级和响应优先级;

如需挂起/解挂,查看中断当前激活状态,分别调用相关函数即可。

7·STM32的串口通信接口:UART通用异步收发器,USART通用同步异步收发器。

8·上拉就是输入高电平,后接一个上拉电阻,起保护作用,即表示该端口在默认情况下输入为高电平。

9·串口设置

串口时钟使能,GPIO时钟使能;

设置引脚复用器映射;

GPIO初始化设置,要设置模式为复用功能;

串口参数初始化,设置波特率,字长,奇偶校验等参数;

开启中断并初始化NVIC,使能中断;

使能串口;

编写中断处理函数。

10·USB串口作用:可当串口使用,串口下载程序,USB供电。

11·NVIC提供中断控制器。

12·ADC:典型的模拟电子转换器将模拟信号转换为表示一定比例电压值的数字信号。

13·STM32通道组

规则通道组:相当于正常运行的程序,最多16个通道。

注入通道组:相当于中断,最多4个通道。

14·STM32F4的ADC各通道可以单次,连续,扫描或者间断模式执行。

单次转换:在其模式下,ADC执行一次转换。

连续转换:ADC结束一个转换后立即执行一个新的转换。

15·ADC1的通道5进行单次转化

开启PA口时钟和ADC1时钟,设置PA1为模拟输入;

复位ADC1,同时设置ADC1分频因子;

初始化ADC_CCR寄存器;

初始化ADC1参数,设置ADC1的工作模式以及规则系列的相关信息;

使能ADC;

配置规则通道参数;开启软件转换;

等待转换完成,读取ADC值。

16·ADC电源要求:2.4--3.6V

17·系统代码执行过程中,只设置一次中断优先级分组。

18·DMA直接存储器访问,其传输方式无需CPU直接控制传输,为CPU减负。

19·STM32F4最多有2个DMA控制器,2个DMA控制器总共有16个数据流,每个DMA控制器都用于管理一个或多个外设的存储器访问请求,每个数据流总共可以有多达8个通道请求,每个通道都有一个仲裁器,用于处理DMA请求间的优先级。

你可能感兴趣的:(总结)