博客
关于我
树莓派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/

    你可能感兴趣的文章
    Oil Deposits
    查看>>
    oj2894(贝尔曼福特模板)
    查看>>
    OJ4TH|Let's play a game
    查看>>
    OJ中处理超大数据的方法
    查看>>
    OJ中常见的一种presentation error解决方法
    查看>>
    OK335xS UART device registe hacking
    查看>>
    ok6410内存初始化
    查看>>
    OkDeepLink 使用教程
    查看>>
    OKHTTP
    查看>>
    Okhttp3中设置超时的方法
    查看>>
    Okhttp3添加拦截器后,报错,java.io.IOException: unexpected end of stream on okhttp3.Address
    查看>>
    okhttp3缓存
    查看>>
    Okhttp拦截器
    查看>>
    OkHttp源码解析(构建者模式、责任链模式、主线流程)
    查看>>
    OkHttp透明压缩,收获性能10倍,外加故障一枚
    查看>>
    OKR为什么到今天才突然火了?
    查看>>
    ol3 Demo2 ----地图搜索功能
    查看>>
    OLAP、OLTP的介绍和比较
    查看>>
    OLAP在大数据时代的挑战
    查看>>
    Vue.js 学习总结(12)—— 微前端实践思考与总结
    查看>>