K_A02_005 基于单片机驱动数码管 LED 按键模块(TM1638) 流水灯 0-7 按键值显示

目录

一、资源说明

二、基本参数

        1、参数

        2、引脚说明

三、通信协议说明

        1、写数据

                时序:

                程序:

        2、读数据

                时序:

                程序:

四、部分代码说明

        1、接线说明

                1.1、STC89C52RC+按键数码管LED模块

                1.2、STM32F103C8T6+按键数码管LED模块

五、基础知识学习与相关资料下载

六、视频效果展示与程序资料获取

七、项目所有材料清单

八、注意事项

九、接线表格


一、资源说明

单片机型号

测试条件

模块名称

代码功能

STC89C52RC

1.晶振11.0592M

按键数码管LED模块(TM1638 驱动)

  1.  TM1638测试流水灯
  2. TM1638数码管显示0-7
  3. TM1638按键采集数码管LED显示

STM32F103C8T6

  1. 晶振8M
  2. 系统时钟72M

按键数码管LED模块(TM1638 驱动)

二、基本参数

        1、参数

0609e5561a3a462d9a9a08928f9a1c0a.png

        2、引脚说明

4位数码管模块(74HC595驱动)

引脚说明

VCC

VCC电源引脚,接5V

GND

GND引脚接电源地,如果外接电源,一般必须共地

STB

片选。STB 为低后的第一个字节作为指令,当处 理指令时,当前其它处理被终止。当STB 为高时, CLK 被忽略

CLK

上升沿输入/输出串行数据

DIO

数据输入/输出

三、通信协议说明

        1、写数据

                时序:

d7fac5b8181649748e2b3f61a4b66c59.png

                程序:

//写一个字节
void TM1638_Write(uint8_t	DATA)			//写数据函数
{
	uint8_t i;
	for(i=0;i<8;i++)
	{
		CLK=0;
		if(DATA&0X01)
			DIO=1;
		else
			DIO=0;
		DATA>>=1;
		CLK=1;
	}
}

        2、读数据

                时序:

329720c91b37429fa616f66d1822289f.png

                程序:

//读一个字节
uint8_t TM1638_Read(void)					//读数据函数
{
	uint8_t i;
	uint8_t temp=0;
	DIO=1;	//设置为输入
	for(i=0;i<8;i++)
	{
		temp>>=1;
		CLK=0;
		if(DIO)
			temp|=0x80;
		CLK=1;
	}
	return temp;
}

四、部分代码说明

        1、接线说明

                需要自定义引脚可在此处更改,STM32要自定义引脚的话也要注意引脚时钟使能的更改

                1.1、STC89C52RC+按键数码管LED模块

//TM1638模块引脚定义
sbit	DIO=P1^0;
sbit	CLK=P1^1;
sbit	STB=P1^2;

                1.2、STM32F103C8T6+按键数码管LED模块

/* 定义LED连接的GPIO端口, 用户只需要修改下面的代码即可改变控制的LED引脚 */
#define DIO_GPIO_PORT    	GPIOA		              /* GPIO端口 */
#define DIO_GPIO_CLK 	    RCC_APB2Periph_GPIOA		/* GPIO端口时钟 */
#define DIO_GPIO_PIN		GPIO_Pin_1			        

#define CLK_GPIO_PORT    	GPIOA			              /* GPIO端口 */
#define CLK_GPIO_CLK 	    RCC_APB2Periph_GPIOA		/* GPIO端口时钟 */
#define CLK_GPIO_PIN		GPIO_Pin_2			        

#define STB_GPIO_PORT    	GPIOA			              /* GPIO端口 */
#define STB_GPIO_CLK 	    RCC_APB2Periph_GPIOA		/* GPIO端口时钟 */
#define STB_GPIO_PIN		GPIO_Pin_3			 

#define DIO_H    	GPIO_SetBits(DIO_GPIO_PORT, DIO_GPIO_PIN)
#define DIO_L    	GPIO_ResetBits(DIO_GPIO_PORT, DIO_GPIO_PIN)

#define CLK_H    	GPIO_SetBits(CLK_GPIO_PORT, CLK_GPIO_PIN)
#define CLK_L    	GPIO_ResetBits(CLK_GPIO_PORT, CLK_GPIO_PIN)

#define STB_H    	GPIO_SetBits(STB_GPIO_PORT, STB_GPIO_PIN)
#define STB_L    	GPIO_ResetBits(STB_GPIO_PORT, STB_GPIO_PIN)


#define R_DIO    GPIO_ReadInputDataBit(DIO_GPIO_PORT, DIO_GPIO_PIN)

五、基础知识学习与相关资料下载

  1. STC89C52RC程序下载 直戳跳转
  2. STM32F103C8T6程序下载
    1. 串口下载                直戳跳转 
    2. ST-LINK下载             直戳跳转
    3. J-LINK下载              直戳跳转
    4. DAP-LINK下载            直戳跳转

六、视频效果展示与程序资料获取

        视频连接    直戳跳转

        资料获取            ( 滑到最后添加群号看公告免费获取)

七、项目所有材料清单

STC89C52RC驱动方案

图片

STM32F103C8T6驱动方案

图片

备注

K_A02_005

STC89C52RC系统板X1

a3cdc13a5258471393b469036ab935e8.jpeg

STM32F103C8T6系统板X1

e222ef152aec4a959980a7348c938ad8.jpeg

1、STM32系统板两根Micro USB线一根用于J-LINK下载器,另一根用于给系统板供电

2、杜邦线建议不用太长的

按键数码管LED模块(TM1638 驱动)X1

974003b00e6f4697ba37ea989c128571.jpeg

按键数码管LED模块(TM1638 驱动)X1

f0dbb5ed89a34b5795898aa2cd092bd7.jpeg

Micro USB线X1

57875597ceca45dea99b6914d3f99973.jpeg

Micro USB线X2

5be4964dccf341a986830057aa363dc3.jpeg

母母杜邦线X5根

4258930555774c809f2c90e2eb1fbb0b.jpeg

母母杜邦线X5根

c818329ce23d45728de74199ef8d7e8e.jpeg

J-LINK下载器

d25240e5d0cd4e3fb1c24e19dfa6a3e6.jpeg

八、注意事项

  1. VCC GND请勿接反,接反易烧
  2. 显示异常时,排除接线接触不良
  3. 下载后显示异常时候可以重新上电复位下

九、接线表格

单片机型号

模块

对应引脚(上:模块引脚 下:单片机引脚)

STM32F103

C8T6

4位数码管模块(74HC595驱动)

GND

VCC

STB

CLK

DIO

GND

5V

PA3

PA2

PA1

STC89C52RC

4位数码管模块(74HC595驱动)

GND

VCC

STB

CLK

DIO

GND

5V

P1.2

P1.1

P1.0

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值