51单片机驱动4位米字数码管模块(HT16K33驱动)显示0-3

 

一、HT16K33介绍

1.HT16K33基本参数

主要关注下供电电压是4.5-5.5V(建议5V),请在规定范围内供电。
在这里插入图片描述

2.HT16K33引脚定义

模块上芯片引出引脚,芯片引脚与模块引脚对应关系是:VCC-VCC
SCK-SCL, SDA-SDA,GND-GND
在这里插入图片描述

3.流程图

在这里插入图片描述

4.HT16K33通信时序

可以对比程序学习时序图,便于理解。
在这里插入图片描述

5.米字数码管段编号

分别是A,B,C,D,E,F,G1,G2,H,J,K,L,M,N,DP。
在这里插入图片描述

二、烧录后现象

在这里插入图片描述

三、主要程序

1.引脚定义

 	//Ji2C接高电平
sbit    SCL=P1^3;				//IIC时钟线
sbit    SDA=P1^2;           //IIC数据线

2.复位函数

void reset()
{
  displayOn();
  displayClear();
  brightness(8);
}

3.显示函数

//*******************************************************************************
//* 函数名         : unsigned char At24c02Read(unsigned char addr)
//* 函数功能		   : 指定数码管显示对应数字
//* Place          : 指定要显示数码管位置,也就是位选,参数0-3,
//* dat         	 : 显示段码数据
//*******************************************************************************/
void display_num(unsigned char Place,unsigned int dat)
{

		writeDat(Place*2,(unsigned char)dat);
		writeDat(Place*2+1,(unsigned char)(dat>>8));
	
}

4.主函数

void main()
{
	unsigned char i;
	reset();
	while(1)
	{
		for(i=0;i<4;i++)
		{
			display_num(i,HT16K33_Buf[i]);
		}
		while(1);
	}

}

四、注意事项

1.显示异常可排除接线是否有接触不良或者接线顺序错误
2.此程序是基于STC89C52RC单片机写的,其他单片机移植需要注意主频时钟与此单片机不同
3.注意供电用5V
需要完整工程的可以下方留言获取

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

热门文章

收藏
浏览量:0
创建时间:2022-06-10 19:24