51单片机(使用8x8点阵)

2018/3/21

51单片机

1.说在前面

今天初步学会了怎样使用面包板,感觉挺好玩的,学硬件的路渐行渐远吧

2.74hc595模块(8位移位寄存器和一个存储器,三态输出功能

1.将三位串行输入变为并行输出

2.数据先移位到最高点在移位到次高点

3.基础参考资料:https://wenku.baidu.com/view/4d619b1c650e52ea55189826.html


3.实现点亮8x8点阵的代码

 #include<reg52.h>
 typedef unsigned char u8;
 typedef unsigned int u16;
 //定义串行端口
	sbit SRCLK=P3^6;
	sbit RCLK=P3^5;
	sbit SER=P3^4;

 void delay(u16 i)
 {
 	while(i--);
 }
void Hc595SendByte(u8 dat)
{
	u8 a;
	SRCLK=0;
	RCLK=0;
	for(a=0;a<8;a++)
	{
		SER=dat>>7;
		dat<<=1;

		SRCLK=1;
		_nop_();
		_nop_();
		SRCLK=0;	
	}

	RCLK=1;
	_nop_();
	_nop_();
	RCLK=0;
}

void main()
{		
	Hc595SendByte(0x80);
	P0=0x7f;
	while(1);		
}

 


版权声明:本文为Lzinner原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。