STM32-快速上手ADC

STM32的ADC模块的架构分析在这里,这里只记怎么用。

目录

1. ADC端口映射

2. 配置

2.1 配置步骤

2.2 配置函数

3.使用

4.源码


1. ADC端口映射

ADC肯定要外部输入信号的,通过IO口进行采集,IO与ADC通道的对应关系如下:

2. 配置

2.1 配置步骤

  • 开启需要用到的ADCx时钟和对应的IO时钟
    • ADC模块和GPIO模块都在APB2时钟下 
    • void RCC_APB2PeriphClockCmd(uint32_t RCC_APB2Periph, FunctionalState NewState);
  • 配置ADCx预分频器分频系数
    • void RCC_ADCCLKConfig(uint32_t RCC_PCLK2);
  • 配置需要用到的对应IO设置为模拟输入
    • void GPIO_Init(GPIO_TypeDef* GPIOx, GPIO_InitTypeDef* GPIO_InitStruct);
  • 复位ADCx寄存器
    • void ADC_DeInit(ADC_TypeDef* ADCx);
  • 配置ADCx参数
    • void ADC_Init(ADC_TypeDef* ADCx, ADC_InitTypeDef* ADC_InitStruct); 
typedef struct
{
  uint32_t ADC_Mode;                      /*!< Configures the ADC to operate in independent or
                                               dual mode. 
                                               This parameter can be a value of @ref ADC_mode */

  FunctionalState ADC_ScanConvMode;       /*!< Specifies whether the conversion is performed in
                                               Scan (multichannels) or Single (one channel) mode.
                                               This parameter can be set to ENABLE or DISABLE */

  FunctionalState ADC_ContinuousConvMode; /*!< Specifies whether the conversion is performed in
                                               Continuous or Single mode.
                                               This parameter can be set to ENABLE or DISABLE. */

  uint32_t ADC_ExternalTrigConv;          /*!< Defines the external trigger used to start the analog
                                               to digital conversion of regular channels. This parameter
                                               can be a value of @ref ADC_external_trigger_sources_for_regular_channels_conversion */

  uint32_t ADC_DataAlign;                 /*!< Specifies whether the ADC data alignment is left or right.
                                               This parameter can be a value of @ref ADC_data_align */

  uint8_t ADC_NbrOfChannel;               /*!< Spec
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 野火是一家致力于开发和销售嵌入式开发板的公司,他们的产品系列中包括了很多基于STM32-F103芯片的开发板。这款芯片是意法半导体推出的一款低功耗、高性能的32位微控制器,广泛应用于工业控制、汽车电子、消费电子等领域。 野火的开发板采用了精美的设计和丰富的功能,使得学习和开发STM32-F103变得更加简单和有趣。它们不仅提供了各种接口和外设,如GPIO、串口、I2C、SPI等,还具备了丰富的软件资源,包括示例代码、库函数和开发工具等。这些资源可以帮助开发者快速上手,并且能够实现各种功能,如LED闪烁、蜂鸣器发声、温度传感器读取等。 野火开发板的另一个亮点是它们的零死角设计。无论是电源、传感器、扩展接口还是USB接口,野火都考虑到了用户的需求,并且尽可能地做到了完善和完整。这样一来,用户就可以在不受限制的情况下进行各种创意的嵌入式开发,不再为接口不够或功能不完善而烦恼。 与此同时,野火开发板也提供了丰富的学习资源和教学视频,帮助初学者了解和掌握STM32-F103的基本原理和应用。无论是学生、工程师还是爱好者,都可以通过野火的开发板来深入了解嵌入式系统的开发和应用,进一步提升自己的技能和能力。 总之,野火的开发板可以说是零死角玩转STM32-F103的理想选择。它们的丰富功能、完善的接口和外设,以及全面的学习资源,都使得开发者能够轻松地进行嵌入式系统的开发和应用。无论是初学者还是专业人士,都能够通过野火的产品来探索和实践嵌入式技术的魅力。 ### 回答2: 野火 零死角玩转STM32-F103是一本关于如何全面掌握野火STM32-F103开发板的书籍。 首先,野火STM32-F103是一款功能强大的开发板,搭载了STM32F103C8T6的微控制器芯片。该开发板具有丰富的外设资源,如LED指示灯、按键、蜂鸣器、ADC、串口等,可用于各种实际应用。在这本书中,通过详细的实例和案例,作者教读者如何充分利用这些外设实现各种功能。 此外,书中还详细介绍了STM32开发环境的搭建和使用。从软件安装到简单的“Hello World”程序的编写,再到更复杂的项目开发,都有详细的步骤和指导。读者可以根据书中的指导逐步学习和掌握STM32的开发工具和编程语言。 在书的后面章节中,还介绍了一些高级应用,如通过外部中断、定时器和PWM等方式控制外设,以及使用WiFi、蓝牙等无线通信模块进行远程控制等。这些内容可以帮助读者更加深入地理解STM32的应用场景,并扩展自己的知识和技能。 总之,野火 零死角玩转STM32-F103是一本全面而实用的书籍,适合初学者和有一定基础的读者。通过学习这本书,读者可以轻松地掌握STM32的开发技术,将其应用于自己的项目中。无论是做电子制作、嵌入式系统设计还是其他领域,这本书都会成为读者的得力助手。 ### 回答3: 野火是一款基于STM32-F103开发板的强大工具,它集成了丰富的硬件资源和强大的软件支持,让开发者能够充分发挥STM32-F103的潜力。野火开发板具有零死角的设计,使得开发者可以以各种方式玩转STM32-F103。 首先,野火开发板提供了丰富的外设接口,包括GPIO、UART、SPI、I2C、ADC等等,这些接口可以连接各种外部设备,如传感器、显示屏、通信模块等。同时,野火还配备了大容量存储器,包括FLASH和RAM,可以存储大量的代码和数据。 其次,野火开发板支持多种开发环境和编程语言,包括keil、IAR、STM32CubeMX等,可以满足不同开发者的需求。野火还提供了丰富的软件库和示例代码,开发者可以轻松地使用这些库和代码进行开发,加快开发进度。 最重要的是,野火具有强大的性能和稳定性,能够在各种应用场景下稳定运行。它采用了STM32-F103芯片,配备了高速处理器和丰富的内存,能够处理各种复杂的任务。此外,野火还支持多种调试功能,如JTAG、SWD和串口调试,方便开发者进行调试和测试。 总而言之,野火开发板零死角玩转STM32-F103,不仅提供了丰富的硬件资源和软件支持,还具有强大的性能和稳定性,能够满足开发者的各种需求。无论是初学者还是有经验的开发者,都可以通过野火开发板来开发出高质量的STM32-F103应用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值