【发布时间】:2021-01-10 16:52:15
【问题描述】:
我完成了一个涉及 PIC18F252 的项目。代码是用 CCS 编译的,我只是将它迁移到 MPLAB。 PIC 有 1 个 UART 模块,其 TX 和 RX 引脚分别为 RC6 和 RC7。我不是微芯片专家,但我对它们做了一些工作,并且在发布这个问题之前已经上网查看了。
原来的代码是用的
#use rs232(baud=9600,xmit=PIN_B5,rcv=PIN_B4,restart_wdt)
据我所知,PIC 不允许重新映射。
那怎么可能呢?
CCS 在“幕后”做什么?
那么UART的管脚是RB4和RB5吗?
【问题讨论】:
-
CCS 使用自己的库来设置 UART,使用 #use rs232(baud=9600,xmit=PIN_B5,rcv=PIN_B4,restart_wdt)。这些是 CCS IDE 的特定定义,在其他定义中找不到完全相同的定义。在 MPLAB 中,您必须全部完成,因为 MPLAB 没有库。它有一个名为 MPLAB 代码配置器 (MCC) 的工具,它提供了一个接口来简化芯片和外设设置并生成外设驱动程序代码。但不幸的是,它不支持 PIC18F252,因为它是一个旧芯片。结论,你必须从头开始编写 UART 驱动代码。
-
谢谢!我想我最好只是升级图片。谢谢。
-
是的,请使用更新的产品,例如 PIC18(L)FxxKxx 或 PIC18(L)FxxJxx 或 PIC18(L)FxxQxx。 MCC 对它们进行了改进和支持。
-
好的,谢谢,顺便说一句,我没有找到将该线程设置为“已解决”的标志...