“开源LED点阵屏幕/zh”的版本间的差异

来自Microduino Wikipedia
跳转至: 导航搜索
程序烧写
第46行: 第46行:
  
 
==程序烧写==
 
==程序烧写==
*将[[Microduino-Core/zh]]+[[Microduino-USBTTL/zh]]模块叠在一块用数据线连接其中的[[Microduino-USBTTL/zh]]上传程序。
+
*将'''[[Microduino-Core/zh]]'''、'''[[Microduino-USBTTL/zh]]'''堆叠在一起。用数据线连接其中的'''[[Microduino-USBTTL/zh]]'''上传程序。
 
**注意:最好不要将所有模块堆叠在一起之后再上传程序
 
**注意:最好不要将所有模块堆叠在一起之后再上传程序
 
*打开Arduino IDE for Microduino,环境,(搭建参考:'''[[AVR核心:Getting started/zh]]''')
 
*打开Arduino IDE for Microduino,环境,(搭建参考:'''[[AVR核心:Getting started/zh]]''')
*确认“板卡([[Microduino-Core/zh]])”与“处理器(Atmega328P@16M,5V)”选择无误,并选中对应端口号(COMX)
+
*确认'''板卡(Microduino-Core)处理器(Atmega328P@16M,5V)'''选择无误,并选中对应'''端口号(COMX)'''
*打开你所下载的项目中“Dot-Matrix-base.ino”程序
+
*打开你所下载的项目中'''“Dot-Matrix-Base.ino”'''程序
*点击"→"按钮下载程序到开发板上
+
*几项都无误后,点击'''"→"'''按钮下载程序到开发板上
  
 
==拼装过程==
 
==拼装过程==

2016年3月18日 (五) 01:55的版本

Language English


概述

  • 项目名称:Microduino LED点阵屏幕
  • 目的:了解Microduino DcolorMatrix 点阵的原理
  • 难度:低级
  • 耗时:1小时
  • 制作者:peng

材料清单

  • Microduino设备
模块 数量 功能
Microduino-Core/zh 1 核心板
Microduino-USBTTL/zh 1 下载程序
Microduino-Module Dot Matrix/zh 1 显示
Microduino-Cube-S1/zh 1 扩展
  • 其他设备
USB数据线 1 供电,下载

实验原理

  • Microduino-Module Dot Matrix/zh模块特点:
    • 模块为*8x8点阵,尺寸60mm*60mm;
    • 每个点颜色显示质量为24位,整体32k彩色显示效果
    • 支持IIC通讯协议,IIC地址可设(1~64)
    • 点阵序列采用平面直角坐标系,便于控制

程序下载

  • 请保持更新下载Microduino官方最新的IDE
  • 从下面链接下载程序:Dot-Matrix-base.ino

程序烧写

  • Microduino-Core/zhMicroduino-USBTTL/zh堆叠在一起。用数据线连接其中的Microduino-USBTTL/zh上传程序。
    • 注意:最好不要将所有模块堆叠在一起之后再上传程序
  • 打开Arduino IDE for Microduino,环境,(搭建参考:AVR核心:Getting started/zh
  • 确认板卡(Microduino-Core)处理器(Atmega328P@16M,5V)选择无误,并选中对应端口号(COMX)
  • 打开你所下载的项目中“Dot-Matrix-Base.ino”程序
  • 几项都无误后,点击"→"按钮下载程序到开发板上

拼装过程

  • IIC地址设置
  • 成功的话则可以依次在点阵屏上显示以下图形和字符
    • 实心矩形
    • 实心四边形
    • 空心矩形
    • 空心四边形
    • 空心圆
    • 实心圆
    • 直线
    • 流动mcookie字符
    • 0-49计数

600px

代码说明

 uint8_t Addr[MatrixPix_X][MatrixPix_Y] = { 64 }

定义Dot Matrix模块设置的IIC地址为64和级联方式。

 display.getDeviceAddr(a)

获得设备IIC地址

 display.getWidth(),display.getHeight()

返回X,Y坐标

 display.setLedColor(x, y, random(0, 255), random(0, 255), random(0, 255))

随机设置每个LED的颜色

 display.clearDisplay()

清理屏幕显示

 display.setColor(X,Y,Z)

设置全屏颜色 X:红色 Y:绿色 Z:蓝色

 display.writeString("string", MODE, time ,z)

string:任意字符串, MODE:MODE_H横向显示字符/MODE_V竖向显示字符, time:显示时间(流动速度) ,z:X/Y坐标

 display.drawBox(X,Y,I,W)

函数用来画实心矩形 X:水平位坐标,Y:纵向坐标,I:长,W:宽

 display.drawRBox(X, Y, I,W)

函数用来画实心顶角弯曲矩形 X:水平位坐标,Y:纵向坐标,I:长,W:宽

 display.drawFrame(X,Y,I,W)

函数用来画空心矩形 X:水平位坐标,Y:纵向坐标,I:长,W:宽

 display.drawRFrame(X,Y,I,W,)

函数用来画空心顶角弯曲矩形 X:水平位坐标,Y:纵向坐标,I:长,W:宽

 display.drawCircle(X,Y,D)

函数用来画空心圆 X:水平位坐标,Y:纵向坐标,D:直径

 display.drawDisc(X,Y,D)

函数用来画实心圆 X:水平位坐标,Y:纵向坐标,D:直径

 display.drawLine(X,Y,M,N)

用来画直线 X:起点水平位坐标,Y:起点纵向坐标,M:终点水平位坐标,N:终点纵向坐标

FAQ

  • Q:怎么知道IIC地址
  • Q:怎么同时使用多块屏幕
  • Q:为什么计数到20以后显示不全
    • A:由于点阵分辨率只有8*8,像素点不够,因此20以后的数字屏幕会显示不全