[牛人杂谈] 新唐使用笔记 - 使用牛桥调试 MAX7219 模块

[复制链接]
6199|28
 楼主| slotg 发表于 2015-3-27 23:43 | 显示全部楼层 |阅读模式
本帖最后由 slotg 于 2015-3-27 23:46 编辑

手上的牛桥 (Nu-Bridge) 已经用了一段时间了,只不过先前只是单纯的拿它做为 USB 对串口的转换,最近才发现除此之外还有其他好用的功能,这里说一个使用牛桥调试 MAX7219 模块的作法:

MAX7219 是一颗串行输入/输出驱动共阴极显示器的IC,单颗可驱动8位数七段带小数点的数码管或是8x8点阵LED,每一颗 MAX7219 的输出可串接更多的 MAX7219 来增加显示的内容,串行输入是使用 SPI 接口,我们将牛桥 SPI 相应的管脚连接到 MAX7219 相应的管脚,运行 NuBridge 程序后编写脚本就可以输出数据给 MAX7219,如此可以不用连接单片机就可以调试 MAX7219 内部的功能。

网上可以买到的 MAX7219 模块有2种,由于模块需要 +5V 供电因此需要先将牛桥内部决定工作电压的短路插销移到 +5V 的位置:

P05.JPG

模块与牛桥间的连接如下:

P03.JPG

运行程序

P01.JPG

运行时的画面

P04.JPG

按下 SPI脚本 按钮可以看到脚本的格式说明

P02.JPG


我们先连接上8位数七段数码管模块,参考规格书上寄存器位址与数据说明填上脚本让数码管显示 12345678

  1. /S 09 FF /P
  2. /S 0A 08 /P
  3. /S 0B 07 /P
  4. /S 0C 01 /P
  5. /S 0F 00 /P

  6. /S 01 08 /P
  7. /S 02 07 /P
  8. /S 03 06 /P
  9. /S 04 05 /P
  10. /S 05 04 /P
  11. /S 06 03 /P
  12. /S 07 02 /P
  13. /S 08 01 /P

DSC01067.JPG

MAX7219 寄存器 0A 控制显示的亮度,我们改变一下数据看看亮度变化的效果:

设定成最暗
/S 0A 00 /P

DSC01071.JPG

设定成最亮 
/S 0A 0F /P

DSC01072.JPG


换上8x8点阵模块,填上脚本让模块画个框

  1. /S 09 00 /P
  2. /S 0A 08 /P
  3. /S 0B 07 /P
  4. /S 0C 01 /P
  5. /S 0F 00 /P

  6. /S 01 FF /P
  7. /S 02 81 /P
  8. /S 03 81 /P
  9. /S 04 81 /P
  10. /S 05 81 /P
  11. /S 06 81 /P
  12. /S 07 81 /P
  13. /S 08 FF /P

DSC01061.JPG


画个小红人

  1. /S 09 00 /P
  2. /S 0A 08 /P
  3. /S 0B 07 /P
  4. /S 0C 01 /P
  5. /S 0F 00 /P

  6. /S 01 3C /P
  7. /S 02 3C /P
  8. /S 03 18 /P
  9. /S 04 7E /P
  10. /S 05 99 /P
  11. /S 06 99 /P
  12. /S 07 24 /P
  13. /S 08 66 /P

DSC01062.JPG


很有意思的调试方式,目前网上可以买到很多模块的接口方式是使用 SPI 或是 I2C,利用牛桥可以在不用编程的情况下先行调试模块的功能真的是很方便。


牛桥使用说明书 (英文)
Nu-Bridge User Manual EN Rev1. 00.pdf (4.78 MB, 下载次数: 94)

MAX7219 规格书:
MAX7219中文.pdf (316.67 KB, 下载次数: 16)
MAX7219英文.pdf (179.88 KB, 下载次数: 3)

598330983 发表于 2015-3-28 08:36 | 显示全部楼层
沙发,楼主分享这个很有创意啊,我要研究一下,这个7219以前我也用过。
598330983 发表于 2015-3-28 08:37 | 显示全部楼层
不过我没有控制过阵列,都是控制数码管了,我要跟楼主学习一下如何控制阵列。
598330983 发表于 2015-3-28 08:38 | 显示全部楼层
很好奇,那个阵列画图的时候是不是要先算好啊,做好点阵。
598330983 发表于 2015-3-28 08:39 | 显示全部楼层
当时我搞了这个芯片,之后按照手册自己写了个代码,用的80C51,在430上也用过。用新唐的就可以不用写通信协议了,直接用SPI接口。
 楼主| slotg 发表于 2015-3-28 08:48 | 显示全部楼层
598330983 发表于 2015-3-28 08:38
很好奇,那个阵列画图的时候是不是要先算好啊,做好点阵。

是的,先算好要显示的数据
598330983 发表于 2015-3-28 11:12 | 显示全部楼层
slotg 发表于 2015-3-28 08:48
是的,先算好要显示的数据

这样看来,就是要提前规划好内容了,然后存储起来,用的时候调用。
598330983 发表于 2015-3-28 11:12 | 显示全部楼层
最后一个图片的显示做的很有才。
mintspring 发表于 2015-3-28 11:46 | 显示全部楼层
这个如果谁开发个通用的驱动,就好了,很方便移植。
mintspring 发表于 2015-3-28 11:47 | 显示全部楼层
前提是在有SPI收发器的芯片。
quray1985 发表于 2015-3-29 09:09 | 显示全部楼层
楼主,牛桥现在电路图和固件开源了吗
一看到调试器就手痒想自己做一个
 楼主| slotg 发表于 2015-3-29 10:19 | 显示全部楼层
quray1985 发表于 2015-3-29 09:09
楼主,牛桥现在电路图和固件开源了吗
一看到调试器就手痒想自己做一个

https://bbs.21ic.com/icview-777554-1-1.html
quray1985 发表于 2015-3-30 21:30 | 显示全部楼层
slotg 发表于 2015-3-29 10:19
https://bbs.21ic.com/icview-777554-1-1.html

看到了,非常感谢
mintspring 发表于 2015-3-31 07:38 来自手机 | 显示全部楼层
做的非常完美啊,谢谢分享
mintspring 发表于 2015-3-31 07:38 来自手机 | 显示全部楼层
牛桥没有开原固件代码,但是提供固件
mintspring 发表于 2015-3-31 07:38 来自手机 | 显示全部楼层
根据楼主的帖子很容易就做出来了
 楼主| slotg 发表于 2015-3-31 08:16 | 显示全部楼层
mintspring 发表于 2015-3-31 07:38
做的非常完美啊,谢谢分享

谢谢,一起研究
springvirus 发表于 2015-3-31 08:46 | 显示全部楼层
很好,很实用
wright0418 发表于 2015-3-31 08:53 | 显示全部楼层
mintspring 发表于 2015-3-31 07:38
牛桥没有开原固件代码,但是提供固件

牛橋的代碼都有開放 , 你可以看一下
http://114.80.222.240/forum.php? ... &extra=page%3D1
mintspring 发表于 2015-3-31 08:58 | 显示全部楼层
果然有开放。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

38

主题

1177

帖子

6

粉丝
快速回复 在线客服 返回列表 返回顶部