7289.c
来自「AT89S52控制ZLG7289扩展键盘和数码管显示代码」· C语言 代码 · 共 93 行
C
93 行
#include<reg52.h> 5
#define uchar unsigned char
#define uint unsigned int
sbit CS=P1^0;
sbit CLK=P1^1;
sbit DATA=P1^2;
sbit ACC7=ACC^7;
void Delay() //延时50us
{
TMOD = 0x02;
TH0 = 0XCE;
TL0 = 0XCE;
TR0 = 1;
while ( !TF0 );
TF0 = 0;
TR0 = 0;
}
//------------------写--------------
void Write(uchar d)
{
uchar t;
ACC=d;
for(t=8;t>0;t--)
{
DATA= ACC7;
ACC <<= 1;
CLK = 1;
Delay();
CLK = 0;
Delay();
}
}
//-----纯指令-------
void cmd(uchar c)
{
CS = 0;
Delay();
Write(c);
CS = 1;
Delay();
}
void cmd2(uchar a,uchar b) //指令带数据
{
CS=0;
Delay();
Write(a);
Delay();
Write(b);
Delay();
CS=1;
}
void main()
{ while(1)
{
uint i;
uchar j;
Delay();
cmd2(0xc8,0x00);
Delay();
cmd2(0xc9,0x01);
Delay();
cmd2(0xca,0x02);
Delay();
cmd2(0xcb,0x03);
Delay();
cmd2(0xcc,0x04);
Delay();
cmd2(0xcd,0x05);
Delay();
cmd2(0xce,0x06);
Delay();
cmd2(0xcf,0x07);
Delay();
while(1)
{
cmd(0xa3);
for(i=255;i>0;i++)
for(j=255;j>0;j++);
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?