美文网首页
利用max7219点阵模块实现符号显示

利用max7219点阵模块实现符号显示

作者: 0140_颜定刚 | 来源:发表于2019-07-05 11:09 被阅读0次

电路连接

单个连接电路图示意

Arduino Uno    ---     MAX7219

5V                <--->              VCC

GND           <--->              GND

12               <--->              DIN

11               <--->              CS

10               <--->             CLK

多个连接的方式

程序及库文件

LedControl库使用说明

该库用于使用 MAX7219驱动的SPI总线8*8 LED显示屏及7段LED数码管。定义一个对象最多可以驱动8块8*8LED显示屏(每块64个LED总共512个)或8个7段数码管,需占用三个Arduino的IO口。如需驱动超过8个设备只能定义多个对象,但需要占用更多的IO口

把下载的库文件夹存放在Arduino 安装目录的libraries库文件夹

库函数:

LedControl(intdataPin,intclkPin,intcsPin,intnumDevices)

用途:初始化设备,设置DIN(dataPin)、CLK、CS的IO口及连接设备数量(既有多少块屏)并定义一个对象。参数: 

      dataPin 

             设置DIN口对应的Arduino上的IO口 

      clockPin 

            设置CLK口对应的Arduino上的IO口 

      csPin 

                 设置CS口对应的Arduino上的IO口 

      numDevices 

      设置最大设备连接数(也就是8*8LED屏的个数),只能设置1-8,如果需要连接超过8个设备,则需要定义另一个对象并使用另外的IO口

代码部分

#include <LedControl.h>

int DIN

= 12;

intCS=  11;

int CLK

= 10;//定义8*8点阵屏的三个针脚

LedControl lc=LedControl(DIN,CLK,CS,4);//LEDControl库函数

void setup()

{

 lc.shutdown(0,false);       //启动时,MAX72XX处于省电模式

 lc.setIntensity(0,8);       //将亮度设置为最大值

 lc.clearDisplay(0);         //清除显示

}

void loop(){

    byte smile[8]=   {0x3C,0x42,0xA5,0x81,0xA5,0x99,0x42,0x3C};//笑脸

    byte

neutral[8]= {0x3C,0x42,0xA5,0x81,0xBD,0x81,0x42,0x3C};//标准脸   

    printByte(eight);//显示8

    delay(1000);//延时1秒

    printByte(neutral);//显示标准脸

    delay(1000);

}

//点阵显示函数,定义内容

void printByte(byte character [])

{

 inti= 0;

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

 {

    lc.setRow(0,i,character[i]);

 }//点阵输出函数

}

取字模软件的相关使用

这是取字模软件的主界面
打开编辑菜单按钮,可以调节显示字符的点阵的规模
选择手动输入待取模软件,然后输入想显示的字符
点击工具,输出代码,就可以在窗口输出代码,代表的就是要显示的字符

相关文章

网友评论

      本文标题:利用max7219点阵模块实现符号显示

      本文链接:https://www.haomeiwen.com/subject/fkhshctx.html