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);//亮度选择,可以根据休眠标志自己选择亮度 }

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1163657.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

浩克下载APP(安卓手机下载工具)

浩克下载APP是一款集成了多种下载工具的应用&#xff0c;旨在满足用户对资源下载的需求。无论是音乐、视频、文档还是其他文件类型&#xff0c;浩克下载APP都能帮助用户快速找到并下载所需资源。其简洁易用的界面和高效的下载管理系统受到了众多用户的喜爱。 软件功能 多种资源…

2026 最新 Claude Skills 保姆级教程及实践!

其实想写这篇文章想写很久了&#xff0c;Claude Skills 现在也已经&#x1f525;的一塌糊涂了&#xff0c; 我也看了很多大佬的文章&#xff0c;收藏了一堆的教程&#xff0c;就让我一度只能粗鲁的喊了好几遍&#xff1a;卧槽&#xff0c;牛逼&#xff0c;还不忘加几个表情&…

破译微软面试密码:从真题解析到人才选拔哲学的深度探索

破译微软面试密码&#xff1a;从真题解析到人才选拔哲学的深度探索 引言&#xff1a;为何微软面试成为科技行业风向标 在科技行业的人才选拔体系中&#xff0c;微软公司的面试流程一直被视为标杆和风向标。自1975年比尔盖茨和保罗艾伦创立以来&#xff0c;微软不仅塑造了全球…

大模型面试题74:在使用GRPO训练LLM时,训练数据有什么要求?

GRPO训练LLM时的训练数据要求&#xff1a;小白从基础到进阶详解 GRPO&#xff08;群体相对策略优化&#xff09;的核心是 “多答案对比选优”&#xff0c;训练数据的好坏直接决定模型能不能学会“挑出好答案”。咱们从小白能懂的基础要求&#xff0c;一步步讲到GRPO专属的进阶要…

金仓数据库引领国产化替代新范式:构建高效、安全的文档型数据库迁移解决方案

目录 一、为何企业正在加速推进“文档型数据库迁移替换”&#xff1f; 二、痛点剖析&#xff1a;传统文档型数据库架构面临哪些现实挑战&#xff1f; 三、方案亮点&#xff1a;金仓数据库如何实现平滑高效的文档数据库迁移&#xff1f; 1. 技术架构创新&#xff1a;原生JSON…

“每秒300笔”就是高频交易?关于量化监管,你可能想错了三件事

最近&#xff0c;关于量化交易的讨论再次被推上了风口浪尖&#xff0c;在许多普通投资者眼中&#xff0c;“量化”似乎已经成了一个带有负面色彩的词汇。在这场激烈的讨论中&#xff0c;一个核心的误解被反复提及&#xff1a;认为监管的关键在于设定一个简单的“每秒交易笔数”…

SGMICRO圣邦微 SGM810-SXN3/TR SOT23-3 监控和复位芯片

特性是MAX803/MAX809/MAX810和ADM803/ADM809/ADM810的卓越升级版高精度固定检测选项&#xff1a;1.8V、2.5V、3V、3.3V和5V低电流消耗&#xff1a;13μA&#xff08;典型值&#xff09;150ms&#xff08;最小值&#xff09;上电复位复位输出选项&#xff1a;漏极开路RESET输出&…

SGMICRO圣邦微 SGM811B-TXKA4G/TR SOT143 监控和复位芯片

功能特性 MAX811/MAX812和ADM811/ADM812的卓越升级版 高精度固定检测选项:3V和3.3V 低供电电流:<1uA(典型值) 200毫秒(典型值)上电复位脉冲宽度 复位输出选项: 低电平有效复位输出:SGM811B 高电平复位输出:SGM812B 手动复位输入 复位有效电压低至VccIV -40C至125C工作温度范…

告别繁琐中转!DolphinDB FTP 插件上新:一键实现跨系统数据无缝同步

在数据备份分发、跨平台文件采集等场景中&#xff0c;数据的高效、稳定传输是业务连续性的关键。传统工作流中&#xff0c;用户往往需要借助第三方 FTP 工具进行文件中转&#xff0c;再通过脚本或手动操作导入 DolphinDB。这种多工具切换的方式不仅可能导致流程割裂、操作繁琐&…

面試造火箭,工作擰螺絲:90%的工程師在做重複的CRUD

面試造火箭&#xff0c;工作擰螺絲&#xff1a;90%的工程師在做重複的CRUD引言&#xff1a;技術職場的荒誕劇「請設計一個分散式系統來處理每秒百萬級別的請求。」 「如何優化一個演算法&#xff0c;使其在時間複雜度上達到 O(log n)&#xff1f;」 「請解釋 Kafka 的底層實現原…

计算机毕业设计Python+PySpark+Hadoop视频推荐系统 视频弹幕情感分析 大数据毕业设计(源码+文档+PPT+ 讲解)

温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 技术范围&#xff1a;Sprin…

大模型面试题73:简单介绍下GRPO的训练流程。

GRPO训练流程&#xff1a;小白从入门到理解 GRPO&#xff08;群体相对策略优化&#xff09;本质是让大模型像“刷题升级”一样提升推理能力的强化学习方法&#xff0c;核心逻辑是“多试几次→选优改进→不跑偏”&#xff0c;全程不用复杂的额外模型&#xff0c;小白也能一步步看…

资料分享丨Agent开发中的坑与解(附18页PDF下载)

《Agent开发的 “坑” 与 “解”》由百度智能云相关人员编制。报告指出理想中智能体功能强大&#xff0c;但现实开发存在诸多问题。从启动前、开发中、上线后三个阶段&#xff0c;详细阐述了智能体开发各环节面临的难题&#xff0c;如启动前目标模糊、开发中模型选择困难等&…

LLM Fine-Tuning|七阶段微调【工程系列】1.总览

七阶段微调(7-Stage Fine-Tuning)流程的本质不是“训练步骤”&#xff0c;而是&#xff1a; 一套覆盖模型从“通用能力→领域专家→生产系统→持续演进”的完整工程生命周期 解决的不是"能不能训"&#xff0c;而是能不能 稳定训上线长期用持续改而不翻车 1.LLM生命周…

1~3年Java工程师成功抓住风口转行AI大模型

为什么学习AI大模型? AI大模型代表了人工智能技术的前沿,掌握相关技能不仅能提升个人竞争力,还能快速开发复杂的AI应用,节省资源成本。随着大模型在金融、医疗、教育等行业的广泛应用,具备相关经验的开发者在就业市场上备受青睐。 学习AI大模型需要持续的努力和实践,但只要坚持…

LLM Fine-Tuning|七阶段微调【工程系列】2.第一阶段:数据集准备

继上一篇LLM Fine-Tuning&#xff5c;七阶段微调【工程系列】1.总览&#xff0c;本篇主要针对&#xff0c;第一阶段|数据集准备&#xff0c;进行工程方法论的分解 1.核心任务 构建高质量训练对(High-Quality Training Pairs) 目标&#xff1a;决定模型行为边界与上线 具体包…

大廠光環褪色後:從FAANG離職,我才發現自己什麼都不是

大廠光環褪色後&#xff1a;從FAANG離職&#xff0c;我才發現自己什麼都不是 一、離開的那一天 當我最後一次刷過那張印著公司標誌的門禁卡&#xff0c;玻璃門無聲滑開的瞬間&#xff0c;我意識到這將是我最後一次以「FAANG員工」的身份走進這棟閃閃發光的建築。電梯鏡面裡反…

大模型智能体进化论:从“单细胞思考”到“战略大脑

当你让AI规划一次旅行&#xff0c;一个只给出一堆乱糟糟的景点列表&#xff0c;另一个能拿出有预算、行程安排和备选方案的完整计划&#xff1b;两者的差别&#xff0c;悄悄体现了智能体技术背后达成的三次重要进步。 想象一下&#xff0c;你命令智能体&#xff1a;“为我策划一…

LLM Fine-Tuning|七阶段微调【工程系列】3.第二阶段:模型初始化

本篇主要针对&#xff0c;第二阶段|模型初始化&#xff0c;进行工程方法论的分解 简单理解&#xff1a;模型的初始化决定训练稳定性与收敛速度 包含,模型初始化(Model Initialisation)阶段的 1.工程定义和核心目标 2.工程视角的 关键操作步骤 3.模型选择的 核心考量点 4.工程中…

技術棧選擇的賭博:押錯技術,職業生涯倒退三年

技術棧選擇的賭博&#xff1a;押錯技術&#xff0c;職業生涯倒退三年引言&#xff1a;技術人的隱形賭場在軟體開發的世界裡&#xff0c;每當我們啟動一個新專案&#xff0c;或是決定深化某項技術能力時&#xff0c;就等於走進了一個看不見的賭場。技術棧選擇這張賭桌上&#xf…