资源简介
在STM32或者51下实现用一片TM1640芯片控制8X16点阵,可实现点阵自己DIY显示,动态显示,移屏操作,只用到两个32单片机IO口即可控制,大大减少了对于单片机资源的占用。
代码片段和文件信息
#include “TM1640.h“
#include “delay.h“
#define DEL 1 //宏定义 通信速率(默认为1,如不能通信可加大数值)
//地址模式的设置
//#define TM1640MEDO_ADD 0x40 //宏定义 自动加一模式
#define TM1640MEDO_ADD 0x44 //宏定义 固定地址模式(推荐)
//显示亮度的设置
//#define TM1640MEDO_DISPLAY 0x88 //宏定义 亮度 最小
//#define TM1640MEDO_DISPLAY 0x89 //宏定义 亮度
#define TM1640MEDO_DISPLAY 0x8a //宏定义 亮度
//#define TM1640MEDO_DISPLAY 0x8b //宏定义 亮度
//#define TM1640MEDO_DISPLAY 0x8c //宏定义 亮度(推荐)
//#define TM1640MEDO_DISPLAY 0x8d //宏定义 亮度
//#define TM1640MEDO_DISPLAY 0x8f //宏定义 亮度 最大
#define TM1640MEDO_DISPLAY_OFF 0x80 //宏定义 亮度 关
char date1[][16]={0x300x480x480x480x480x480x300x000x300x480x480x480x480x480x300x00//0
0x200x600x200x200x200x200x700x000x200x600x200x200x200x200x700x00//1
0x300x480x080x100x200x400x780x000x300x480x080x100x200x400x780x00//2
0x300x480x080x300x080x480x300x000x300x480x080x300x080x480x300x00//3
0x100x300x300x500x500x780x100x000x000x000x020x000x000x000x000x00//4
0x780x400x400x700x080x080x700x000x780x400x400x700x080x080x700x00//5
0x300x480x400x700x480x480x300x000x300x480x400x700x480x480x300x00 //6
0x780x480x080x100x200x200x200x000x780x480x080x100x200x200x200x00//7
0x300x480x480x300x480x480x300x000x300x480x480x300x480x480x300x00 //8
0x300x480x480x380x080x480x300x000x300x480x480x380x080x480x300x00 //9
0x000x0C0x0C0x000x000x0C0x0C0x000x000x000x020x000x000x000x000x00 //冒号
0x000x000x000x000x000x000x000x000x000x000x020x000x000x000x000x00 //空白
0x000x100x060x080x080x080x060x000x000x000x000x000x000x000x000x00 //温度单位
};
void TM1640_start(){ //通信时序 启始(基础GPIO操作)(低层)
HAL_GPIO_WritePin(TM1640_GPIOPORTTM1640_DINGPIO_PIN_SET); //接口输出高电平1
delay_us(DEL);
HAL_GPIO_WritePin(TM1640_GPIOPORTTM1640_SCLKGPIO_PIN_SET); //接口输出高电平1
delay_us(DEL);
HAL_GPIO_WritePin(TM1640_GPIOPORTTM1640_DINGPIO_PIN_RESET); //接口输出0
delay_us(DEL);
HAL_GPIO_WritePin(TM1640_GPIOPORTTM1640_SCLKGPIO_PIN_RESET); //接口输出0
delay_us(DEL);
}
void TM1640_stop(){ //通信时序 结束(基础GPIO操作)(低层)
HAL_GPIO_WritePin(TM1640_GPIOPORTTM1640_SCLKGPIO_PIN_RESET); //接口输出高电平0
delay_us(DEL);
HAL_GPIO_WritePin(TM1640_GPIOPORTTM1640_DINGPIO_PIN_RESET); //接口输出0
delay_us(DEL);
HAL_GPIO_WritePin(TM1640_GPIOPORTTM1640_SCLKGPIO_PIN_SET); //接口输出高电平1
delay_us(DEL);
HAL_GPIO_WritePin(TM1640_GPIOPORTTM1640_DINGPIO_PIN_SET); //接口输出高电平1
delay_us(DEL);
HAL_GPIO_WritePin(TM1640_GPIOPORTTM1640_SCLKGPIO_PIN_SET); //接口输出高电平1
}
void TM1640_write(u8 date){ //写数据(低层)
u8 i;
u8 aa;
aa=date;
HAL_GPIO_WritePin(TM1640_GPIOPORTTM1640_DINGPIO_PIN_RESET); //接口输出0
HAL_GPIO_WritePin(TM1640_GPIOPORTTM1640_SCLKGPIO_PIN_RESET);
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 6513 2019-01-19 15:45 dianzhen\TM1640.c
文件 525 2018-11-16 18:31 dianzhen\TM1640.h
目录 0 2018-12-11 16:35 dianzhen
----------- --------- ---------- ----- ----
7038 3
- 上一篇:汇编语言,矩阵相乘课程设计
- 下一篇:基于STM32的GPS定位接收显示
相关资源
- 基于STM32的GPS定位接收显示
- STM32F103+GPRS原理图 PCB制作PM2.5检测仪和
- STM32F030实现AM2302模块,stm32stm8系列基
- stm32f1+esp8266+温湿度+光强+噪音+红外检
- STM32H743全部封装IO引脚分配表.xlsx
- STM32F103下的编码器程序
- stm32读取陀螺仪MPU6050发送数据到串口
- STM32控制锁相环频综芯片HMC704的程序
- STM32 PCB原理图
- 嵌入式网络那些事-STM32物联实战完整
- 16×16点阵(滚动显示)\\汉字LED点阵显
-
STM32f103 jli
nk命令行 SWD方式烧写脚本 - STM32F0,F1,F2,F3,F4固件包库,DFP文
- STM32F407驱动AD7606的8路16位AD同步采样含
- 基于STM32的 ADXL345三轴测量角度 软件
- STM32+BC95核心板原理图
- STM32驱动AD9850,串行方式,完整工程
- stm32红外程序
- stm32-esp8266客户端驱动
- KEIL5.23中UCOS-ii移植全过程stm32
- AD元件库包括STM32
- STM32 F103R6 寄存器方式读写GPIO源代码
- ADXL345 STM32 SPI 代码亲测可用
- STM32无刷直流电机PWM控制
- STM32封装库和原理图
- 16X168X8点阵字库
- 用stm32以软件IIC方式驱动1602 解压密码
- ASC12X24点阵字库
- 野火STM32教程之26-计算器(需LCD触摸支
- 兼容超级终端Ymodem协议的stm32程序更新
评论
共有 条评论