概述
目录
一、程序功能说明
二、基本参数
1、参数
2、引脚说明
三、通信协议说明
IIC
1、起始信号
2、停止信号
3、发送数据与等待应答
四、部分代码说明
1、 接线说明
STC89C52RC+4位数米字码管(HT16K33)
STM32F103C8T6+4位数米字码管(HT16K33)
2、亮度调节
五、相关资料链接
六、视频效果展示与程序资料获取
七、项目所有材料清单
八、注意事项
九、接线表格
一、程序功能说明
单片机型号 | 测试条件 | 模块名称 | 代码功能 |
STC89C52RC | 1.晶振11.0592M | 4位数米字码管(HT16K33) |
|
STM32F103C8T6 |
| 4位数米字码管(HT16K33) |
二、基本参数
1、参数
主要注意供电电压,IIC引脚高低电平电压范围
2、引脚说明
4位数米字码管引脚 | 引脚说明 |
GND | GND引脚接电源地,如果外接电源,一般必须共地 |
VCC | VCC电源引脚,可接5V |
SCL | IIC时钟线 |
SDA | IIC数据线 |
Ji2c | 使用时建议接高电平或者VCC |
三、通信协议说明
IIC
1、起始信号
时序图:
代码:
//IIC Start
void I2cStart()
{
HT16K33_SDA_H;
HT16K33_SCL_H;
HT16K33_SDA_L;
HT16K33_SCL_L;
}
2、停止信号
时序图:
代码:
void I2cStop()
{
HT16K33_SCL_H;
HT16K33_SDA_L;
HT16K33_SDA_H;
}
3、发送数据与等待应答
时序图:
代码:
unsigned char I2cSendByte(unsigned char dat)
{
unsigned char a=0,b=0;//
for(a=0;a<8;a++)//要发送8位,从最高位开始
{
if(dat>>7)
{
HT16K33_SDA_H;
}
else
{
HT16K33_SDA_L;
}
dat=dat<<1;
HT16K33_SCL_H;
HT16K33_SCL_L;
}
HT16K33_SDA_H;
HT16K33_SCL_H;
while(HT16K33_SDA)//等待应答,也就是等待从设备把SDA拉低
{
b++;
if(b>200) //如果超过没有应答发送失败
{
//HT16K33_SCL_L;
return 0;
}
}
HT16K33_SCL_L;
return 1;
}
四、部分代码说明
1、 接线说明
需要自定义引脚可在此处更改,STM32要自定义引脚的话也要注意引脚时钟使能的更改
STC89C52RC+4位数米字码管(HT16K33)
sbit HT16K33_SCL=P1^0;
sbit HT16K33_SDA=P1^1;
#define HT16K33_SCL_L HT16K33_SCL=0
#define HT16K33_SCL_H HT16K33_SCL=1
#define HT16K33_SDA_L HT16K33_SDA=0
#define HT16K33_SDA_H HT16K33_SDA=1
STM32F103C8T6+4位数米字码管(HT16K33)
#define SCL_GPIO_PORT GPIOA /* GPIO端口 */
#define SCL_GPIO_CLK RCC_APB2Periph_GPIOA /* GPIO端口时钟 */
#define SCL_GPIO_PIN GPIO_Pin_0
#define SDA_GPIO_PORT GPIOA /* GPIO端口 */
#define SDA_GPIO_CLK RCC_APB2Periph_GPIOA /* GPIO端口时钟 */
#define SDA_GPIO_PIN GPIO_Pin_1
#define HT16K33_SCL_L GPIO_ResetBits(SCL_GPIO_PORT,SCL_GPIO_PIN)
#define HT16K33_SCL_H GPIO_SetBits(SCL_GPIO_PORT,SCL_GPIO_PIN)//SCL
#define HT16K33_SDA_L GPIO_ResetBits(SDA_GPIO_PORT,SDA_GPIO_PIN)//SDA
#define HT16K33_SDA_H GPIO_SetBits(SDA_GPIO_PORT,SDA_GPIO_PIN)
2、亮度调节
如需改显示亮度可改Brilliance宏定义,范围0-15
//亮度调节宏定义,范围0-15
#define Brilliance 8
五、相关资料链接
- STC89C52RC程序下载 直戳跳转
- STM32F103C8T6程序下载
- 串口下载 直戳跳转
- ST-LINK下载 直戳跳转
- J-LINK下载 直戳跳转
- DAP-LINK下载 直戳跳转
六、视频效果展示与程序资料获取
视频连接 直戳跳转
资料获取 ( 滑到最后添加群号看公告免费获取)
七、项目所有材料清单
STC89C52RC驱动方案 | 图片 | STM32F103C8T6驱动方案 | 图片 | 备注 K_A02_002 |
STC89C52RC系统板X1 | STM32F103C8T6系统板X1 | 1、STM32系统板两根Micro USB线一根用于J-LINK下载器,另一根用于给系统板供电 2、杜邦线建议不用太长的 | ||
4位数米字码管(HT16K33)X1 | 4位数米字码管(HT16K33)X1 | |||
Micro USB线X1 | Micro USB线X2 | |||
母母杜邦线X7 | 母母杜邦线X7 | |||
J-LINK下载器 |
八、注意事项
- VCC GND请勿接反,接反易烧
- 显示异常时,排除接线接触不良
- 同程序换其他同类屏幕后需要按单片机复位才会正常显示
- 用单片机驱动时Ji2c接高电平或者接3.3V或5V(STC89C52RC单片机不接可能异常)
九、接线表格
单片机型号 | 模块 | 对应引脚(上:模块引脚 下:单片机引脚) | ||||
STM32F103 C8T6 | 4位数米字码管(HT16K33) | GND | VCC | SCL | SDA | Ji2c |
GND | 5V | PA0 | PA1 | VCC/高电平 | ||
STC89C52RC | 4位数米字码管(HT16K33) | GND | VCC | SCL | SDA | Ji2c |
GND | 5V | P1.0 | P1.1 | VCC/高电平 |
最后
以上就是还单身世界为你收集整理的K_A02_002 基于单片机驱动4位米字数码管(HT16K33) 0-9左移+滚动显示一、程序功能说明二、基本参数三、通信协议说明 四、部分代码说明 五、相关资料链接六、视频效果展示与程序资料获取七、项目所有材料清单八、注意事项 九、接线表格的全部内容,希望文章能够帮你解决K_A02_002 基于单片机驱动4位米字数码管(HT16K33) 0-9左移+滚动显示一、程序功能说明二、基本参数三、通信协议说明 四、部分代码说明 五、相关资料链接六、视频效果展示与程序资料获取七、项目所有材料清单八、注意事项 九、接线表格所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复