cljmp 0x85,hrc_fw_configinfo2\r
.endm\r
\r
-#ifdef _CHANGEABLE_ID_\r
+//#ifdef _CHANGEABLE_ID_ //--> ID vom EEPROM lesen auch wenn sie sich nicht ändern laesst\r
; lesen der ID aus dem EEPROM beim Start\r
read_EEPROM_ID1: \r
ldi r_temp2,lo8(E2END)\r
brne read_EEPROM_ID_loop\r
read_EEPROM_ID_end:\r
ret\r
-#endif\r
+//#endif\r
\r
\r
\r
lds r_temp,flashmarker\r
cpi r_temp,2\r
brne hrc_jmp_flasher_inc\r
- ldi r_temp,0xC0\r
- push r_temp\r
- ldi r_temp,0x0E\r
- push r_temp\r
- ret ; Direkter Sprung zum Bootloader\r
+ JMP_FLASHER\r
hrc_jmp_flasher_inc:\r
inc r_temp\r
sts flashmarker,r_temp\r
h_fwconfiginfo_go:\r
cpi r_bytep,24\r
breq h_fwconfiginfo_crc\r
-#ifdef _CRC8_\r
+#if defined(_CRC8_) || defined( _CRC8_16_) \r
cpi r_bytep,25\r
breq h_fwconfiginfo_all\r
#elif defined _CRC16_\r
;vor allen anderen Registerconfigs\r
push r_temp\r
#ifndef _DIS_FLASH_\r
- ldi r_temp,(1<<PUD) ;enable pullup \r
- out _SFR_IO_ADDR(MCUCR) ,r_temp\r
- sbi _SFR_IO_ADDR(PORTA),PINA5 ;internal pullup on PINA5\r
- sbi _SFR_IO_ADDR(PORTA),PINA4 ;internal pullup on PINA4\r
- rcall spause\r
- sbis _SFR_IO_ADDR(PINA),PINA5\r
- rjmp owinit_botest_end ;PinA5 nicht auf 1\r
- sbis _SFR_IO_ADDR(PINA),PINA4\r
- rjmp owinit_botest_end ;PinA4 nicht auf 1\r
- cbi _SFR_IO_ADDR(PORTA),PINA4 \r
- sbi _SFR_IO_ADDR(DDRA),PINA4 ;PINA4 AUSGANG und 0\r
- rcall spause\r
- sbic _SFR_IO_ADDR(PINA),PINA5 \r
- rjmp owinit_botest_end ;PINA5 nicht 0.... nicht verbunden\r
- cbi _SFR_IO_ADDR(DDRA),PINA4\r
- ldi r_temp,0xC0\r
- push r_temp\r
- ldi r_temp,0x0E\r
- push r_temp\r
- ret ; Direkter Sprung zum Bootloader*/\r
-owinit_botest_end:\r
+ CHECK_BOOTLOADER_PIN \r
#endif\r
HW_INIT //Microcontroller specific\r
CHIP_INIT //1-Wire device specific\r
push r_rwbyte\r
push r_idn1\r
push r_idn2\r
-#ifdef _CHANGEABLE_ID_\r
+//#ifdef _CHANGEABLE_ID_\r
rcall read_EEPROM_ID1\r
rcall read_EEPROM_ID2\r
-#endif\r
+//#endif\r
ldi r_bytep,8\r
ldi r_temp,0\r
ldi zl,lo8(idtable)\r