博客
关于我
树莓派c++实验一:跑马灯控制实验
阅读量:147 次
发布时间:2019-02-28

本文共 1520 字,大约阅读时间需要 5 分钟。

树莓派跑马灯开发实验报告

实验目的

  • 了解树莓派的基本构成
  • 掌握Raspbian操作系统的基本使用方法
  • 掌握C++语言的开发方法
  • 了解树莓派GPIO的结构和组成
  • 掌握树莓派GPIO的数字量输出方法
  • 了解8位LED模块的结构和控制方法
  • 掌握利用C++进行跑马灯开发的方法
  • 实验原理本实验以树莓派作为控制器,以C++作为开发工具,利用树莓派的GPIO控制8位LED模块,完成跑马灯的控制实验。

    使用仪器、材料

  • 树莓派3B+开发板
  • 8位LED流水灯模块
  • 电源模块
  • 杜邦线
  • QTCreator
  • 实验步骤

  • 熟悉树莓派开发板,熟悉GPIO模块的引脚分布,熟悉8位LED流水灯模块和电源等
  • 理解GPIO模块的引脚、控制方法和相应的C++程序,并开始接线
  • 让树莓派的GPIO8个wiringPi编号数字引脚连接8个LED灯D0~D7
  • 让GPIO的3.3V电源连接LED的VCC
  • 让LED和树莓派共地,开始给电源模块通电
  • 编写简单的控制灯亮的C++程序,检查LED流水灯模块通电情况和运行情况
  • 查看实验效果:开始是8个灯从左往右依次进行亮-暗闪烁,然后8个灯同时进行亮-暗闪烁三次,无限循环跑马灯一直跑,实验结束时,终止程序即可
  • 实验完成后,反向上述步骤判断电、拆线并整理收拾好
  • 实验过程记录

    #include "mainwindow.h"#include "ui_mainwindow.h"#include "wiringPi.h"void GPIO_blink() {    wiringPiSetup();    int code[] = {9, 16, 1, 4, 5, 6, 10, 11};    for (int i = 0; i < 8; i++) {        pinMode(code[i], OUTPUT);    }    while (1) {        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);        }        for (int j = 0; j < 3; j++) {            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();}

    实验结果实验开始时,8个LED灯从左往右依次进行亮-暗闪烁,然后8个灯同时进行亮-暗闪烁三次,之后无限循环跑马灯一直运行。

    转载地址:http://zyed.baihongyu.com/

    你可能感兴趣的文章
    No module named ‘MySQLdb‘错误解决No module named ‘MySQLdb‘错误解决
    查看>>
    No new migrations found. Your system is up-to-date.
    查看>>
    No qualifying bean of type XXX found for dependency XXX.
    查看>>
    No resource identifier found for attribute 'srcCompat' in package的解决办法
    查看>>
    no session found for current thread
    查看>>
    No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux-android
    查看>>
    NO.23 ZenTaoPHP目录结构
    查看>>
    NO32 网络层次及OSI7层模型--TCP三次握手四次断开--子网划分
    查看>>
    NoClassDefFoundError: org/springframework/boot/context/properties/ConfigurationBeanFactoryMetadata
    查看>>
    Node JS: < 一> 初识Node JS
    查看>>
    Node-RED中使用JSON数据建立web网站
    查看>>
    Node-RED中使用json节点解析JSON数据
    查看>>
    Node-RED中使用node-random节点来实现随机数在折线图中显示
    查看>>
    Node-RED中使用node-red-browser-utils节点实现选择Windows操作系统中的文件并实现图片预览
    查看>>
    Node-RED中使用node-red-contrib-image-output节点实现图片预览
    查看>>
    Node-RED中使用node-red-node-ui-iframe节点实现内嵌iframe访问其他网站的效果
    查看>>
    Node-RED中使用Notification元件显示警告讯息框(温度过高提示)
    查看>>
    Node-RED中实现HTML表单提交和获取提交的内容
    查看>>
    Node-RED中通过node-red-ui-webcam节点实现访问摄像头并截取照片预览
    查看>>
    Node.js 8 中的 util.promisify的详解
    查看>>