注册 登录
电子工程世界-论坛 返回首页 EEWORLD首页 频道 EE大学堂 下载中心 Datasheet 专题
shikghappy的个人空间 https://home.eeworld.com.cn/space-uid-622532.html [收藏] [复制] [分享] [RSS]
日志

STM32之USB HID控制P6全彩LED模组

热度 1已有 3923 次阅读2016-7-6 21:06 | LED模组

做了比较长时间的LED显示屏相关的工作,不论软件还是硬件,以及上位机也一直在做。硬件原理都是一样的没什么特别的,也就动态扫描着显示。
    最近用STM32做了一个相对比较好玩的,以下按步骤详细道来。
    用PC端软件通过USB控制一张P6全彩的LED屏,所谓P6就是灯与灯之间的间距为6mm。用的是3528封装的贴片RGB灯。模组是HUB75接口的。STM32与显示模组之间的连接关系如下:
             1    2                         P6             STM32         P6             STM32
        RD1 -|    |- GD1         RD1 <-----> PA0      A   <-----> PB13            |
        BD1 -|    |- N           GD1 <-----> PA1      B   <-----> PB14            |
        RD2 -|    |- GD2         BD1 <-----> PA2      C   <-----> PB15            |
        BD2 -|    |- N           RD2 <-----> PA3      S   <-----> PA9             |
        A   -|    |- B           GD2 <-----> PA4      L   <-----> PA8             |
        C   -|    |- N           BD2 <-----> PA5      OE  <-----> PB12            |
        S   -|    |- L
        O   -|    |- N
            15    16              N   <-----> GND
                    HUB75接口

    Contex-M3系列的bit-band不错,对端口或者内部RAM读写都很方便。所以这里对端口操作都采用了这个方式,实际测试速度可以达到2M左右,对驱动这个板足矣。
    接下来就是对LED驱动芯片的时序进行模拟了。
    购买模组的时候板子上面采用的国产的一款16bit的驱动芯片,觉得不爽,于是换成了聚积的MBI5039,这颗带有错误侦测功能,在以后结合PC端做上此功能,这里就暂时放在一边。具体的资料可以google一下datasheet。
   

MBI5039时序.jpg


    接下来就是编程的问题了,结合逻辑分析仪,很方便看出时序
   

逻辑分析仪截取的图片.jpg


    PC端软件用了C#,HID方式也很好实现
   

PC_c#.jpg


    连接USB,得到实际的效果图
   

实际效果.jpg


   

用的是mini小板驱动.jpg


   今天太晚了,没时间细细道来,有时间或有人有兴趣的话再写一个详细的说明。
发表评论 评论 (1 个评论)
回复 eric_wang 2016-7-7 11:06
感谢分享,欢迎同时分享到论坛中,与大家一起讨论 https://bbs.eeworld.com.cn/forum-126-1.html

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

热门文章