基于stm32f103c8t6最小系统板的ws2812b广告牌设计——桂林电子科技大学软硬件小学期课设

发布时间:2026/7/21 18:06:53

基于stm32f103c8t6最小系统板的ws2812b广告牌设计——桂林电子科技大学软硬件小学期课设
前言由于原理图设计和PCB打板出现些许问题预定准备的字库存储芯片和蓝牙模块没有用上在该背景下我将仅使用最小系统板2个独立按键以及2块8*32的ws2812灯带实现的效果仅是内置好汉字和英文效果。有需要的自行优化。一、项目背景本项目使用 STM32F103C8T6 最小系统板作为控制器驱动两块8×32 WS2812B点阵屏。两块灯板左右级联后共有512颗LED逻辑显示区域为16列×32行。项目最终需要实现显示16×16汉字预设中文内容向上滚动显示英文“hello world”PA11切换中英文内容PA12切换滚动、静止和闪烁模式使用USB-TTL完成程序下载和串口调试从功能上看这只是一个文字滚动灯牌但实现过程中同时涉及WS2812B时序、定时器PWM、DMA、坐标映射、字模、供电、信号完整性和硬件装配等问题。二、项目需求面包板用于后续5v和GND共地外部电源8*32的ws2812灯带在满负载的情况下电流可以达到15.36A而灯带需要的电压至少5V最小系统板一般只能提供3.3Vstm32f103c8t6最小系统板直插式独立按键2个三、项目效果由于学校发的只是2个8*32的灯带如果是8*8取字模的话基本看不清所以用2个灯带拼接在一起。四、项目难点1.WS2812B并不适合只依赖Proteus验证Proteus比较适合验证普通GPIO、按键、串口、定时器和LCD等常规外围电路但WS2812B属于对波形时间要求比较严格的数字器件。它的每个数据位周期大约只有1.25 μs逻辑0和逻辑1并不是通过普通高低电平区分而是通过高电平持续时间区分。因此仿真模型必须准确处理800 kbit/s单总线数据T0H和T1H高电平时间24位GRB颜色顺序多颗灯珠的数据截取和转发帧末尾的复位低电平数百颗灯珠的连续级联。2.WS2812B不是普通LED普通LED只需要输出高低电平而WS2812B内部带有控制芯片每颗灯珠需要接收24位颜色数据顺序通常为G7...G0 → R7...R0 → B7...B0第一颗灯珠保留前24位再把后面的数据转发给下一颗。发送完全部数据后数据线需要保持足够长的低电平让所有灯珠同时锁存颜色。因此驱动程序必须同时保证位周期正确0码和1码高电平宽度正确GRB顺序正确灯珠数量正确发送数据不能中断帧尾复位时间足够。任何一项错误都可能表现为随机颜色、局部点亮或整板爆闪。3. PWM与DMA方案系统时钟为64 MHz一个时钟计数约为1 ÷ 64 MHz 15.625 nsWS2812B每个数据位周期约为1.25 μs因此设置80个定时器计数80 × 15.625 ns 1.25 μs项目采用的PWM比较值为逻辑0CCR 22高电平约0.344 μs 逻辑1CCR 45高电平约0.703 μs程序先把每个数据位转换为22或45再由DMA连续写入TIM1的CCR1寄存器。这样每一个脉冲都由硬件产生稳定性高于软件延时。4.灯板级联与坐标映射1. 物理连接方式容易理解错误最初对灯板内部级联方向的理解有误以为灯珠按照逐列方式连接。实际灯板采用逐行蛇形连接第0行从左到右 第1行从右到左 第2行从左到右 第3行从右到左 ……如果仍然按照普通二维数组计算序号显示出来的文字就会左右翻转、笔画断裂甚至出现左右亮、中间不亮的固定图案。2. 两块灯板级联后的映射两块8×32灯板左右放置左侧灯板物理序号0255 右侧灯板物理序号256511逻辑屏幕尺寸为16×32。坐标转换可以写成panel x / 8; local_x x % 8; base panel * 256; if ((y % 2) 0) index base y * 8 local_x; else index base y * 8 (7 - local_x);这样字模程序只处理普通的x、y坐标底层映射函数负责处理左右灯板和蛇形方向。5.WS2812B的电源电流不能忽略理论上一颗WS2812B全白高亮时电流可能达到约60 mA。512颗全部全白的理论电流可能非常大512 × 60 mA 30.72 A实际项目使用低亮度单色显示电流远低于这个数值但PCB和接线仍不能按照普通小信号电路处理。打板时应考虑5V电源使用较宽铜线或大面积铺铜两块灯板分别注入电源避免让全部电流经过最小系统板灯板入口增加大容量电解电容每个模块附近增加0.1 μF去耦数据地和电源地可靠连接电源接口需要留有足够电流余量。6. 下载接口必须提前考虑因为项目只有USB-TTL没有ST-Link所以需要使用STM32内部Bootloader下载USB-TTL TX → PA10 USB-TTL RX → PA9 USB-TTL GND → STM32 GND打板时应预留PA9PA10GNDBOOT0跳帽或按键RESET按键。五、项目总结在初期准备上没有准备好原理图PA9和PA10引脚没有引出来导致下载插拔困难。在遇到ws2812的各种问题并解决在有限的情况下尽量做出来的半成品。

相关新闻

鸿蒙 ArkTS 实战:Kitchen Cleaning Plan 从厨房清洁计划到餐厨体验工具完整解析

鸿蒙 ArkTS 实战:Kitchen Cleaning Plan 从厨房清洁计划到餐厨体验工具完整解析

2026/7/21 10:46:02

鸿蒙 ArkTS 实战:Kitchen Cleaning Plan 从厨房清洁计划到餐厨体验工具完整解析 前言 Kitchen Cleaning Plan 是一个用鸿蒙 ArkTS 实现的餐厨体验工具,主题聚焦 清洁区域、周期天数、耗材提醒、完成次数和周期提醒。它把家庭厨房、饮食记录、外出就餐和…

鸿蒙 ArkTS 实战:Soup Timer 从煲汤计时器到餐厨体验工具完整解析

鸿蒙 ArkTS 实战:Soup Timer 从煲汤计时器到餐厨体验工具完整解析

2026/7/21 2:44:48

鸿蒙 ArkTS 实战:Soup Timer 从煲汤计时器到餐厨体验工具完整解析 前言 Soup Timer 是一个用鸿蒙 ArkTS 实现的餐厨体验工具,主题聚焦 汤品名称、火候步骤、食材、剩余分钟和功效备注。它把家庭厨房、饮食记录、外出就餐和口味管理中的一个小问题&…

大语言模型J空间机制:从全局工作空间理论到AI安全监控

大语言模型J空间机制:从全局工作空间理论到AI安全监控

2026/7/19 23:35:14

在探索大语言模型内部工作机制的过程中,研究人员发现了一个令人着迷的现象:模型内部存在一种类似人类"意识访问"的机制。这种机制被称为"全局工作空间",在Claude模型中具体表现为J空间(J-space)。…

Buzz:如何在本地电脑上安全高效地完成语音转文字?

Buzz:如何在本地电脑上安全高效地完成语音转文字?

2026/7/21 17:57:45

Buzz:如何在本地电脑上安全高效地完成语音转文字? 【免费下载链接】buzz Buzz transcribes and translates audio offline on your personal computer. Powered by OpenAIs Whisper. 项目地址: https://gitcode.com/GitHub_Trending/buz/buzz 你是…

联邦学习+差分隐私+可信执行环境,AI搜索隐私防护三重盾构建全解析,仅剩最后200家头部企业已部署

联邦学习+差分隐私+可信执行环境,AI搜索隐私防护三重盾构建全解析,仅剩最后200家头部企业已部署

2026/7/21 17:57:45

更多请点击: https://codechina.net 第一章:AI搜索隐私保护的演进逻辑与三重盾范式 AI搜索正从“结果精准性优先”转向“隐私安全与效用并重”的新阶段。其演进逻辑呈现清晰的三阶段跃迁:早期基于查询脱敏与日志匿名化(如k-匿名&…

如何5分钟构建你的私有RAG系统?LEANN终极指南助你节省97%存储空间

如何5分钟构建你的私有RAG系统?LEANN终极指南助你节省97%存储空间

2026/7/21 17:57:45

如何5分钟构建你的私有RAG系统?LEANN终极指南助你节省97%存储空间 【免费下载链接】LEANN [MLsys2026]: RAG on Everything with LEANN. Enjoy 97% storage savings while running a fast, accurate, and 100% private RAG application on your personal device. …

【AI搜索技术全景图谱】:2024年全球7大主流AI搜索方案深度对比与选型指南

【AI搜索技术全景图谱】:2024年全球7大主流AI搜索方案深度对比与选型指南

2026/7/21 17:57:45

更多请点击: https://kaifayun.com 第一章:AI搜索技术全景图谱概览 AI搜索已从传统关键词匹配演进为融合语义理解、多模态感知与实时推理的智能信息获取范式。其技术栈横跨自然语言处理、向量检索、大模型增强、知识图谱融合及用户意图建模等多个关键领…

Vibe终极语音转文字指南:轻松实现本地离线转录的完整解决方案

Vibe终极语音转文字指南:轻松实现本地离线转录的完整解决方案

2026/7/21 17:57:45

Vibe终极语音转文字指南:轻松实现本地离线转录的完整解决方案 【免费下载链接】vibe Transcribe on your own! 项目地址: https://gitcode.com/GitHub_Trending/vib/vibe Vibe是一款功能强大的本地语音转文字工具,让你能够完全离线地将音频和视频…

【WorkBuddy从入门到精通实战教程】使用手册 第 3 章 WorkBuddy 的主界面、任务与工作区

【WorkBuddy从入门到精通实战教程】使用手册 第 3 章 WorkBuddy 的主界面、任务与工作区

2026/7/21 17:47:45

WorkBuddy 主界面可以理解为三个区域:左侧(侧边栏)管理任务,中间(对话区)下达和追踪任务,右侧(结果区)查看文件、变更、预览和最终产物。三个区域分别做什么区域主要用途…

微服务进阶:服务网格与Istio

微服务进阶:服务网格与Istio

2026/7/21 5:45:57

541|微服务进阶:服务网格与Istio 上篇文章我们聊了微服务的基本概念和拆分方法。 但微服务多了,问题也多了: 服务之间怎么通信? 怎么监控每个服务的调用链路? 熔断、限流、重试怎么做? 安全认证怎么统一? 以前这些都靠SDK库(比如Hystrix、Feign),每个服务都要集成…

零售超级终端全域协同:ShareKit 碰一碰商品流转业务落地案例

零售超级终端全域协同:ShareKit 碰一碰商品流转业务落地案例

2026/7/21 9:56:14

一、零售门店全域协同业务背景与行业痛点 1.1 门店超级终端设备矩阵(连锁便利店/商超标准配置) 自助收银Kiosk一体机:顾客结算、自助核销优惠券、商品素材预览;运营折叠平板:店长后台商品上新、图片录入、活动配置、…

噗叽短视频界面分析

噗叽短视频界面分析

2026/7/21 3:09:32

1 和小红书类似,可以采用类似判断方法------------其实他比小红书好判断,因为他没有图片,控件位置几乎是固定的,都不用判断------------2 因为他没有点赞按钮------------而且几乎所有控件位置都是完全一样的,所以我就…

GraphRAG Local + Ollama:微软知识图谱本地化

GraphRAG Local + Ollama:微软知识图谱本地化

2026/7/21 0:06:35

普通 RAG 有个老毛病:你问它「这堆文档整体在讲什么」,它答不上来。因为它只会把问题切成向量,去几十个文本块里捞最相似的几段拼给模型看。可「整体讲什么」这种问题,答案根本不在任何单独一段里——它散在全篇的联系里。 微软的…

AI 数据产品化思考:让分析能力变成可售卖的数据服务

AI 数据产品化思考:让分析能力变成可售卖的数据服务

2026/7/21 0:06:35

AI 数据产品化思考:让分析能力变成可售卖的数据服务 大家好,我是朱大喜。这周一直在复盘具体的项目和技术,最后一篇聊点不一样的东西——数据产品化。做了这么多年数据分析,我发现一个规律:能卖出去的从来不是"分…

基于人机协作的 AI 研发新体系架构:从 Harness 工程到 Loop 工程实践

基于人机协作的 AI 研发新体系架构:从 Harness 工程到 Loop 工程实践

2026/7/21 0:06:35

本文完整呈现了企业级 AI Coding 落地的核心方法论:从 Harness 工程的微观/宏观定义,到 Loop 工程的六大构建模块,再到基于 SDD(规范驱动开发)的工程化落地路径。干货较多,建议收藏细读。 我从 22 年开始就…