jinglixixi 发表于 2022-7-13 11:05

【CuriosityNano测评报告】PIC18F57Q43开发环境及LED测试

本帖最后由 jinglixixi 于 2022-7-13 16:35 编辑

PIC18F57Q43Curiosity Nano评估工具包是一款可随身携带的小巧开发板,并具有完整的编程和调试功能,并且预编程了固件,可立即着手开发。该工具包是采用MPLAB® X集成开发平台和MPLAB代码配置器(MCC),来访问PIC18F57Q43上的智能模拟及独立于内核的外设。MCC是一种免费的图形化编程工具,可以配置用户应用的丰富外设和功能。该工具包的外观如图1所示,其扩展接口是采用免焊接技术,可直接将排针别入焊孔来使用。图1 外观在使用USB数据线连接工具包与电脑后,除电源灯被点亮外并无太大的变化,见图2所示。图2 上电此时,在电脑上倒是有许多的变化,实现是电脑在自动安装驱动,然后就会弹出U盘的图标。若打开设备管理器,还会见到新增加的虚拟串口,只是并没有什么信息输出。图3 虚拟串口上电由于先前曾使用过多款Microchip的产品,故电脑中装有MPLAB X IDE 其版本是v5.5,于是便下载了相应的LED例程来进行测试。该例程的内容如下:#include "mcc_generated_files/system/system.h"

/*
    Main application
*/

int main(void)
{
    SYSTEM_Initialize();
    INTERRUPT_GlobalInterruptEnable();
    while(1)
    {
      __delay_ms(2000);
      LED0_SetHigh();
    }
}
由该工具包的引脚分配图如图4所示,从中可知LED0所连接的引脚为RF3,SW0所连接的引脚为RB4。图4 引脚分配由此可知,该程序的作用是当中断被触发时,LED0被点亮;平时LED0输出高电平并进行2秒的延时。图5 测试效果那谁来触发中断呢?通过对中断处理函数的分析可知,是按键SW0。另外,从MCC的引脚配置上也可得到印证,将图6所示。图6引脚配置也就是说当按下SW0时,LED0被点亮,因为LED0是低电平点亮,见图7所示。void RB4_DefaultInterruptHandler(void)
{
    LED0_SetLow();
}
图7LED0电路值得指出的是在实际操作过程中,其设计的效果并不理想,当手指悬于按键SW0上方按下时,近于无效;当手指夾于SW0右下方时,触动按键则效果明显。那这是为什么呢?初步考虑是用于SW0没有进行电位上拉的缘故,见图8所示。在手指夾于SW0右下方时,会借助手指将LED0的高电位传递到SW0,故效果明显。图8SW0电路那么能不能不提供中断来控制LED0呢?当然是可以的,况且还不是一种方式。方式1:取出中断处理,直接输出高低电平来使LED0闪烁,其程序如下:int main(void)
{
    SYSTEM_Initialize();
    // INTERRUPT_GlobalInterruptEnable();
    while(1)
    {
      __delay_ms(2000);
      LED0_SetHigh();
      __delay_ms(2000);
      LED0_SetLow();
    }
}
方式2:直接使用函数LED0_Toggle()来实现,其程序如下:int main(void)
{
    SYSTEM_Initialize();
    while(1)
    {
      __delay_ms(2000);
      LED0_ Toggle ();
    }
}
这2种方式其效果是完全一致的,但似乎使用LED0_Toggle()的效率更高些。那么使用MPLAB X IDE v5.5是不是最好呢?在使用MCC进行配置后,会出现配置的引脚在主程序中无法使用的问题,即编译时会出现报错,无法完成编译。最终只好将MPLAB X IDE 的版本更新到v6.0,相关的软件可使用下面的链接来下载。

[*]MPLAB® X IDE 6.0.0 or newer (MPLAB® X IDE 6.0)
[*]MPLAB® XC8 2.35.0 or newer compiler (MPLAB® XC8 2.35)
[*]MPLAB® Code Configurator (MCC) 5.1.0 or   newer (microchip.com/mplab/mplab-code-configurator)
[*]MPLAB® Code Configurator (MCC) Melody 2.0.46 or   newer (microchip.com/en-us/tools-resources/configure/mplab-code-configurator/melody)
[*]Microchip PIC18F-Q Series Device Support   (1.13.211) or newer (packs.download.microchip.com/)


当在安装MPLAB X IDE v6.0之后,也呈现一个问题就是在使用MCC时,有时会出现长时间不予响应的现象,用起来有些不适。

gygp 发表于 2023-2-2 13:26

PIC18单片机开发用哪个工具最好

jinglixixi 发表于 2023-2-3 11:36

gygp 发表于 2023-2-2 13:26
PIC18单片机开发用哪个工具最好

基本上是用 MPLAB X IDE ,但安装MCC比较烦人。

mattlincoln 发表于 2023-2-4 19:57

pic kit3 找不到18f46k80吧

bestwell 发表于 2023-2-8 21:07

pic16单片机中断有优先级吗            

adolphcocker 发表于 2023-2-16 14:05

如何调试PIC18F57Q43的堆栈

jkl21 发表于 2023-2-16 16:03

用什麼编程软件写PIC18F57Q43的

jinglixixi 发表于 2023-2-17 10:10

jkl21 发表于 2023-2-16 16:03
用什麼编程软件写PIC18F57Q43的

MPLAB X IDE

louliana 发表于 2023-3-9 13:14

PIC 18 单片机能不能达到时钟频率40M

jinglixixi 发表于 2023-3-10 00:14

louliana 发表于 2023-3-9 13:14
PIC 18 单片机能不能达到时钟频率40M

资料介绍可达64MHz

pmp 发表于 2023-3-10 11:19

求分享一些18系列PIC单片机中文资料

wengh2016 发表于 2023-3-10 13:50

用pic18系列单片机实现脉冲计数,脉冲频率最大允许是多少?

maudlu 发表于 2023-3-10 14:28

PIC18F57Q43单片机支持canfd吗?

jinglixixi 发表于 2023-3-10 21:56

maudlu 发表于 2023-3-10 14:28
PIC18F57Q43单片机支持canfd吗?

没见到相关的介绍

jinglixixi 发表于 2023-3-10 21:57

wengh2016 发表于 2023-3-10 13:50
用pic18系列单片机实现脉冲计数,脉冲频率最大允许是多少?

找个信号源实测一下
页: [1]
查看完整版本: 【CuriosityNano测评报告】PIC18F57Q43开发环境及LED测试