max7219驱动

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/trtos/article/details/38336773
max7219驱动
#include <reg51.h>
#define uchar unsigned char
sbit clk=P1^2;
sbit load_cs=P1^1;
sbit din=P1^0;
uchar code table[]={7,2,1,8,7,5,0,10};
void initial()
{
  clk=0;
load_cs=0;
din=0;
}

void send(uchar add,uchar dat)
{
 uchar i;
 load_cs=0;
 for(i=0;i<8;i++)
 {
  clk=0;
  din=add&0x80; 
  clk=1;
  add=add<<1;  
 }
 for(i=0;i<8;i++)
 {
   clk=0;
  din=dat&0x80;
  dat=dat<<1;
  clk=1; 
 }
 load_cs=1;
}

void main()
{
  uchar i; 
  initial(); 
  send(0x09,0x0ff);//操作代码为“0x09”,操作数为“0”或“0xFF”。选中“0”则不使用BCD译码器
  send(0x0a,0x0f);//亮度控制寄存器 0-f
  send(0x0b,0x07);//扫描位数设定
  send(0x0c,0x01);//待机开关操作代码为“0x0C”,操作数为“0”或“1” 
  send(0xf0,0x00);//显示器检测操作代码为“0x0F”,操作数为“0”或“1”

for(i=0;i<8;i++) //显示0-7
 {
   send(0x01+i,table[i]);//显示基址
 }

}

max7219驱动

展开阅读全文

没有更多推荐了,返回首页