小编lft*_*lft的帖子

STM32上的ADC单次转换

我正在研究STM32 F103x上的ADC编程,从最简单的情况开始 - 单次转换.测量内部温度传感器(连接到ADC1)的值,并使用USART将其发送到COM端口.目标似乎很清楚但是当我尝试将源代码下载到闪存时,它不会向COM端口发送任何数据.USART功能运行良好,我猜这些问题来自ADC配置部分,因为我正处于等待完全转换的循环中:

while(ADC_GetFlagStatus(ADC1, ADC_FLAG_EOC) == RESET); //Wail for conversion complete
Run Code Online (Sandbox Code Playgroud)

这是我到目前为止的源代码.

/* Includes ------------------------------------------------------------*/
#include "stm32f10x.h"
#include <stdio.h>

    uint16_t AD_value;
    const uint16_t V25 = 1750; //when V25=1.41V
    const uint16_t Avg_Slope = 5; //when avg_slc
    uint16_t TemperatureC;

//Define output device
PUTCHAR_PROTOTYPE
{
    USART_SendData(USART1, (uint8_t) ch);
    while (USART_GetFlagStatus(USART1, USART_FLAG_TC) == RESET)
    {}
    return ch;
}

void Usart1Init(void)
{
    GPIO_InitTypeDef GPIO_InitStructure;
    USART_InitTypeDef USART_InitStructure;

    RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1 | RCC_APB2Periph_GPIOA | RCC_APB2Periph_AFIO, ENABLE);

    /* COnfig PA9 for USART Tx as alternate function push-pull */
    GPIO_InitStructure.GPIO_Pin …
Run Code Online (Sandbox Code Playgroud)

c serial-port stm32 adc usart

4
推荐指数
2
解决办法
2万
查看次数

标签 统计

adc ×1

c ×1

serial-port ×1

stm32 ×1

usart ×1