编程STM32
#include <LiquidCrystal.h> // LCD库
//声明LCD连接到STM32的哪个引脚
const int rs = PB11, en = PB10, d4 = PB0, d5 = PB1, d6 = PC13, d7 = PC14;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7); //初始化 LCD
const int analoginput = PA4; //电位器输入
const int led = PA9; // LED PWM输出
const int fan = PA8; // 风扇 输出
void setup()
{
lcd.begin(16,2); //16*2LCD
lcd.clear(); //LCD清屏
lcd.setCursor(0,0); //将光标设置在第0行和第0列
lcd.print("Hello World");
lcd.setCursor(0,1); //设置光标在第二行第一列
lcd.print("PWM USING STM32"); //LCD显示 PWM using STM32
delay(2000); // 延时2秒
lcd.clear(); // LCD清屏
pinMode(analoginput, INPUT); // 设置为模拟输入
pinMode(led, PWM); // 设置为PWM输出 控制led
pinMode(fan, PWM); // 设置为PWM输出 控制风扇
}
void loop()
{
int valueadc = analogRead(analoginput); //从引脚 PA4 读取 ADC 值 (电位 器值)
int result = map(valueadc, 0, 4095, 0, 65535); //把valueadc 从0-4095映射转为0-65535映射
并存储到result中
pwmWrite(led, result); //以PWM波控制LED
pwmWrite(fan, result);
lcd.setCursor(0,0); //设置光标位置
lcd.print("ADC value= "); // LCD 显示ADC value=
lcd.print(valueadc); //显示电位器ADC值
lcd.setCursor(0,1); //设置光标位置
lcd.print("Output = "); //LCD 显示Output =
lcd.print(result); //显示电位器映射0-65535的值
}
|
———————————————— 版权声明:本文为CSDN博主「大华工控上位机」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/m0_67034740/article/details/123650613