学习C51单片机——LED点阵点亮一个点(学习笔记Keil5)
1、硬件介绍
74HC595(串转并)模块
根据原理图定义相应串口
8*8LED点阵模块
2、LED点阵点亮一个点
#include <REGX52.H>
sbit RCL=P3^5; //定义RCLK串口
sbit SCK=P3^6; //定义SRCLK串口
sbit SER=P3^4; //定义SER串口
sbit LED=P0^6;
void Delay(unsigned int xms)//延时函数
{
unsigned char i, j;
while(xms--)
{
i = 2;
j = 239;
do
{
while (--j);
} while (--i);
}
}
void SendByte(unsigned char data1)
{
unsigned char a;
SCK = 1;
RCL = 1;
for(a=0;a<8;a++) //发送8位数
{
SER = data1 >> 7; //从最高位开始发送
data1 <<= 1;
SCK = 0; //发送时序
Delay(1);
SCK = 1;
}
RCL = 0;
Delay(1);
RCL = 1;
}
void main()
{
LED=0; //使第二列为高电平,LED灯亮
while(1)//第六行第二列led灯点亮
{
SendByte(0x04); //0x04的二进制为0000 0100
}
}