led点阵---显示数字或汉字(内含代码+注释+图片)

简介: led点阵---显示数字或汉字(内含代码+注释+图片)

62de51a69490441191a7d55af5f287d9.png

#include"reg52.h"
typedef unsigned char u8;
typedef unsigned int u16;
sbit SER=P3^4;
sbit rCLK=P3^5;
sbit SRCLK=P3^6;
#define LEDDZ_COL_PORT    P0  
u8 gled_row[8]={0xFF,0xAA,0xEE,0x00,0x7E,0x52,0x52,0x7E};//LED点阵显示数字0的行数据-----想要什么内容就改对应的16进制
u8 gled_col[8]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};//LED点阵显示数字0的列数据
//col的,如0x7f,即为0111 1111,此时只有第一列为0,低电平,有效,led亮。其他均为高电平,led不亮
//row的,如0x21,即为0010 0001,此时为第一列的第三个,第八个为1,高电平,led亮
//...
void time_delay(u16 delay_time)
{
    while(delay_time--);
}
//向74HC595写入一个字节的数据,输入dat
//某一行的某个数据,如显示0x21,对应16进制为0010 0001
//0x7c,对应16进制为0111 1100....
void hc595_write_data(u8 dat)
{
    u8 i=0;
    for(i=0;i<8;i++)
    {
        //优先传输一个字节中的高位
        SER =dat>>7;
        dat<<=1;
        //移位寄存器时钟上升沿将端口数据送入寄存器中
        SRCLK=0;
        time_delay(1);
        SRCLK=1;
        time_delay(1);
    }
    //存储寄存器时钟上升沿将前面写入到寄存器的数据输出
    rCLK=0;
    time_delay(1);
    rCLK=1;
}
void main()
{
    u8 i=0;
    while(1)
    {
        for(i=0;i<8;i++)
        {
                    LEDDZ_COL_PORT=gled_col[i]; //第一次选择第一列...
        hc595_write_data(gled_row[i]);//发送第一列对应的行数据,如0x21,对应16进制是0111 1100,变为
        time_delay(100);//延时
        hc595_write_data(0x00);//消影
        }
    }
}

b436399e4f894088a426bc34487d018a.jpg

33fef497048c40e2b61723190efe2828.jpg

f12be6d0b72f4b5e954cf8960065df76.jpg

d47347b8f5b54db597ecb8087388e019.jpg

60f98227e6aa44c3b6cd13661d3ed57b.jpg

e54ca8fa9bc74e12bf6679c1cde156c5.jpg

d8e62078fad84126ad97217b40361ce2.jpg


相关文章
用word快速将数字字体换成新罗马详细简单方法
用word快速将数字字体换成新罗马详细简单方法
3863 0
用word快速将数字字体换成新罗马详细简单方法
|
3月前
|
C语言
51开发板数码管:固定显示\闪烁显示\走灯显示“--8051--“,字符可以任意更改,较为灵活
51开发板数码管:固定显示\闪烁显示\走灯显示“--8051--“,字符可以任意更改,较为灵活
用c语言输出有颜色的字体 printf输出 控制台程序修改文本位置 设置控制台程序窗口标题
用c语言输出有颜色的字体 printf输出 控制台程序修改文本位置 设置控制台程序窗口标题
|
小程序 JavaScript 前端开发
vba 在代码窗口里不能正常显示的双字节字符的转换
vba 在代码窗口里不能正常显示的双字节字符的转换
99 0
|
Python
一日一技:如何判断某个汉字是不是在字体库中
一日一技:如何判断某个汉字是不是在字体库中
291 0
基于STM32下OLED显示实现文字取模软件配置
在做OLED显示实验时,文字很难编辑出对应的点,从网上找到了这个文字转换软件,以下是软件的配置项,由于是STM32所以自定义格式选择C51格式, 取模方式:列行式 取模走向:逆向 输出数制:16进制 输出选项:输出精简格,输出紧凑格式 点阵格式:阴码
589 0
基于STM32下OLED显示实现文字取模软件配置
|
Linux
Linux 下 使用点阵在LCD上显示汉字,字符
这篇文章主要讲一下如何在 LCD 上使用点阵显示汉字,字符 ,修改颜色 及效果展示。其中包含了几个核心函数,我们需要了解。
203 0
运行可用:使用FreeType输出中文汉字点阵图形的源码
运行可用:使用FreeType输出中文汉字点阵图形的源码
235 0
运行可用:使用FreeType输出中文汉字点阵图形的源码
|
编解码
Debug栏打印时自动把Unicode编码转化成汉字
Debug栏打印时自动把Unicode编码转化成汉字
159 0
Debug栏打印时自动把Unicode编码转化成汉字
|
11月前
|
异构计算
FPGA-基于UART的QVGA显示(二)(实现PC端发送字母数字汉字的分别显示通过按键可以删除字符)
FPGA-基于UART的QVGA显示(二)(实现PC端发送字母数字汉字的分别显示通过按键可以删除字符)
113 0
FPGA-基于UART的QVGA显示(二)(实现PC端发送字母数字汉字的分别显示通过按键可以删除字符)