03 - Arduino板的模拟信号的输出/输入

03-1 模拟输出管脚


(一)模拟信号的形式

周围世界中的声音、色彩、温度等都是一模拟信号存在,信号连续变化,可以有多个数值,如0.3,2.6等。

数字信号只有5V和0V两种状态。

在这里插入图片描述

(二)PWM(Puslse Width Modulation,脉冲宽度调制)—将数字信号转换成模拟信号

PWM信号通过调整一个信号周期中,高电位持续的时间,所占的比例,模拟出介于0V~5V之间的电压信号,这个比例称为占空比。
下图中高电位占50%的PWM信号,相当于5V X 50% = 2.5V的电压值的模拟信号。占空比越大,等效的平均模拟电压值就越大,反之,越小。
在这里插入图片描述

(三)模拟信号PWM输出函数:

analogWrite(管脚编号,模拟数值)

*analogWrite()是 Arduino 中的一个函数,用于向一个支持脉宽调制(PWM)的引脚输出模拟值(实际上是一个特定占空比的方波)。

语法为:analogWrite(pin, value)

  • pin:要进行模拟输出的引脚编号。
  • value:一个介于 0 和 255 之间的值,表示输出的占空比。0 表示完全关闭(低电平),255 表示完全打开(高电平),中间的值表示不同的占空比,从而产生不同程度的模拟输出。

例如,analogWrite(9, 128)将在引脚 9 上输出占空比为 50%左右的方波,可用于控制 LED 的亮度或电机的速度等。*


03-2 实验:PWM改变LED灯亮度


(一)接线图

在这里插入图片描述

(二)程序

仿真图

发光二极管会逐渐点亮逐渐熄灭


控制代码

void setup() {
   
   
    pinMode(3, OUTPUT);
}
void loop() {
   
   
  //第1个循环
  for (int i = 0; i <= 256; i++) {
   
   
    analogWrite(3, i);
    delay(5);
  }
  //第2个循环
  for (int i = 256; i > 0; i--) {
   
   
    analogWrite(3, i - 1)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值