【得捷“芯”体验】Microchip AVR32SD32图形化配置MCU功能,简化设计开发复杂性

一、我所关注的器件特性

AVR32SD32内置硬件安全特性非常突出:

双核锁步CPU、闪存上的纠错码 (ECC)、SRAM/EEPROM以及带错误控制器的自主故障检测,符合ISO 26262 (ASIL C) 和IEC 61508 (SIL 2) 安全标准。

这是一款真正的汽车级MCU,非常适合作为汽车域控制器。而且价格非常便宜,用在工业场合也不算贵。。

二、硬件设计

1、原理图设计

使用AMS1117-3.3作为MCU供电的LDO。该IC支持最大15V的输入电压,可以兼容汽车上常用的12V系统。最大输出电流1A,最够连接不同的外部器件或模块一起工作。

AVR32SD32最小系统主要包括外部晶振等。

PCB上留了一路电源LED和一路可通过IO控制的LED,以及一个按键。

使用两个排针把所有IO都引出,方便后续扩展。其中排针IO的顺序与AVR32SD32 Curiosity Nano评估套件保持兼容。

2、PCB设计

PCB外形和尺寸继续与AVR32SD32 Curiosity Nano评估套件保持兼容。

三、功能调试

1、开发环境搭建

开发环境使用了MPLAB X IDE,这个开发环境使用起来非常方便。其中的MCC模块可以非常方便的图形化配置MCU的各个功能,简化了配置寄存器相关的工作,减少很大的开发工作量,可以让用户把重点放在业务逻辑上。

2、测试代码

#include "mcc_generated_files/system/system.h"
#include "mcc_generated_files/timer/delay.h"
/*
    Main application
*/

int main(void)
{
    SYSTEM_Initialize();

    while(1)
    {
        PD2_LED0_Toggle();
        DELAY_milliseconds(500);
    }    
}

四、总结

AVR32SD32开发工具非常容易上手,易于使用,同时也能满足快速开发的需求。AVR32SD32性能也很不错,安全特性也非常nice,适合汽车、工业等应用场合。