查看Arduino bootloader 的烧写的源代码
←
Arduino bootloader 的烧写
跳转到:
导航
,
搜索
因为以下原因,你没有权限编辑本页:
您刚才请求的操作只有这个用户组中的用户才能使用:
用户
您可以查看并复制此页面的源代码:
=== hfuse,熔丝高位 === {| border="0" width=100% cellspacing="1" cellpadding="5" align="center" bgcolor=#0066bb ! style="background:#eeeeee" width=50| HFuse Bit ! style="background:#eeeeee" | [7] ! style="background:#eeeeee" | [6] ! style="background:#eeeeee" | [5] ! style="background:#eeeeee" | [4] ! style="background:#eeeeee" | [3] ! style="background:#eeeeee" | [2] ! style="background:#eeeeee" | [1] ! style="background:#eeeeee" | [0] |- ! style="background:#eeeeee" width=50| Bit Name | style="background:#ffffff" | RSTDISBL | style="background:#ffffff" | DWEN | style="background:#ffffff" | SPIEN | style="background:#ffffff" | WDTON | style="background:#ffffff" | EESAVE | style="background:#ffffff" | BOOTSZ1 | style="background:#ffffff" | BOOTSZ0 | style="background:#ffffff" | BOOTRST |- ! style="background:#eeeeee" | Description | style="background:#ffffff" | External Reset Disable | style="background:#ffffff" | Debug Wire Enable | style="background:#ffffff" | SPI programming Enable | style="background:#ffffff" | Watch Dog Timer always ON | style="background:#ffffff" | EEPROM memory is preserved through the chip erase | style="background:#ffffff" | Select bootloader area size | style="background:#ffffff" | Select bootloader area size | style="background:#ffffff" | Select Reset Vector |- ! style="background:#eeeeee" | Default Value | style="background:#ffffff" | 1 (external reset enable) | style="background:#ffffff" | 1 (debug wire disable) | style="background:#ffffff" | 0 (SPI enable) | style="background:#ffffff" | 1 (WDT always off) | style="background:#ffffff" | 1 (EEPROM not reserved) | style="background:#ffffff" | 0 | style="background:#ffffff" | 0 | style="background:#ffffff" | 1 (Reset Vector = 0x0) |} AVR 系列寄存器的值,一般 0 为真 对于 BOOTSZ1 BOOTSZ0 其对应为: [[文件:M328p-bootsz.jpg]] 表中的 Boot Reset Address (Start Boot Loader Section) 要将 hfuse 的 BOOTRST 置为 0 时,才有效 !特别注意:表中的地址都是为字为单位,换算成常用的字节单位要乘以 2 可见:BOOTSZ 为 00 时,boot area size = 4KB (2048 words,一个 words 是 16bit,两个字节) ; 01 时为 2KB; 10 时为 1KB; 11 时为 512B BOOTSZ 为 01 时,boot area 地址为 0x3C00 ~ 0x3FFF (字为单位),则以字节为单位的地址范围为:0x7800 ~ 0x7FFF Arduino 使用 ATmega 328p 一般将 hfuse 设置为 0xDA,对应二进制值为 1101 1010,低三位与默认值不同,指示 boot area size 为 2KB,地址范围 0x7800 ~ 0x7FFF,Reset Vector = 0x7800 0x7800 这个值,也与 Arduino 使用的 bootloader 文件 ATmegaBOOT_168_atmega328.hex 的起始地址一致 <br><br>
返回到
Arduino bootloader 的烧写
。
个人工具
登录
名字空间
页面
讨论
变换
查看
阅读
查看源代码
查看历史
操作
搜索
导航
首页
社区专页
新闻动态
最近更改
随机页面
帮助
工具箱
链入页面
相关更改
特殊页面