打印
[PIC®/AVR®/dsPIC®产品]

【Curiosity Nano测评报告】PIC16F13145 使用CLB驱动7段数码管

[复制链接]
81|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 paparazziuav 于 2024-9-27 01:48 编辑

首先非常高兴能参加这次评测,拿到板子后,从包装到板子,做工细节 非常惊艳



排针是镀锡的,第一次见


排针可以免焊接使用,太惊艳了,考虑的太周全了。



=====================开箱完毕================

环境搭建:
MCC刚开始 使用一直不是很顺利,电脑换了两台,MPLAB重新装了七八遍,还准备用虚拟机搞。 还是没有解决根本问题。

在论坛一顿学习,发现改源   Tools --> Option -->Plugins   --->MCC Content Registries    https://registry.npmmirror.com/

一下子就顺畅了,爽翻天

==============开始===================================================

打开IDE  连接上板子,就会显示相关板子的信息,这个是做的真好。 自己做IDE的优势 完美展现了

点击圈起来的链接 会有官方的教程,我就参考例程 学了一遍。



自己焊接了一个4位的数码管,官方的例程是1位的。 下图是数码管的 引脚图



接线如图所示


实物如图


新建工程




界面好像有更新



增加一个CLB模块


搭建LUT模块

连接线的时候,有四根总线,连接多个LUT模块,点击连接的时候出线位置默认是在两个模块的中间。
如果四个输入垂直方向  对齐的话,那四根线连出来就叠在一块了,虽然可以通过手工拉线,修改位置,但极其耗费时间,拉的时候自己会分成好多段,不好操作。

如下图所示,四个输入错开一定的位置,这样连接出来不用调整,也不会堆叠在一起。



根据真值表 ,把每个LUT的 值填进去





填完以后,点击


配置 CLB  IO口

时钟配置,参考官方例程


配置位  参考官方例程









增加一个delay 模块  做时间控制



配置 4个片选IO



生成一下看看


主函数里增加如下代码
while(1)
    {
        H1_SetLow();
        H2_SetLow();
        H3_SetLow();
        H4_SetLow();
        CLBSWINL = 0;                                         // starts with digit "0"
        for(uint8_t counter = 0x00; counter <= 0x0F; counter++)     // loop for incrementing between 0h and Fh
        {
            __delay_ms(1000);                                 // waits until displays
            CLBSWINL = CLBSWINL + 1;                          // increments the displayed hexadecimal number
        }
    }


ok   可以通过设置 H1-H4的高低电平来选择需要显示的位  

演示完毕

总结:

目前使用下来,整个开发过程非常迅速,体验非常好。CLB模块 真的是太厉害了,后续继续探索其他应用。




PIC16F13145 使用CLB驱动7段数码管.rar

786.31 KB

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

6

帖子

0

粉丝