项目简介
本项目是基于AVR的ATMega微控制器编程器系统,借助USBasp实现对Atmel AVR控制器的USB在线编程。它修改了官方USBasp版本,新增对AT89S52和S51系列的支持,并添加自动降速功能,具备跨平台兼容性。
项目的主要特性和功能
- 多平台兼容:支持Linux、Mac OS X和Windows等多个平台。
- 硬件要求低:无需特殊控制器或贴片元件。
- 编程速度快:最高可达5kBytes/sec。
- SCK选项:支持低时钟速度(< 1.5MHz)的目标设备。
- 扩展支持:添加了对AT89S52和S51系列的支持以及自动降速功能。
安装使用步骤
刷写固件
- 短路电路板上atmega8的29脚(RESET)和10pin插口的3脚(RESET),参考文件夹内示意图操作。
- 用手头编程器(如st200、st500v1、st500v2、usbasp等)烧写firmware文件夹内的main.hex。
- 修改M8的熔丝位为低位0xef,高位0xc9。
使用预编译版本
固件
用正常工作的编程器(如avrdude、uisp等)将“bin/firmware/usbasp.atmega88.xxxx - xx - xx.hex”或“bin/firmware/usbasp.atmega8.xxxx - xx - xx.hex”烧写到所用控制器中。设置跳线J2激活USBasp固件更新功能,更改外部晶振的熔丝位。
Windows系统
- 启动Windows并连接USBasp。
- 安装驱动时选“bin/win - driver”,在Win2k和WinXP系统忽略“驱动未数字签名”警告继续安装。
- 运行avrdude,如:连接AT90S2313进入终端模式“avrdude -c usbasp -p at90s2313 -t”;将main.hex写入ATmega8闪存“avrdude -c usbasp -p atmega8 -U flash:w:main.hex”。
从源代码构建和安装
固件
- 安装AVR微控制器的GNU工具链(avr - gcc、avr - libc)。
- 切换到firmware目录。
- 运行“make main.hex”。
- 用uisp或avrdude将“main.hex”烧写到ATMega(4)8,烧写时设置跳线J2,连接USBasp到正常工作编程器,更改外部晶振熔丝位。
软件(avrdude)
- 安装libusb:http://libusb.sourceforge.net/
- 获取最新avrdude版本:http://download.savannah.gnu.org/releases/avrdude/
- 进入avrdude - X.X.X目录。
- 配置环境:运行./bootstrap(可能需注释验证autoconf和automake安装版本的两个if块),再运行./configure。
- 编译并安装:运行make,再运行make install。
不同系统的注意事项
Windows(Cygwin)
从http://libusb - win32.sourceforge.net/下载libusb - win32 - device - bin - x.x.x.x.tar.gz并解压,将lib/gcc/libusb.a复制到库路径,将include/usb.h复制到包含路径,进入avrdude目录,运行./configure LDFLAGS="-static" --enable - versioned - doc=no,然后运行make。
Darwin/MacOS X
运行“./configure”后,编辑Makefile,将“avrdude_CPPFLAGS”更改为“AM_CPPFLAGS”。
Linux
若以非root用户身份使用USBasp,需定义设备规则,参考bin/linux - nonroot中的示例。
下载地址
点击下载 【提取码: 4003】