【得捷“芯”体验】用Microchip PIC32CZ4010CA80144进行led翻转,尽显低功耗与高安全性(四)

继续上篇,本篇主要讲述电源与复位、其他外设与调试、功能测试,以及最后总结。

4. 电源、地与复位组 (B5, B10, B12)

这是微控制器工作的核心支撑引脚。

· VDDREG (B5):核心逻辑供电引脚(标称 1.8V)。外围电路:必须配置 0.1 μF (100 nF) 的低 ESR 陶瓷去耦电容,且电容位置应尽可能靠近引脚(6mm 以内)。

· RESET (B10):外部复位输入,低电平有效。外围电路:建议连接上拉电阻,并放置一个去耦电容以过滤干扰,元件应安装在引脚 12mm 范围内。

· Vss (B12):系统地引脚,负责核心、外设和 I/O 的接地。应直接连接至 PCB 的连续地平面。

5. 其他外设与调试组 (B8, B9)

· PC17 (B8):除作为 GPIO 外,它还是 JTAG 的 TDI(测试数据输入) 引脚,。如果您的原理图包含调试接口,应将其归入 JTAG/SWD 组。

· PD13 (B9):复用功能包括 CAN3_TXTCC4_WO1 (定时器输出),。根据具体用途(是作为控制输出还是 CAN 总线)进行连接。

最后还手绘了一张引脚对应图,其实主要因为ide相关的插件没有更新导致我一直不能在ide中进行引脚配置,不过后来更新插件后这个问题解决了。

下面是调试的截图:

这里只进行简单的led翻转控制:相关代码如下:

#include “config/default/definitions.h” // SYS function prototypes

#include <stdbool.h> // Defines true

#include <stddef.h> // Defines NULL

#include <stdint.h> // Defines uint32_t, uintptr_t

#include <stdlib.h> // Defines EXIT_FAILURE

/* Function Prototype */

static void TCC0_Callback(uint32_t status, uintptr_t context);

// *****************************************************************************

// *****************************************************************************

// Section: Main Entry Point

// *****************************************************************************

// *****************************************************************************

static void TCC0_Callback(uint32_t status, uintptr_t context) {

/* Toggle PD11 */

GPIO_PD11_Toggle();

/* Restart timer in case it’s in one-shot mode */

TCC0_TimerStart();

}

int main(void) {

/* Initialize all modules */

SYS_Initialize(NULL);

/* Configure PD11 as Output */

GPIO_PD11_OutputEnable();

/* Register TCC0 Overflow Callback */

TCC0_TimerCallbackRegister(TCC0_Callback, (uintptr_t)NULL);

/* Set period for ~500ms blinking (Frequency is 37.5MHz, so 18,750,000 cycles)

*/

TCC0_Timer32bitPeriodSet(18750000);

/* Start TCC0 Timer */

TCC0_TimerStart();

while (true) {

/\* Maintain state machines of all polled MPLAB Harmony modules. \*/

SYS_Tasks();

}

/* Execution should not come here during normal operation */

return (EXIT_FAILURE);

}

总结

1. 高性能计算:搭载300 MHz Arm Cortex-M7内核,支持FPU(单/双精度)和DSP指令集,具备强大的数据处理能力。

2. 极高可靠性:提供高达8 MB Flash和1 MB SRAM,且在Flash、SRAM、缓存及TCM上均支持ECC(纠错码),并内置硬件BIST,确保系统稳定。

3. 硬核安全:集成硬件安全模块 (HSM),支持安全启动、多种加解密硬件加速(AES, RSA, ECC等)及防篡改保护。

4. 卓越连接性:集成千兆以太网 (GMAC)、高速USB 2.0、多路CAN FD及10个SERCOM接口,通信能力强悍。

5. 低功耗管理:支持Hibernate、Backup等多种超低功耗模式,并具备睡眠行走 (Sleepwalking) 功能,精准平衡能效。