资源简介
在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定位接收显示
相关资源
- STM32F103RC+ADC+DMA多通道采样LCD显示
- I2C读写AT24C02 基于STM32F103 cube116540
- 基于stm32f103ve的程序——跑马灯实验
- 基于STM32RCT6的步进电机驱动程序
- stm32f407上的两个can发送和接收例程
- STM32 led 时钟
- STM32 2.4G通信例程
- 直流无刷电机方波驱动 stm32 例程代码
- STM32中文资料
- STM32蓝牙和串口程序
- STM32f103超声波模块例程
- stm32f103c8t6 4 oled.rar
- stm32f030 IAP Demo(原创)
- STM32基于rt_thread操作系统的SDHC卡文件
- NRF24L01实现51与STM32双向通讯
- STM32F103 串口程序(完整版)
- stm32 ds18b20 温度传感器 测试通过
- stm32官方例程
- STM32F103定时器中断程序
- 武汉理工大学 单片机课程设计 16*16点
- [免费]基于stm32f103ze 的OLED驱动代码
- STM32F103RBT6驱动UC1698控制芯片的160160黑
- STM32F103 DS18B20 V3.5.0固件库驱动程序工
- STM32定时器使用入门。看了这个程序会
- SIM908 SDIO FSMC STM32 FIFO
- 利用译码器74HC595的点阵显示程序和电
- STM32F103 CC2500完整驱动(模拟SPI)
- AD7606采集程序
- 16X16点阵程序(附仿真图和源程序)
- 16x16点阵(滚动显示)论文 程序
评论
共有 条评论