本帖最后由 jinglixixi 于 2022-11-6 00:16 编辑
先前曾用过多款Microchip的产品,但多是PIC系列的产品,这次终于有机会能体验一下AVR系列的产品了。 这次申请到的是AVR64DD32,其外观如图1所示。 图1 开发板外观
对于Microchip产品,其服务质量那是没的说,细致入微。为了扩展的方便,随开发板配备了相应的排针,由于焊盘采用了免焊接计时,只需直接将排针别到焊盘上即可。 图2 连接排针 在连接开发板与电脑后,即可见到电源指示灯被点亮,与此同时供用户测试的LED也在闪亮将图3所示。 图3 点亮LED 若是打开电脑的设备管理器,则会见到有虚拟的串口出现,将图4所示,通过它可实现程序的下载。 图4 虚拟串口
由于AVR64DD32支持以MPLAB X IDE进行开发,故先前的安装结果还可以派上用场。 为测试一下它的可用程度,先实现“文件”菜单中的“New Project”选项来创建一个新项目工程,见图5所示。 图5 创建新项目
随后是选择项目的类型,见图6所示,并点击“Next”继续。 图6 选择项目类型 在图7所示的界面中,选取芯片和开发板的类型,并点击“Next”。 图7 选择芯片及开发板类型 随后是选取编译器,见图8所示,并点击“Next”继续。 图8 选取编译器 最后是为项目命名和指定在目录等,将图9所示,并点击“Finish”完成创建。随后会出现图10所示的工作界面。 图9 完成创建
图10 工作界面 若切换到“Kit Window”窗口,则可见到图11所示的辅助资源以供下载。 图11 工具窗口
至此,一起还是十分顺利的。但在使用MCC进行配置,就差强人意了,尽管已安装过MCC,但点击后,却一直是处于加载过程中,难以打开引脚配置界面。 最后,还是通过下载例程来解决了基本的测试需要。 按键与LED的电路见图12所示,其中LED的控制引脚为PF5。 图12 LED电路
为了亮度LED,其程序内容为: #include <avr/io.h>
#include <avr/interrupt.h>
//LED GPIO Functions
#define LED_init() do { PORTF.OUTSET = PIN5_bm; PORTF.DIRSET = PIN5_bm; } while (0)
#define LED_turnOn() do { PORTF.OUTCLR = PIN5_bm; } while (0)
#define LED_turnOff() do { PORTF.OUTSET = PIN5_bm; } while (0)
#define LED_toggle() do { PORTF.OUTTGL = PIN5_bm; } while (0)
int main(void) {
//Setup LED
LED_init();
LED_turnOff();
while (1)
{
}
}
经程序的编译和下载,所示的LED被消灭了。 若将主程序修改为: int main(void) {
int i,j;
//Setup LED
LED_init();
LED_turnOff();
while (1)
{
for(j=0;j<1000;j++)
for(i=0;i<1000;i++);
LED_turnOn();
for(j=0;j<1000;j++)
for(i=0;i<1000;i++);
LED_turnOff();
}
}
则LED又可恢复到不断闪烁的工作状态,说明除了MCC一起都是很好用的。
|