Micronucleus 项目使用教程
1. 项目目录结构及介绍
Micronucleus 项目的目录结构如下:
micronucleus/
├── commandline/
├── firmware/
│ ├── configurations/
│ ├── releases/
│ └── upgrade/
├── windows_driver_installer/
├── .gitignore
├── Contributing.txt
├── Devices_with_Micronucleus.md
├── License.txt
├── Readme.md
└── Style Guide.txt
目录结构介绍
- commandline/: 包含用于上传固件的命令行工具。
- firmware/: 包含固件相关的文件,包括不同配置的固件和升级文件。
- configurations/: 包含不同设备的配置文件。
- releases/: 包含预编译的固件文件。
- upgrade/: 包含用于升级现有设备的固件文件。
- windows_driver_installer/: 包含用于 Windows 系统的驱动安装工具。
- .gitignore: Git 忽略文件。
- Contributing.txt: 贡献指南。
- Devices_with_Micronucleus.md: 使用 Micronucleus 的设备列表。
- License.txt: 项目许可证。
- Readme.md: 项目介绍和使用说明。
- Style Guide.txt: 代码风格指南。
2. 项目启动文件介绍
Micronucleus 项目的启动文件主要位于 firmware/
目录下。启动文件是固件的核心部分,负责在设备复位时启动并允许通过 USB 上传新固件。
主要启动文件
- firmware/configurations/: 包含不同设备的配置文件,每个配置文件夹中包含
Makefile.inc
和bootloaderconfig.h
文件,用于定义设备的启动配置。 - firmware/releases/: 包含预编译的固件文件,可以直接使用 AVRDUDE 或其他编程工具进行烧录。
启动流程
- 设备复位时,启动文件会首先运行,等待主机通过 USB 进行通信。
- 如果在规定时间内没有接收到主机的通信请求,启动文件会超时并进入用户程序。
- 如果主机发起通信请求,启动文件会接收并处理上传的固件数据。
3. 项目的配置文件介绍
Micronucleus 项目的配置文件主要位于 firmware/configurations/
目录下,每个配置文件夹对应一个特定的设备。
主要配置文件
- Makefile.inc: 包含编译固件所需的配置参数,如设备型号、时钟频率等。
- bootloaderconfig.h: 包含启动文件的具体配置,如启动地址、超时时间等。
配置示例
以 t85_default
配置为例:
firmware/configurations/t85_default/
├── Makefile.inc
└── bootloaderconfig.h
Makefile.inc
# 设备型号
DEVICE = attiny85
# 时钟频率
CLOCK = 16000000
# 启动地址
BOOTLOADER_ADDRESS = 0x1800
bootloaderconfig.h
#define BOOTLOADER_ADDRESS 0x1800
#define BOOTLOADER_TIMEOUT 5000
配置编译
要使用特定配置编译固件,可以使用以下命令:
make CONFIG=t85_default
这将根据 t85_default
配置生成固件文件。
总结
Micronucleus 项目是一个针对 AVR ATtiny 微控制器的 USB 引导加载程序,具有紧凑的设计和跨平台支持。通过本教程,您可以了解项目的目录结构、启动文件和配置文件的使用方法,从而更好地理解和使用 Micronucleus 项目。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考