说明

 

这个Bootloader是基于USB HID的,无需安装驱动程序,使用起来比较简单方便。只需要简单的修改几个参数就可以在AUMFB(AVR USB Multi Function Board)实验板上运行。程序的作者是Christian Starkjohann。这里使用AVR Studio+WinAVR作为开发工具。

 

需要修改的地方:

在文件bootloaderconfig.h中,修改以下几处:

 

  • 设置USB对应端口

#define USB_CFG_DMINUS_BIT      4
#define USB_CFG_DPLUS_BIT       2
 

  • 设置Bootload条件
    这里设置PB2为低时进入Bootloader

static inline void  bootLoaderInit(void)
{
    PORTB = (1 << PB2); /* activate pull-up for key */
    _delay_us(10);  /* wait for levels to stabilize */
}

#define bootLoaderCondition()   ((PINB & (1 << PB2)) == 0)   /* True if jumper is set */
 

 

 

 

 

 

此外,在项目属性中,设置频率为12000000(12M):

再设置程序段地址为0xC00:

 

编译后,就可以将产生的目标文件(bootload.hex),使用编程器通过ISP方式写入AVR单片机中。实验板上留有ISP6和ISP10两种接口,连接编程器时请注意插座的方向。

 

编程前,注意需要先连上短路块,这样编程器才能写入程序。

 

此外,还需要设置正确的熔丝位。

 

写入Bootloader后,先取下编程器和断开USB线,然后接上如图所示短路块,然后再插上USB线,在到设备管理器中查看是否增加了一个人体输入设备:

如果有多个USB 人体输入设备,那么在设备属性中查看设备是否是HIDBoot。

 

如果以上步骤成功,以后就可以不在使用编程器,而是通过Bootloader下载程序了。

 

相关 AUMFB 多功能试验板的原理图和PCB

博客 http://blog.ednchina.com/shaoziyang

网站 http://avrubd.googlepages.com

 

Site Meter

Locations of visitors to this page