本文共 1714 字,大约阅读时间需要 5 分钟。
一、实验目的
1.了解树莓派的基本构成 2.掌握 Raspbian 操作系统的基本使用方法 3.掌握 C++语言的开发方法 4.了解树莓派 GPIO 的结构和组成 5.掌握树莓派 GPIO 的数字量输出方法 6.了解 8 位 LED 模块的结构和控制方法 7.掌握利用 C++,进行跑马灯开发的方法二、实验原理
本实验以树莓派作为控制器,以C++作为开发工具,利用树莓派的 GPIO,控制 8 位LED 模块,完成跑马灯的控制实验。三、使用仪器、材料
1.树莓派 3B+开发板 2.8位LED流水灯模块 3.电源模块 4杜邦线 5.QTCreator四、实验步骤
1.首先熟悉树莓派开发板,熟悉GPIO模块的引脚分布,熟悉8位LED流水灯模块和电源等 2.理解GPIO模块的引脚、控制方法和相应的c++程序,并开始接线 3.让树莓派的GPIO8个wiringPi 编号数字引脚连接8个LED灯D0~D7 让GPIO的3.3V电源连接LED的VCC 让LED和树莓派共地,开始给电源模块通电 4.编写简单的控制灯亮的c++程序,检查LED流水灯模块通电情况和运行情况 5.查看实验效果:开始是8个灯从左往右依次进行亮-暗闪烁,然后8个灯同时进行亮-暗闪烁三次,无限循环跑马灯一直跑,实验结束时,终止程序即可 6.实验完成后,反向上述步骤断电、拆线并整理收拾好五、实验过程原始记录(计算机源代码)
#include "mainwindow.h"#include "ui_mainwindow.h"#include "wiringPi.h" //因为使用wiringPi编号对GPIO进行开发void GPIO_blink(){ wiringPiSetup(); int code[]={ 9,16,1,4,5,6,10,11};//定义8个GPIO的数字引脚编号,让这8个GPIO引脚控制8个LED灯 for(int i=0;i<8;i++) { pinMode(code[i],OUTPUT); } while(1) { for(int i=0;i<8;i++)//前两个for循环控制8个灯依次进行亮-暗闪烁 { digitalWrite(code[i],LOW); delay(200); } for(int i=0;i<8;i++) { digitalWrite(code[i],HIGH); delay(200); } for(int j=0;j<3;j++)//第三个for循环控制8个灯同时进行亮-暗闪烁三次 { for(int i=0;i<8;i++) { digitalWrite(code[i],LOW); } delay(200); for(int i=0;i<8;i++) { digitalWrite(code[i],HIGH); } delay(200); } }}MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow){ ui->setupUi(this); GPIO_blink();}MainWindow::~MainWindow(){ delete ui;}
实验结果
转载地址:http://zyed.baihongyu.com/