stk5002_bootloader_v1.3
所属分类:其他
开发工具:C/C++
文件大小:139KB
下载次数:14
上传日期:2009-09-15 21:51:52
上 传 者:
miklobit
说明: Bootloader for Atmel Atmega microcontroller. It act as a STK500 board and can be used from within avrstudio.
文件列表:
.cdtproject (897, 2005-07-04)
.project (3686, 2005-09-10)
bootloader_at90can128.cof (24530, 2006-04-18)
bootloader_at90can128.elf (26100, 2006-04-18)
bootloader_at90can128.hex (18563, 2006-04-18)
bootloader_at90can128.lst (122976, 2006-04-18)
bootloader_at90can128.map (16097, 2006-04-18)
bootloader_at90can128_cof.aps (3582, 2005-09-12)
bootloader_at90can128_eeprom.hex (34, 2006-04-18)
command_v2.h (4711, 2005-01-31)
gpl.txt (18349, 2003-08-06)
makefile (6716, 2006-02-20)
rtc72423.c (2685, 2005-09-12)
stk500_2_boot.bak (20803, 2005-07-04)
stk500_2_boot.c (37217, 2006-04-18)
stk500_2_boot.lst (216916, 2006-04-18)
stk500_2_boot.o (30532, 2006-04-18)
Bootloader/monitor with STK500v2 protocol for ATmega128/AT90can128
(c) Milosz Klosowicz, MikloBit
Home page: http://www.miklobit.com
Contact: support@miklobit.com
2005.07.05 version 1.0
Require AVR Studio 4.11 build 401 or later.
STK500 v2 command/parameter supported:
CMD_SIGN_ON:
CMD_GET_PARAMETER:
- PARAM_HW_VER
- PARAM_SW_MAJOR
- PARAM_SW_MINOR
- PARAM_VTARGET (dummy)
- PARAM_VADJUST (dummy)
- PARAM_OSC_PSCALE (dummy)
- PARAM_OSC_CMATCH (dummy)
- PARAM_SCK_DURATION (dummy)
- PARAM_TOPCARD_DETECT
CMD_SET_PARAMETER:
CMD_ENTER_PROGMODE_ISP:
CMD_LEAVE_PROGMODE_ISP:
CMD_CHIP_ERASE_ISP: (1st page)
CMD_READ_SIGNATURE_ISP:
CMD_LOAD_ADDRESS:
CMD_PROGRAM_FLASH_ISP:
CMD_READ_FLASH_ISP:
CMD_PROGRAM_EEPROM_ISP:
CMD_READ_EEPROM_ISP:
CMD_READ_FUSE_ISP:
CMD_READ_LOCK_ISP:
Cpu supported:
AT90can128
ATmega128
ATmega*** (not tested)
ATmega32 (not tested)
Other ATmega's with bootblock size less that 4kb should work,
but it require to comment out some command in source file
Bootloader start conditions:
Atmega128:
if (( memory($0000) != $FF) && (PORTF.7 ==1) && (PORTF.6 == 1) ) -> start application
if (( memory($0000) != $FF) && (PORTF.7 ==0) ) -> boot from UART0
if (( memory($0000) != $FF) && (PORTF.6 ==0) ) -> boot from UART1
if (( memory($0000) == $FF) && (PORTF.7 ==1) && (PORTF.6 == 1) && ) -> boot from UART0
AT90CAN128:
if (( memory($0000) != $FF) && (PORTF.7 ==1) && (PORTF.6 == 1) && ) -> start application
if (( memory($0000) != $FF) && (PORTF.7 ==0) ) -> boot from UART1
if (( memory($0000) != $FF) && (PORTF.6 ==0) ) -> boot from UART0
if (( memory($0000) == $FF) && (PORTF.7 ==1) && (PORTF.6 == 1) && ) -> boot from UART1
Other ATmega:
if ( memory($0000) != $FF) && (PORTD.6 ==1) -> start application
if ( memory($0000) != $FF) && (PORTD.6 ==0) ) -> boot from UART
if ( memory($0000) == $FF) && (PORTD.6 ==1) -> boot from UART
2005.09.09 version 1.2
Monitor functions added:
!!! monitor enter
F AAAAA dump Flash memory starting from address AAAAA
X AAAA dump RAM(external RAM) memory from address AAAA
X AAAA MM modify RAM at address AAAA with value MM
E AAA dump EEPROM memory from address AAA
E AAA MM modify EEPROM at address AAAA with value MM
T display time from RTC72423 chip
T HHMMSS set RTC time to HH:MM:SS
D display date from RTC72423 chip
D YYMMDD set RTC date to YY/MM/DD
Q quit monitor
[ENTER] repeat last command ( with address autoincrement )
Notes:
monitor can be entered when bootlader is active and running.
all memory address are byte values in hex
RTC base address is $6000
2005.12.25 version 1.3
Monitor functions added:
V DDDDDDDD generate square wave on all port pins ( period variable )
R AAAA read I/O address ( infinite loop )
W AAAA write I/O address ( inifinite loop , values 0 to 255 )
To do:
CAN interface monitor
I2C interface monitor
近期下载者:
相关文件:
收藏者: