📄 max7219.c
字号:
#include "reg52.h"
sbit cs = P0^1;
sbit clk = P0^2;
sbit din = P0^0;
sbit dout = P0^3;
unsigned char const num[13]={0x7E,0x30,0x6D,0x79,0x33,0x5B,0x5F,0x70,0x7F,0x7B,0x37,0x0E,0x00}; //0-9,H,L,空格
void write_7219(unsigned char add,unsigned char date)
{
unsigned char m;
cs=0;
for(m=0;m<8;m++)
{
clk=0;
if((add&0x80)==0x80)din=1;
else din=0;
clk=1;
add=add<<1;
}
for(m=0;m<8;m++)
{
clk=0;
if((date&0x80)==0x80)din=1;
else din=0;
clk=1;
date=date<<1;
}
cs=1;
}
/***写7219的数据位,输入参数为地址,数据,是否小数位***/
void write_7219_data(unsigned char add,unsigned date,bit dot)
{
date=num[date];
if(dot)date=date|0x80;
write_7219(add,date);
}
void ini_7219()
{
write_7219(0x09,0x00); //无编码显示模式
write_7219(0x0a,0x0F); //开到最亮
write_7219(0x0b,0x03); //从0到3位
write_7219(0x0c,0x01); //打开显示
write_7219(0x0f,0x00); //正常模式
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -