扩展库使用说明——TM1637
本帖最后由 陈哲东 于 2022-7-15 13:53 编辑1-硬件概述
TM1637 是一种带键盘扫描接口的LED(发光二极管显示器)驱动控制专用电路,内部集成有MCU 数 字接口、数据锁存器、LED 高压驱动、键盘扫描等电路。本产品性能优良,质量可靠。主要应用于电磁炉、 微波炉及小家电产品的显示屏驱动。采用DIP/SOP20的封装形式。
2-引脚定义
3-电路原理图
4-硬件连接
TM1637与单片机连接:
5-图形化模块
6-范例代码#define TM1637_SCL P1_5
#define TM1637_SCL_OUT {P1M1&=~0x20;P1M0|=0x20;}//P1_5推挽输出
#define TM1637_SDA P1_4
#define TM1637_SDA_IN {P1M1|=0x10;P1M0&=~0x10;}//P1_4高阻输入
#define TM1637_SDA_OUT {P1M1&=~0x10;P1M0|=0x10;}//P1_4推挽输出
#include <STC8HX.h>
uint32 sys_clk = 24000000;//设置PWM、定时器、串口、EEPROM频率参数
#include "mylib/TM1637.h"
void setup()
{
TM1637_Init();//TM1637初始化
}
void loop()
{
TM1637_displayNum(1234);}
void main(void)
{
setup();
while(1){
loop();
}
}
示例代码2#define TM1637_SCL P1_5
#define TM1637_SCL_OUT {P1M1&=~0x20;P1M0|=0x20;}//P1_5推挽输出
#define TM1637_SDA P1_4
#define TM1637_SDA_IN {P1M1|=0x10;P1M0&=~0x10;}//P1_4高阻输入
#define TM1637_SDA_OUT {P1M1&=~0x10;P1M0|=0x10;}//P1_4推挽输出
#include <STC8HX.h>
uint32 sys_clk = 24000000;//设置PWM、定时器、串口、EEPROM频率参数
#include "mylib/TM1637.h"
#include "lib/delay.h"
void setup()
{
TM1637_Init();//TM1637初始化
}
void loop()
{
TM1637_clear();//TM1637清除
TM1637_displayTime(12,30,(1));//显示时间
delay(1000);
TM1637_clear();//TM1637清除
TM1637_displayBit(0,1,1);
delay(1000);
}
void main(void)
{
setup();
while(1){
loop();
}
}
7-TM1637数码管显示测试视频
http://www.haohaodada.com/video/new/bbs/TM1637.mp4
手册资料:
//player.bilibili.com/player.html?bvid=BV13M4y1g7ZM
楼主建一个TM1640扩展库 楼主TM1637能增加对字段的操作吗?这样就可以用在自定义的LED显示屏上。 (比如前四位显示时间数字,后边的段可以独立控制来显示客制化的图标。) 1637可以支持6位数码管,目前只支持四位。大佬能搞到六位吗 代码有个不对的地方,楼主能不能修改一下【第几位显示】那里,第一位是0,第二位是1,第三位是2,第四位是3,错位的,应该是第一位是1,第二位是2,第三位是3,第四位是4。。。。希望楼主能修改主一下,谢谢:lol:) 主TM1637能增加对字段的操作吗?这样就可以用在自定义的LED显示屏上。 (比如前四位显示时间数字,后边的段可以独立控制来显示客制化的图标。)
页:
[1]