本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动,更多开发板试用活动请关注极术社区网站。作者:swag

一、硬件介绍

TM1640 是一种LED(发光二极管显示器)驱动控制专用电路,内部集成有MCU 数字接口、数据锁存器、 LED 驱动等电路。

二、接口说明

微处理器的数据通过两线总线接口和 TM1640 通信,在输入数据时当 CLK 是高电平时,DIN 上的信号必须保持不变;CLK 上的时钟信号为低电平时,DIN 上的信号才能改变。数据的输入总是低位在前,高位在后传输.数据输入的开始条件是 CLK 为高电平时,DIN 由高变低;结束条件是 CLK 为高时,DIN 由低电平变为高电平。指令数据传输过程如下图:

注意数据的输入条件和结束条件,输入条件是CLK 为高电平时,DIN由低变高

三、驱动代码

我采用以自动地址写数据格式来和TM1640通信
数据指令

//#define sCLK_H gpio_bit_reset(GPIOA,GPIO_PIN_8)
//#define sCLK_L gpio_bit_set(GPIOA,GPIO_PIN_8)
//#define sDATA_H gpio_bit_reset(GPIOA,GPIO_PIN_10)
//#define sDATA_L gpio_bit_set(GPIOA,GPIO_PIN_10)
uint8_t SmgBuff[21]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0xbf,\
0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef,0x00};

void TM1640_start ()
{

sCLK_L;
sDATA_H;
sCLK_H;
delay_us(1);
sDATA_L;
delay_us(1);
sCLK_L;
delay_us(1);

}

void TM1640_stop ()
{

sCLK_L;
sDATA_L;
sCLK_H;
delay_us(1);
sDATA_H;
delay_us(1);

}

void send_byte (uint num)
{

uint i;
for (i= 8;i>0;i--)
{sCLK_L;if (num&0x01){sDATA_H;delay_us(1);}else {sDATA_L;delay_us(1);}sCLK_H;num = num>>1;
}
delay_us(1);

}

TM1640_start ();
send_byte (0xc0); //输入首地址
send_byte (SmgBuff[0]); //输入个数码管的显示数据;
send_byte (SmgBuff[1]);
send_byte (SmgBuff[2]);
send_byte (SmgBuff[3]);
TM1640_stop ();

TM1640_start ();
send_byte (0x0f);//最亮
TM1640_stop ();

四、实物展示

GD32F427开发板试用 驱动TM1640显示屏相关推荐

  1. 【GD32F427开发板试用】5. SPI驱动TFTLCD屏幕

    本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动,更多开发板试用活动请关注极术社区网站.作者:hehung 之前发帖 [GD32F427开发板试用]1. 串口实现scanf输入控制L ...

  2. 【GD32F427开发板试用】三、USB转CAN功能开发与试用总结

    本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动,更多开发板试用活动请关注极术社区网站.作者:chenjie [GD32F427开发板试用]一.环境搭建与freertos移植 [GD ...

  3. 【GD32F427开发板试用】INA226完成电流电压采集

    本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动,更多开发板试用活动请关注极术社区网站.作者:จุ๊บ冰语 前言 本次有幸参与并通过了极术社区组织的[GD32F427开发板试用]活动 ...

  4. 【GD32F427开发板试用】二、USB库移植与双USB CDC-ACM功能开发

    本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动,更多开发板试用活动请关注极术社区网站.作者:chenjie [GD32F427开发板试用]一.环境搭建与freertos移植 [GD ...

  5. 【GD32F427开发板试用】+GD32F427开发以来遇到的问题以及解决方案

    本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动,更多开发板试用活动请关注极术社区网站.作者:考试结束就睡觉 大纲 开箱问题 环境搭建以及创建第一个project 串口问题 重定向问 ...

  6. 【GD32F427开发板试用】硬件SPI通信驱动CH376芯片,用单片机实现U盘数据下载

    本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动,更多开发板试用活动请关注极术社区网站.作者:周文杰 SPI通信作为单片机多种基础数据传输模式中的一种,驱动外部芯片CH376实现数据 ...

  7. 【GD32F427开发板试用】06-硬件I2C软件I2C驱动0.91OLED

    本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动,更多开发板试用活动请关注极术社区网站.作者:Stark_GS I2C 简介及特点 并行总线至 I2C 总线协议的转换及接口: 同一接 ...

  8. 【GD32F427开发板试用】FreeRTOS移植工程

    本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动,更多开发板试用活动请关注极术社区网站.作者:kings669669 前言 为了方便需要FreeRTOS,附上移植完毕的工程,方便大家 ...

  9. 【GD32F427开发板试用】+demo的正确打开方式(一)

    本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动,更多开发板试用活动请关注极术社区网站.作者:四季的温度 这个系列用于汇总我在使用GD32时遇到的问题,为大家排坑 MDK环境准备 打 ...

最新文章

  1. Oracle 11G for redhat 自启动脚本
  2. 自定义注解实现日志脱敏
  3. R语言扩展包dplyr——数据清洗和整理
  4. MATLAB入门级知识
  5. Ubuntu中给eclipse和android studio添加桌面快捷图标
  6. Linux命令之find命令中的-mtime参数
  7. twisted系列教程九–Deferred 的第二个小插曲
  8. 001 java_001Java开发环境
  9. Redis 系列之CentOS下Redis的安装
  10. php unset引用变量后不会删除值
  11. 梦三花重金修改服务器,3月6日一梦江湖游戏更新公告
  12. Vue 大量数据展示卡顿解决方案(长列表优化)
  13. 格式化后如何修复损坏的JPEG文件?
  14. CAN总线和CANOpen协议栈总结
  15. hdu 5234-三维背包
  16. 华为重回Android,华为Mate 20 Pro重回Android Q名单中
  17. 安卓电话补充业务 SS
  18. 图案输出(二)----输出平行四边形图案:(难度系数:小于半颗星)
  19. python百分比堆积条形图_绘制比例数据python(堆积条形图)
  20. 使用CSS实现文字的两端对齐方式

热门文章

  1. Spring Boot2 + Activiti6 集成在线流程设计器 Activiti modoler(3)
  2. swift之视频播放AVKIT、AVPlayerViewController、音频录制和播放
  3. 工科SCI论文的写作技巧(四) 写好引言
  4. spring5.3.x源码阅读环境搭建
  5. 单片机原理及应用(c51语言版)(二)
  6. 替换jar包或者war包里的文件
  7. 5e怎么绑定一键跳投_一个 Vue 自定义指令实现一键 Copy的功能
  8. X3850 X5 间歇性亮黄灯
  9. Academic+Phrasebank+2021+Edition+_中英文对照 一共314页 2021最新版PDF已经翻译好便于阅读对照
  10. 简单的小爬虫-漫画爬取