你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32f103实战之驱动32*32 RGB点阵

[复制链接]
tymaker 发布时间:2015-9-15 18:36
本帖最后由 geek1024 于 2015-9-16 19:05 编辑
& z7 |# H" A: ]/ G1 C0 K* T: C( B+ ^0 P$ l  R

前段时间活动,有幸得到(骗到)一块stm32板子,玩了几天资料带的例子,也没啥意思,后来就寻思还是做点东西出来。我也是个三天打鱼,两天晒网的人,三分钟热度。正巧手里有两块RGB点阵屏,寻思用啥驱动才好。。。后面还有好多故事,不说了。

正文:

正式开始大概是7月份,其实在刚到手的时候,就写了个最简单的驱动,能显示四个汉字,后来一直没玩,直到放假,放假时间长,没啥事干就寻思做点啥玩玩。中间制作,老是忘记拍(懒),有多少就放多少图,努力介绍清楚。


0 |- a( ]7 H  V6 ^7 o

这大概是7月份,算得上是第一版。之后就断了没继续弄,大概到8月份才重启项目。


0 K( ]) n9 m/ o+ w, z

之后就是改驱动,优化,增加功能,和一边需要什么功能,就学什么功能,从GPIO 到 Systick 、 后来需要按键,就去学外部中断,学完外部中断,就面临着中断优先级问题,这又学了几天NVIC 知识。

这看了日期,是8月18日拍摄的,时间过得真是快。。。

增加了温度和湿度显示,用的是常见的dht11正好有温度接口,估计是给ds18b20准备的,单总线接口,不过正好都是单总线接口。

- a: C; s$ v6 N; F. M

后来8月21 脑袋短路,开始做外壳,量尺寸,锯木头板。又是一天时间。


1 q; B- I/ _, l/ U: W

图片右下角蓝色是dht11 电池右边的是w25x16 2Mbyte flash 模块。显示的数据就放在它里面,每次需要改变显示内容是,从里面读取数据。

2 s0 h3 h; {/ h$ U! s) \9 b; x


; w" K0 x$ ^$ e  r3 D- }: i


' p# {- D$ u0 y; x

接口内部特写。 引出了电源口,方便电池供电,引出了uart1,显示信息,这里说下,板子上UART1直接接到usb转串口芯片上,没有引到GPIO上,好在强大的stm32,能映射端口,这不禁想起了STC单片机也能映射端口,越来越讨厌stc的广告。还有当然要引出SWD用于烧写程序,我可不想每次都打开上盖去烧写程序,SWD接口只需要IO、SCK、GND三条线,强大!!!


. i  G2 X* _; k8 R  o- D& M, E2 a  T
5 o% @/ h) {; ~" P+ {% l5 h9 j

这是开学前一天拍的,说好的开学前发帖。。。  拖到了今天。


# O5 K" }4 U! t$ m+ ?$ B& H4 @2 [

================================================================================

至于显示,很简单,本人菜鸟,没能实现全彩显示,最多只能实现显示7种颜色。翻到YouTube上国外大神发的讲解:链接在此 。英语差的不行,看不懂,但是驱动是通过FPGA去调pwm吧,驱动rgb点阵屏不像普通单色、双色点阵屏,通过595+138就能实现,RGB驱动是要通过专用恒流驱动芯片去驱动,常用的恒流驱动芯片分两种,一种是像595一样,功能只是信号输出。还有一种是能输出16位的PWM信号的专用驱动芯片。现在全彩点阵,基本上都是用后者驱动。能轻松实现65536*3种颜色变化。再通过强大的FPGA去写入数据。

只是单独显示文字的话,简单,比如显示红色(32*32)点阵,首先定义一个最少128字节的缓存。把要显示的数据从flash 调到 缓存中去,然后通过算法,将数据送出去,循环显示就行。看似简单,要实现复杂点效果还是挺难的。

  f- G, F2 n% e% N3 x# Z# h- V" s

操作:默认上电时动态显示汉字,字模放在w25x16里,现在理论显示65536个汉字,当按下用户按键时,切换到显示时间模式,上面显示温度湿度,下面显示时间。


$ x1 s" F2 T9 F' E0 e* a! g! `. d, x

就这样吧,遗忘的楼下补吧。想到就先这么多。通过这个项目,确实比单独玩单一的例子强太多了。  菜鸟发帖,不明之处还请见谅。


$ N+ U+ u8 J2 w1 H
' }  \. r! \. o- z& f7 I
收藏 1 评论12 发布时间:2015-9-15 18:36

举报

12个回答
aoxiangwode2008 回答时间:2015-9-15 19:06:51
很好 不错。
戏如人生 回答时间:2015-9-15 19:25:33
不错!!!
你好我好大家好! 回答时间:2015-9-15 20:26:42
不错               
anny 回答时间:2015-9-16 09:07:47
不错,支持一下
星辰一方 回答时间:2015-9-16 09:27:34
不错,神州1号……楼主PCB自己打板吗?
" O" o5 |3 H* q5 F7 o8 _
JackieLaura 回答时间:2015-9-16 10:53:59
不错,谢谢分享
stmcu.org.png
yanhaijian 回答时间:2015-9-16 13:00:23
学生能做的这样很不错了。
netlhx 回答时间:2015-9-16 13:50:42
好东西,可以玩点花样出来了
tymaker 回答时间:2015-9-16 19:03:10
yanhaijian 发表于 2015-9-16 13:00
' _) e  s) w1 h0 E& _学生能做的这样很不错了。
( `2 Z9 N7 x* K1 ]- L
其实这只是那时拍的,看似是显示时间,其实可以通过底部用户按键切换到移屏显示汉字和显示dht11温度,湿度。
wofei1314 回答时间:2015-9-17 09:02:24
这个酷~$ n& v' P- n0 a3 x! ^. ?

- w/ ?$ R; C( ]. u& |持续关注!
Inc_brza 回答时间:2015-9-17 09:33:51
我更加关注楼主的屏在哪里买的,多少钱
tymaker 回答时间:2015-9-23 19:33:46
Inc_brza 发表于 2015-9-17 09:33
& f2 I7 ~2 _" ]$ o; J( g8 K2 g: I4 [8 ~我更加关注楼主的屏在哪里买的,多少钱

7 e& e' `! [. G$ S. E' H6 D地摊掏的,至于价格嘛,我要说3块屏花了10块钱。不过上面有掉焊盘的

所属标签

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版