使用 C++ 语言给 STM32 编写一个 Adc 类
我使用的STM32芯片:STM32F103ZET6
我们使用的STM32库版本:V3.5.0
注意:
想学习本套 STM32 C++编程 的专栏是有点门槛的。你需要有一点点 STM32 基础 和 一点点 C++ 语言基础。
完整的STM32 C++ Adc类 的下载地址可以在本篇博客的最下面找到。
Adc.cpp
#include "Adc.h"
using namespace stm32f10x;
Adc::Adc(ADC_TypeDef* ADCx, uint8_t ADC_Channel):adcx(ADCx), channel(ADC_Channel){
initialize();
start();
}
void Adc::initialize(){
switch(channel){
case 0:
a = new Gpio(PA, 0, GPIO_Mode_AIN); delete a; break;
case 1:
a = new Gpio(PA, 1, GPIO_Mode_AIN); delete a; break;
case 2:
a = new Gpio(PA, 2, GPIO_Mode_AIN); delete a; break;
case 3:
a = new Gpio(PA, 3, GPIO_Mode_AIN); delete a; break;
case 4:
switch((uint32_t)adcx){
case (uint32_t)ADC1:
case (uint32_t)ADC2:
a = new Gpio(PA, 4, GPIO_Mode_AIN); delete a; break;
case (uint32_t)ADC3:
a = new Gpio(PF, 6, GPIO_Mode_AIN); delete a; break;
}
break;
case 5:
switch((uint32_t)adcx){

这篇博客介绍了如何使用C++为STM32F103ZET6芯片编写Adc类,适用于STM32库版本V3.5.0。内容包括Adc类的源码文件(Adc.cpp和Adc.h)以及如何在main.cpp中使用。博主提醒读者需要具备一定的STM32和C++基础知识。提供了Adc类的完整代码下载链接,分别在百度云和优快云上。
最低0.47元/天 解锁文章
392

被折叠的 条评论
为什么被折叠?



