set7219.c

来自「很有用的CYGNAL C语言程序,」· C语言 代码 · 共 45 行

C
45
字号
#include<c8051f020.h>
void delay(long int);
sbit CLK=P1^7;
sbit DIN=P1^5;
sbit LOAD=P1^6;
void senddata(unsigned char ads,unsigned char dat)
{
	/*向MAX7219写数据分
	两次每次传送八位*/
	int i;
	LOAD=0;
	for(i=0;i<8;i++)
	{
		CLK=0;
		if((ads&0x80))
			DIN=1;
		else DIN=0;
		CLK=1;
		ads=ads<<1;
	}
	for(i=0;i<8;i++)
	{
		CLK=0;
		if((dat&0x80))
			DIN=1;
		else DIN=0;
		CLK=1;
		dat=dat<<1;
	}
	LOAD=1;
	delay(50);
}
void setoff(unsigned char x)
{	/*MAX7219初始化*/	
	senddata(0x09,0xff);
	/*硬件译码*/
	senddata(0x0a,0x05);
	/*数码管亮度调节*/
	senddata(0x0b,x);
	/*数码管扫描位设定*/
	senddata(0x0c,0x01);
	/******MAX7219启动*/
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?