GD32F427开发板试用 驱动TM1640显示屏
本篇文章来自极术社区与兆易创新组织的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显示屏相关推荐
- 【GD32F427开发板试用】5. SPI驱动TFTLCD屏幕
本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动,更多开发板试用活动请关注极术社区网站.作者:hehung 之前发帖 [GD32F427开发板试用]1. 串口实现scanf输入控制L ...
- 【GD32F427开发板试用】三、USB转CAN功能开发与试用总结
本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动,更多开发板试用活动请关注极术社区网站.作者:chenjie [GD32F427开发板试用]一.环境搭建与freertos移植 [GD ...
- 【GD32F427开发板试用】INA226完成电流电压采集
本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动,更多开发板试用活动请关注极术社区网站.作者:จุ๊บ冰语 前言 本次有幸参与并通过了极术社区组织的[GD32F427开发板试用]活动 ...
- 【GD32F427开发板试用】二、USB库移植与双USB CDC-ACM功能开发
本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动,更多开发板试用活动请关注极术社区网站.作者:chenjie [GD32F427开发板试用]一.环境搭建与freertos移植 [GD ...
- 【GD32F427开发板试用】+GD32F427开发以来遇到的问题以及解决方案
本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动,更多开发板试用活动请关注极术社区网站.作者:考试结束就睡觉 大纲 开箱问题 环境搭建以及创建第一个project 串口问题 重定向问 ...
- 【GD32F427开发板试用】硬件SPI通信驱动CH376芯片,用单片机实现U盘数据下载
本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动,更多开发板试用活动请关注极术社区网站.作者:周文杰 SPI通信作为单片机多种基础数据传输模式中的一种,驱动外部芯片CH376实现数据 ...
- 【GD32F427开发板试用】06-硬件I2C软件I2C驱动0.91OLED
本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动,更多开发板试用活动请关注极术社区网站.作者:Stark_GS I2C 简介及特点 并行总线至 I2C 总线协议的转换及接口: 同一接 ...
- 【GD32F427开发板试用】FreeRTOS移植工程
本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动,更多开发板试用活动请关注极术社区网站.作者:kings669669 前言 为了方便需要FreeRTOS,附上移植完毕的工程,方便大家 ...
- 【GD32F427开发板试用】+demo的正确打开方式(一)
本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动,更多开发板试用活动请关注极术社区网站.作者:四季的温度 这个系列用于汇总我在使用GD32时遇到的问题,为大家排坑 MDK环境准备 打 ...
最新文章
- Oracle 11G for redhat 自启动脚本
- 自定义注解实现日志脱敏
- R语言扩展包dplyr——数据清洗和整理
- MATLAB入门级知识
- Ubuntu中给eclipse和android studio添加桌面快捷图标
- Linux命令之find命令中的-mtime参数
- twisted系列教程九–Deferred 的第二个小插曲
- 001 java_001Java开发环境
- Redis 系列之CentOS下Redis的安装
- php unset引用变量后不会删除值
- 梦三花重金修改服务器,3月6日一梦江湖游戏更新公告
- Vue 大量数据展示卡顿解决方案(长列表优化)
- 格式化后如何修复损坏的JPEG文件?
- CAN总线和CANOpen协议栈总结
- hdu 5234-三维背包
- 华为重回Android,华为Mate 20 Pro重回Android Q名单中
- 安卓电话补充业务 SS
- 图案输出(二)----输出平行四边形图案:(难度系数:小于半颗星)
- python百分比堆积条形图_绘制比例数据python(堆积条形图)
- 使用CSS实现文字的两端对齐方式
热门文章
- Spring Boot2 + Activiti6 集成在线流程设计器 Activiti modoler(3)
- swift之视频播放AVKIT、AVPlayerViewController、音频录制和播放
- 工科SCI论文的写作技巧(四) 写好引言
- spring5.3.x源码阅读环境搭建
- 单片机原理及应用(c51语言版)(二)
- 替换jar包或者war包里的文件
- 5e怎么绑定一键跳投_一个 Vue 自定义指令实现一键 Copy的功能
- X3850 X5 间歇性亮黄灯
- Academic+Phrasebank+2021+Edition+_中英文对照 一共314页 2021最新版PDF已经翻译好便于阅读对照
- 简单的小爬虫-漫画爬取