|
编译软件:MDK5.38a,调试器使用板载的ST-linkV3 硬件介绍:5K的精密电阻 前言:在原项目基础在调试ADC检测功能。 ADC是指模/数转换器或者模拟/数字转换器。是指将连续变量的模拟信号转换为离散的数字信号的器件。简单来说就是将外部检测的电压信号通过内部ADC检测为数字信号。 这里我是用的是ADC1,引脚使用PA1引脚,cube软件配置过程如下:
基本的软件编写思路: l 首先开启PA口时钟和ADC1时钟,设置PA1为模拟输入模式,否则AD不能正常读数 l 程序开启之前复位ADC1,同时设置ADC1分频因子和ADC的位数等相关信息。 l 初始化ADC1参数,配置规则通道参数: l 开启软件转换: l 等待转换完成,读取ADC值。 其中初始化部分由CUBE软件自动生成,这里就不做过多的介绍,简单的介绍一下,在主程序中如何编写; 其中软件主要是使用复用printf输出调试信息,这里就不做介绍。 主程序软件代码如下: if (HAL_ADC_PollForConversion(&hadc1, 10) != HAL_OK) { Error_Handler(); }
// HAL_UART_Transmit(&huart2, (uint8_t *)&uhADCxConvertedData, 1, 0xFFFF); printf("\r\nADC CH1 uiADCVALUE: = %4d \t\r\n", uiADCVALUE);
这里我使用的是5K的电位器进行模拟ADC的电压输入变化,调节电位器的旋钮,可以看到单片机检测到的AD数据从小到达均匀变化。
|
配置工具STM32CubeMX2
从 CubeMX 到 MX2:这些关键变化必须知道
ST推出全新STM32CubeMX2,秒启动,告别卡顿和臃肿!
STM32CubeMX出2.0了!CubeMX2速览-教程版
新版STM32CubeMX2初体验,抛弃了JAVA方案,采用Electron,启动速度非常流畅,不再支持MDK5
实战经验 | LAT1585 STM32H5在使能TrustZone下实现High-Cycle的数据存储
详解STM32单片机的堆栈
我中奖啦,这敢想象吗😁😄😄
兔哥心中的ST中文论坛
实战经验 | 从CubeMX下载生成STM32元件封装库
微信公众号
手机版