11_树莓派_树莓派外设板_PWM_彩虹灯

目录

1.树莓派外设集成板总体介绍

[2.第二部分 PWM](#2.第二部分 PWM)

树莓派_树莓派外设板_PWM_RGB彩虹灯

3.代码及实现


1 .树莓派外设集成板总体介绍

1)前言:这是一块为了验证树莓派【兼容树莓派多个型号】的40pins的外设接口的外接板,告别复杂的面包板外设搭建。【欢迎各位交流,如果有好的思路,会在点赞评论中抽取免费赠送硬件平台

2)本系列将介绍所有外设的硬件接口构成和软件实现【包括原理图和代码实现】。

软件仓库:GitHub - ikuuil45/Linux_Wringpi_Example

3)硬件架构

4)板子全貌

背面:

右侧插针接口可以直接接到树莓派上

左侧是为板子上面的STM32把所有的引脚接口都预留了,板子本身还可以做一个STM32外设开放的最小系统板

正面:和树莓派的尺寸兼容,不会互相产生干涉

接好的塔板

5)外设板学习索引

第一部分:GPIO基础应用
GPIO入门

GPIO基本概念和用途

使用GPIO点亮LED

按键矩阵

设置按键矩阵

控制LED灯的闪烁

中断按键控制LED

第二部分:PWM调光技术
PWM

PWM基本原理

RGB LED的控制

第三部分:通信协议
串口通信

串口基础知识

树莓派与上位机的通信

I2C通信

I2C基础概念

使用I2C控制OLED显示器

通过I2C与MPU6050陀螺仪传感器通信

通过I2C与SHT30温度仪传感器通信

通过I2C与APDS-9960光敏传感器通信

I2C多设备通信

一主多从的I2C通信配置

同时控制多个I2C设备

SPI通信

SPI基础概念

通过SPI与STM32MCU进行通信

第四部分:综合项目
树莓派系统负载温度检测系统

检查树莓派的

实现智能灯光控制和传感器监测

与上位机进行串口通信实现远程控制

环境监测器

使用多个GPIO、PWM、I2C、SPI传感器进行数据采集(温湿度、姿态等)

数据显示在OLED屏幕上

将数据通过串口发送到上位机进行记录和分析

2. 第二部分 PWM

树莓派_树莓派外设板_PWM_RGB彩虹灯

我们使用这三个引脚来控制RGB三个引脚

RGB成色原理

RGB的PWM原理

3.代码及实现

代码

cpp 复制代码
#include <wiringPi.h>
#include <softPwm.h>

#define Red_Pin 21
#define Green_Pin 22
#define Blue_Pin 31

int colors[][3] = {
    {255, 0, 0},     // 红色
    {230, 20, 0},    // 橙色
    {255, 30, 0},    // 黄色
    {0, 255, 0},     // 绿色
    {0, 250, 154},   // 青色
    {0, 0, 255},     // 蓝色
    {139, 0, 139}    // 紫色
};

void setup() {
    wiringPiSetup();
    softPwmCreate(Red_Pin, 0, 255);
    softPwmCreate(Green_Pin, 0, 255);
    softPwmCreate(Blue_Pin, 0, 255); 
}

void loop() {
    int numColors = sizeof(colors) / sizeof(colors[0]);
    for (int i=0; i < numColors; i++) {
        softPwmWrite(Red_Pin, colors[i][0]);
        softPwmWrite(Green_Pin, colors[i][1]);
        softPwmWrite(Blue_Pin, colors[i][2]);
        delay(1000);
    }
}

int main() {
    setup();
    while(1) {
        loop();
    }
    return 0;
}

流程图

效果

相关推荐
智商偏低4 小时前
单片机之helloworld
单片机·嵌入式硬件
青牛科技-Allen5 小时前
GC3910S:一款高性能双通道直流电机驱动芯片
stm32·单片机·嵌入式硬件·机器人·医疗器械·水泵、
森焱森7 小时前
无人机三轴稳定控制(2)____根据目标俯仰角,实现俯仰稳定化控制,计算出升降舵输出
c语言·单片机·算法·架构·无人机
白鱼不小白7 小时前
stm32 USART串口协议与外设(程序)——江协教程踩坑经验分享
stm32·单片机·嵌入式硬件
S,D8 小时前
MCU引脚的漏电流、灌电流、拉电流区别是什么
驱动开发·stm32·单片机·嵌入式硬件·mcu·物联网·硬件工程
芯岭技术11 小时前
PY32F002A单片机 低成本控制器解决方案,提供多种封装
单片机·嵌入式硬件
youmdt11 小时前
Arduino IDE ESP8266连接0.96寸SSD1306 IIC单色屏显示北京时间
单片机·嵌入式硬件
嘿·嘘11 小时前
第七章 STM32内部FLASH读写
stm32·单片机·嵌入式硬件
Meraki.Zhang11 小时前
【STM32实践篇】:I2C驱动编写
stm32·单片机·iic·驱动·i2c
几个几个n14 小时前
STM32-第二节-GPIO输入(按键,传感器)
单片机·嵌入式硬件