【雕爷学编程】Arduino动手做(22)——8X8 LED点阵MAX7219屏2

news2024/12/29 10:33:39

37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手试试做实验,不管成功与否,都会记录下来—小小的进步或是搞不定的问题,希望能够抛砖引玉。

【Arduino】108种传感器模块系列实验(资料+代码+图形+仿真)
实验二十二:MAX7219点阵显示模块(8X8 LED共阴屏幕)

在这里插入图片描述
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

实验二十二:MAX7219点阵显示模块(8X8 LED共阴屏幕)

Arduino实验开源代码

/*

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

实验二十二:MAX7219点阵显示模块(8X8 LED共阴)

1、下载安装库:

GitHub | riyas-org/max7219  https://github.com/riyas-org/max7219

2、项目:应用多种函数,显示字母,笑脸等图案以及左向移动

3、连线:

VCC  →  5V

GND  →  GND

DIN  →  D11

CS  →  D12

CLK  →  D13

*/

#include <MaxMatrix.h>

int DIN = 11;  // DIN pin of MAX7219 module

int CLK = 13;  // CLK pin of MAX7219 module

int CS  = 12;  // CS pin of MAX7219 module

int maxInUse = 1;

MaxMatrix m(DIN, CS, CLK, maxInUse);

char A[] = {4, 8,

        B01111110,

        B00010001,

        B00010001,

        B01111110,

        };

char B[] = {4, 8,

        B01111111,

        B01001001,

        B01001001,

        B00110110,

        };

char smile01[] = {8, 8,

            B00111100,

            B01000010,

            B10010101,

            B10100001,

            B10100001,

            B10010101,

            B01000010,

            B00111100

            };

char smile02[] = {8, 8,

            B00111100,

            B01000010,

            B10010101,

            B10010001,

            B10010001,

            B10010101,

            B01000010,

            B00111100

            };

char smile03[] = {8, 8,

            B00111100,

            B01000010,

            B10100101,

            B10010001,

            B10010001,

            B10100101,

            B01000010,

            B00111100

            };

void setup() {

  m.init(); // MAX7219 initialization

  m.setIntensity(8); // initial led matrix intensity, 0-15

}

void loop() {

  // Seting the LEDs On or Off at x,y or row,column position

  m.setDot(6,2,true);

  delay(1000);

  m.setDot(6,3,true);

  delay(1000);

  m.clear(); // Clears the display

  for (int i=0; i<8; i++){

  m.setDot(i,i,true);

  delay(300);

  }

  m.clear();

  // Displaying the character at x,y (upper left corner of the character)  

  m.writeSprite(2, 0, A);

  delay(1000);

  m.writeSprite(2, 0, B);

  delay(1000);

  m.writeSprite(0, 0, smile01);

  delay(1000);

  

  m.writeSprite(0, 0, smile02);

  delay(1000);

  

  m.writeSprite(0, 0, smile03);

  delay(1000);

  

  for (int i=0; i<8; i++){

  m.shiftLeft(false,false);

  delay(300);

  }

  m.clear();

}

在这里插入图片描述

/*

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

实验二十二:MAX7219点阵显示模块(8X8 LED共阴)

1、下载库 https://www.pjrc.com/teensy/arduino_libraries/Matrix_Sprite.zip

2、项目:快速扫描所有64个点(国外网站上的示例)

3、连线:

VCC  →  5V

GND  →  GND

DIN 接 D11 (MOSI)

CS  接 D10 (SS)

CLK 接 D13 (SCK)

*/



#include <Sprite.h>  // Sprite before Matrix

#include <Matrix.h>

const int numChips = 1;

//DIN, CLK, CS, #chips

Matrix myLeds = Matrix(11, 13, 10, numChips);



void setup() {

  myLeds.clear();

}



void loop() {

  byte x, y;

  // light one LED at a time, scanning left to right

  // and top to bottom... useful for testing the matrix

  for (y=0; y<8; y++) {

  for (x=0; x<(numChips * 8); x++) {

    myLeds.write(x, y, HIGH);

    delay(20);

    myLeds.write(x, y, LOW);

  }

  }

}

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
实验开源图形编程(Mind+、编玩边学)
编玩边学平台

在这里插入图片描述

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验二十二:MAX7219点阵显示模块(8X8 LED共阴)
1、下载库 https://www.pjrc.com/teensy/arduino_libraries/Matrix_Sprite.zip
2、项目之一:快速扫描所有64个点阵(对于测试矩阵很有用)

/*

 【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

 实验二十二:MAX7219点阵显示模块(8X8 LED共阴)

 1、下载库 https://www.pjrc.com/teensy/arduino_libraries/Matrix_Sprite.zip

 2、项目之一:快速扫描所有64个点阵(对于测试矩阵很有用)

 3、连线:

 MAX7219    UNO

 VCC →→→→→ 5V

 GND →→→→→ GND

 DIN →→→→→ D12 (MOSI)

 CS  →→→→→ D11 (SS)

 CLK →→→→→ D10 (SCK)

*/

#include <Sprite.h> // Sprite before Matrix

#include <Matrix.h>

const int numChips = 1;

//DIN, CLK, CS, #chips

Matrix myLeds = Matrix(12, 10, 11, numChips);

void setup() {

 myLeds.clear();

}

void loop() {

 byte x, y;

 // 一次点亮一个 LED,从左到右扫描

 // 从上到下......对于测试矩阵很有用

 for (y = 0; y < 8; y++) {

  for (x = 0; x < (numChips * 8); x++) {

   myLeds.write(x, y, HIGH);

   delay(40);

   myLeds.write(x, y, LOW);

  }

 }

}

Arduino实验场景图

在这里插入图片描述
下载相关驱动库
1、 https://github.com/riyas-org/max7219
2、 https://github.com/wayoda/LedControl

3、 https://www.pjrc.com/teensy/arduino_libraries/Matrix_Sprite.zip
4、 Https://github.com/shaai/Arduino_LED_matrix_sketch/archive/master.zip

在这里插入图片描述

最简单的8*8点阵屏的程序

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

实验二十二:MAX7219点阵显示模块(8X8 LED共阴)

项目之二:在屏幕上闪烁欢迎面孔(间隔1秒)

/*
  【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  实验二十二:MAX7219点阵显示模块(8X8 LED共阴)
  项目之二:在屏幕上闪烁欢迎面孔(间隔1秒)
  接脚连线:
  MAX7219       UNO
  VCC  →→→→→ 5V
  GND  →→→→→ GND
  DIN  →→→→→ D12(数据)
  CS   →→→→→ D11(负载)
  CLK  →→→→→ D10(时钟)
*/

#include <Sprite.h>
#include <Matrix.h>
Matrix myMatrix = Matrix(12, 10, 11);// Matrix(DIN, CLK, CS)

void setup(){
}

void loop(){
  myMatrix.clear(); // 显示清屏
  delay(1000);
  myMatrix.write(2, 5, HIGH); // 打开相关位置的像素(点阵)
  myMatrix.write(3, 2, HIGH);
  myMatrix.write(3, 6, HIGH);
  myMatrix.write(4, 6, HIGH);
  myMatrix.write(5, 6, HIGH);
  myMatrix.write(6, 2, HIGH);
  myMatrix.write(6, 6, HIGH);
  myMatrix.write(7, 5, HIGH);
  delay(1000);
}

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/766933.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

AI图像生成无需代码连接集简云数据表的方法

1 场景描述 人工智能的出现&#xff0c;各个领域都开始尝试将AI作为提高工作效率的必备工具。除了AI对话等&#xff0c;越来越多的AI图像生成工具也出现在市场上。这些AI图像生成工具可以自动创建惊人的图像、艺术作品和设计&#xff0c;从而帮助设计师和创意人员更快速地实现其…

下个月要备多少货?伙伴云零代码进销存系统让您一目了然

大量企业的商业模式是销售实体商品&#xff0c;他们需要进销存系统来帮助企业管理好采购、销售、仓储的业务流程&#xff0c;从而更高效稳定的获得利润&#xff0c;因此进销存是企业的核心业务场景。来看看伙伴云零代码进销存系统如何精准计算进货出货数量&#xff0c;让中小企…

unable to get local issuer certificate (_ssl.c:992)‘)]

操作系统mac os python 版本 python3.11 import edge_tts import asyncio TEXT "how are you"print(TEXT) voice zh-CN-YunxiNeural output 4.mp3 rate -4% volume 0% async def my_function():tts edge_tts.Communicate(text TEXT,voice voice,rate rate…

上海汽配IPO上会在即:由镇政府控股,募资还要偿还银行贷款?

近日&#xff0c;上海证券交易所披露的信息显示&#xff0c;上海汽车空调配件股份有限公司&#xff08;以下简称“上海汽配”&#xff09;将于7月21日接受上市委审议。据贝多财经了解&#xff0c;上海汽配已于7月13日更新了招股书&#xff08;上会稿&#xff09;。 本次冲刺IPO…

学Python编程为什么会对学好数学有帮助呢?

Python编程和数学有什么关系呢&#xff1f;Python的起源是怎样的呢&#xff1f; 我们先来简单认识一下Python&#xff0c;和Python交个朋友。 Python的全拼是P—Y—T—H—O—N&#xff0c;发音是Python&#xff0c;汉语解释是蟒蛇的意思。 我们再来看Python的图标&#xff0c…

STM32实现MLX90614非接触测温串口显示(标准库与HAL库实现)

目录 模块选择 编程环境 MLX90614基本原理 通信协议&#xff08;SMBus通信&#xff0c;类IIC通信&#xff09; 代码实现 STM32与模块之间接线表 1.标准库实现温度采集 2.HAL库实现温度采集 模块选择 STM32F103C8T6 MLX90614 非接触式红外测温传感器 编程环境 KEIL5&…

了解交换机接口的链路类型(access、trunk、hybrid)

上一个章节中讲到了vlan的作用及使用&#xff0c;这篇了解一下交换机接口的链路类型和什么情况下使用 vlan在数据包中是如何体现的&#xff0c;在上一篇的时候提到测试了一下&#xff0c;从PC1去访问PC4的时候&#xff0c;只从E0/0/2发送给了E0/0/3这是&#xff0c;因为两个接…

手把手GDB调试

确保你的程序有可调式的信息 使用gcc编译一个程序 ,带上一些额外的参数 -o0 -g-o0 &#xff1a;避免编译器优化&#xff0c;使用最低的优化等级&#xff0c;默认的编译选项 -g &#xff1a;生产调试信息 如果你已经有一个工程demo&#xff0c;使用cmake时注意使用Debug模式&…

Java使用poi-tl生成word文档添加超链接及添加多个超链接情况

首先是生成单个超链接情况&#xff0c;很简单 就是通过字符替换就行&#xff0c;但是替换的value格式是 TextRenderData data.put("attachment",Texts.of("文件名").link("http://wenjianlj文件路径.com").create()); 就是在替换的data&#…

spring复习:(39)注解方式的ProxyFactoryBean

一、定义接口 package cn.edu.tju.study.service;public interface MyService {void myMethod(); }二、定义实现类&#xff1a; package cn.edu.tju.study.service;public class MyServiceImpl implements MyService{Overridepublic void myMethod() {System.out.println(&qu…

认识一个失意的李白:如何制作一个人物生平二维码?

电影《长安三万里》的火爆&#xff0c;又一次唤醒了我们对大唐盛世的憧憬和向往。 飞流直下的瀑布、洒落床前的月光、花间独酌的美酒、胡天八月的大雪、越过青天的白鹭、长河孤烟的大漠、钟鼓馔玉的宴会……每每读起&#xff0c;那景象如在眼前。 对于一代又一代读着唐诗、听…

小程序一码跳多端的实现架构。。。

以常用的小程序&#xff0c;微信&#xff0c;支付宝为例&#xff0c; 现在要实现一个二维码&#xff0c;通过微信扫跳转微信小程序&#xff0c;通过支付包扫&#xff0c;跳转支付宝小程序&#xff0c;&#xff08;其他小程序也如此&#xff09; 实现思路&#xff0c;H5页面周转…

社区生鲜超市数字化经营怎么做?社区生鲜超市系统一览

社区生鲜超市是一种以货架自助的形式、结合现代超市经营理念&#xff0c;来售卖果蔬、肉类、水产、粮油、熟食等生鲜产品的一种零售形式&#xff0c;通常为小规模的连锁生鲜超市、专营店&#xff0c;主要服务于一个社区、街区等。目前&#xff0c;社区生鲜超市通常拥有较好的区…

【数据结构】二叉树详解(1)

⭐️ 前言 ✨ 二叉树的概念性质 ⭐️ 二叉树链式结构的实现 结构定义&#xff1a; #include <stdio.h> #include <stdlib.h> #include <assert.h>typedef int BinaryTreeDataType;typedef struct BinaryTreeNode {BinaryTreeDataType value;struct Binary…

如何克服Leetcode做题的困境

文章目录 如何克服Leetcode做题的困境问题背景克服困境的建议实践与理论结合切忌死记硬背分析解题思路不要过早看答案迭代式学习寻求帮助坚持与耐心查漏补缺 结论 如何克服Leetcode做题的困境 问题背景 明明自觉学会了不少知识&#xff0c;可真正开始做Leetcode题目时&#x…

用WooCommerce创建一个多用户商城系统和多供应商市场

线上市场是下一波数字化商务。2020 年&#xff0c;超过60% 的线上支出是通过数字市场发生的。人们喜欢从市场上购物&#xff0c;因为它们使购物变得容易。出于同样的原因&#xff0c;企业喜欢通过它们进行销售。通过多用户商城系统和多供应商WooCommerce商城设置&#xff0c;每…

Vue3结果(Result)

可自定义设置以下属性&#xff1a; 结果的状态&#xff0c;决定图标和颜色&#xff08;status&#xff09;&#xff0c;类型&#xff1a;‘success’|‘error’|‘info’|‘warn’|‘404’|‘403’|‘500’&#xff0c;默认&#xff1a;‘info’标题文字&#xff08;title&…

【机密计算-大厂有话说】IBM

什么是机密计算? 机密计算是云计算技术中的一种,通过 CPU 飞地(enclave,飞地可以理解成与世隔绝的世外桃源)隔离处理中的数据。飞地中的内容(处理中的数据)和处理这些数据用到的技术只能被授权的程序代码访问,对于云提供商以及任何人任何事都不可见也不知道。 随着公…

C# 深入理解事件(event)机制

目录 一&#xff0c;引言 二&#xff0c;事件的定义和用法 2.1 同步事件执行 2.2 异步事件执行 2.3 等待异步事件完成 2.4 捕获异常处理中的异常 一&#xff0c;引言 都知道事件的本质是一个多播委托&#xff08;MulticastDelegate)&#xff0c;但对于事件的机制和用法…

【代码随想录 | Leetcode | 第六天】链表 | 反转链表 | 两两交换链表中的节点 | 删除链表的倒数第 N 个结点

前言 欢迎来到小K的Leetcode|代码随想录|专题化专栏&#xff0c;今天将为大家带来反转链表、两两交换链表中的节点和删除链表的倒数第N个节点的分享✨ 目录 前言206. 反转链表24. 两两交换链表中的节点19. 删除链表的倒数第 N 个结点总结 206. 反转链表 ✨题目链接点这里 给你…