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

    你可能感兴趣的文章
    SpringBoot中集成screw(螺丝钉)实现数据库表结构文档生成
    查看>>
    PROFINET 模拟器使用教程
    查看>>
    Program type already present: android.support.v4.widget.EdgeEffectCompat
    查看>>
    PyTorch中文版官方教程来啦(附下载)
    查看>>
    Progress Kemp LoadMaster 远程命令执行漏洞复现(CVE-2024-1212)
    查看>>
    Project configuration is not up-to-date with pom.xml. Run Maven->Update Project
    查看>>
    Project Euler 15 Lattice paths
    查看>>
    Project Euler 48 Self powers( 大数求余 )
    查看>>
    Project Euler Problem 12: Highly divisible triangular number
    查看>>
    ProjectEuler 2
    查看>>
    projection介绍及EPSG:4326和EPSG:3857的投射转换
    查看>>
    project打开文件时,显示无法识别此文件格式?
    查看>>
    Prometheus + Grafana on Kubernetes部署
    查看>>
    prometheus + grafana进行服务器资源监控
    查看>>
    Prometheus Alertmanager 告警配置详解
    查看>>
    Prometheus Grafana 展示平台
    查看>>
    Prometheus pushgateway使用详解
    查看>>
    Prometheus 云原生 - Prometheus 数据模型、Metrics 指标类型、Exporter 相关
    查看>>
    Prometheus 云原生 - 基于 file_sd、http_sd 实现 Service Discovery
    查看>>
    Prometheus 云原生 - 微服务监控报警系统 (Promethus、Grafana、Node_Exporter)部署、简单使用
    查看>>