news 2026/9/4 2:57:04

WS1625/CS1625 LED芯片的驱动

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
WS1625/CS1625 LED芯片的驱动

1.驱动按照规格书写就行,主要是电路问题,规格书感觉有问题,规格书给出的电路不适用。

注意事项:

1. SDA和SCL一定要直接连到MCU,不要串电阻,也不要并电容;(我是一直点不了,看案列发现直连才意识到的,把串联电阻短路,把并联电容拆了就好了)。

2.如果你还是想加电阻电容,请测通后自己再加,再测试,

以下是驱动

WS1625Driver.h

#ifndef __WS1625_DRIVER_H #define __WS1625_DRIVER_H typedef unsigned char BYTE; typedef unsigned int WORD; //*********************SDA********************************************* #define WS1625_SDA_SET _pb6=1 #define WS1625_SDA_CLR _pb6=0 //*********************SCL********************************************* #define WS1625_SCL_SET _pb4=1 #define WS1625_SCL_CLR _pb4=0 //////////////////////////////////////// //如何控制 //1.模式指令+显示模式指令 //2.地址命令+数据 n个 //3.模式指令+显示控制指令 /////////////////////////////////////// #define MODE_CMD 0X48//模式命令 //显示模式指令 //#define SCAN_TIME_0_5_T (0X00) #define SCAN_TIME_1_0_T (0X10) //#define SCAN_TIME_1_5_T (0X20) //#define SCAN_TIME_2_0_T (0X30) #define SCAN_TIME_CHOOSE SCAN_TIME_1_0_T #define DSP_MODE_11_SEG_12 ((SCAN_TIME_CHOOSE)|(0X00)) #define DSP_MODE_11_SEG_11 ((SCAN_TIME_CHOOSE)|(0X01)) #define DSP_MODE_11_SEG_10 ((SCAN_TIME_CHOOSE)|(0X02)) #define DSP_MODE_11_SEG_9 ((SCAN_TIME_CHOOSE)|(0X03)) #define DSP_MODE_11_SEG_8 ((SCAN_TIME_CHOOSE)|(0X04)) #define DSP_MODE_11_SEG_7 ((SCAN_TIME_CHOOSE)|(0X05)) #define DSP_MODE_11_SEG_6 ((SCAN_TIME_CHOOSE)|(0X06)) #define DSP_MODE_11_SEG_5 ((SCAN_TIME_CHOOSE)|(0X07)) #define DSP_MODE_11_SEG_4 ((SCAN_TIME_CHOOSE)|(0X08)) #define DSP_MODE_11_SEG_3 ((SCAN_TIME_CHOOSE)|(0X09)) #define DSP_MODE_11_SEG_2 ((SCAN_TIME_CHOOSE)|(0X0A)) #define DSP_MODE_11_SEG_1 ((SCAN_TIME_CHOOSE)|(0X0B)) //地址命令 #define ADDR_CMD_START_ADDR 0XC0//地址0XC0~0XD7,一共24个 //显示模式指令 #define DSP_CONTROL_BRIGHTNESS_1 (0X90) #define DSP_CONTROL_BRIGHTNESS_2 (0X91) #define DSP_CONTROL_BRIGHTNESS_3 (0X92) #define DSP_CONTROL_BRIGHTNESS_4 (0X93) #define DSP_CONTROL_BRIGHTNESS_5 (0X94) #define DSP_CONTROL_BRIGHTNESS_6 (0X95) #define DSP_CONTROL_BRIGHTNESS_7 (0X96) #define DSP_CONTROL_BRIGHTNESS_8 (0X97) #define DSP_CONTROL_BRIGHTNESS_9 (0X98) #define DSP_CONTROL_BRIGHTNESS_10 (0X99) #define DSP_CONTROL_BRIGHTNESS_11 (0X9A) #define DSP_CONTROL_BRIGHTNESS_12 (0X9B) #define DSP_CONTROL_BRIGHTNESS_13 (0X9C) #define DSP_CONTROL_BRIGHTNESS_14 (0X9D) #define DSP_CONTROL_BRIGHTNESS_15 (0X9E) #define DSP_CONTROL_BRIGHTNESS_16 (0X9F) #define DSP_CONTROL_SLEEP (0X88) #define DSP_CONTROL_CLOSE (0X80) extern WORD D_Ws1625Buf[12]; extern void WS1625_DRIVER(); #endif

WS1625Driver.c

#include "WS1625Driver.h" WORD D_Ws1625Buf[12]; void WS1625_DELAY()//延迟 { asm("nop"); asm("nop"); asm("nop"); asm("nop"); } void WS1625_START() { WS1625_SCL_SET; WS1625_SDA_SET; WS1625_DELAY(); WS1625_SDA_CLR; WS1625_DELAY(); WS1625_SCL_CLR; WS1625_DELAY(); } void WS1625_STOP() { WS1625_SCL_SET; WS1625_DELAY(); WS1625_SDA_SET; WS1625_DELAY(); } void WS1625_ACK() { WS1625_SDA_CLR; WS1625_DELAY(); WS1625_SCL_SET; WS1625_DELAY(); WS1625_SCL_CLR; WS1625_DELAY(); } void WS1625_SND(BYTE cmd,BYTE dat) { BYTE i; WS1625_START(); for(i=0;i<8;i++) { if(cmd&0X80)WS1625_SDA_SET; else WS1625_SDA_CLR; WS1625_DELAY(); WS1625_SCL_SET; WS1625_DELAY(); WS1625_SCL_CLR; WS1625_DELAY(); cmd<<=1; } WS1625_ACK(); for(i=0;i<8;i++) { if(dat&0X80)WS1625_SDA_SET; else WS1625_SDA_CLR; WS1625_DELAY(); WS1625_SCL_SET; WS1625_DELAY(); WS1625_SCL_CLR; WS1625_DELAY(); dat <<= 1; } WS1625_ACK(); WS1625_STOP(); } void WS1625_DRIVER() { BYTE i; WS1625_SND(MODE_CMD,DSP_MODE_11_SEG_12);//11段12位 for(i=0;i<12;i++) { WS1625_SND(ADDR_CMD_START_ADDR+(2*i),D_Ws1625Buf[i]&0X00FF); WS1625_SND(ADDR_CMD_START_ADDR+(2*i)+1,D_Ws1625Buf[i]>>8); } WS1625_SND(MODE_CMD,DSP_CONTROL_BRIGHTNESS_16);//亮度选择,可以根据休眠标志自己选择亮度 }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/3 1:53:36

大模型面试题75:讲解一下GRPO的数据回放

GRPO的数据回放&#xff1a;小白从“是什么”到“怎么用”的全面讲解 在GRPO&#xff08;群体相对策略优化&#xff09;训练LLM的过程中&#xff0c;数据回放就像学生的错题本好题本——把之前训练中“表现好的样本”存起来&#xff0c;后续训练时再拿出来反复用&#xff0c;核…

作者头像 李华
网站建设 2026/9/2 21:29:06

Jackson 1.x核心用法与Spring 3.x集成

一、Jackson 1.x 核心使用方式 1. 基本依赖&#xff08;Maven&#xff09; <dependency><groupId>org.codehaus.jackson</groupId><artifactId>jackson-core-asl</artifactId><version>1.9.13</version> </dependency> <de…

作者头像 李华
网站建设 2026/9/3 23:57:00

雷池WAF安装

干净的Ubuntu Server 24 # 下载并运行官方安装脚本 bash -c "$(curl -fsSLk https://waf-ce.chaitin.cn/release/latest/manager.sh)"安装后&#xff0c;可以通过frp暴露到公网上 参考&#xff1a; https://blog.csdn.net/lpfasd123/article/details/156835633 ht…

作者头像 李华
网站建设 2026/9/2 22:06:39

RNA-seq数据分析实战 | 2026年第2期,开启你的生信学习之旅

完成本门课程&#xff0c;学员无需写代码&#xff0c;即可完全基于 Galaxy 生信云平台进行 RNA-seq 数据分析&#xff0c;包括上游表达量矩阵的获得和下游发表级统计图表制作。随着测序技术的飞速发展&#xff0c;RNA-seq 已经成为生物医学研究的常规手段&#xff0c; 掌握 RNA…

作者头像 李华