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
需要完整工程的可以下方留言获取