Раздел: Документация
0 ... 182 183 184 185 186 187 188 ... 195 sbiw loophi:looplo,2 brne Wrloop ; Записать страницу subi ZL,low(PAGESIZEB); Восстановили указатель subci ZH,high(PAGESIZEB) ldi spmcrval, (1«PGWRT) I (1«SPMEN) call Do spm ; Разрешить адресацию области RWW ldi spmcrval, (1«RWWSRE) I (1«SPMEN) call Do spm ; Проконтролировать записанные данные ldi looplo,low(PAGESIZEB); Инициализировали счетчик байтов ldi loophi,high(PAGESIZEB) subi YL,low(PAGESIZEB); Восстановили указатель sbci YH,high(PAGESIZEB) Rdloop: elpm rO,Z+ Id rl,Y+ cpse rO,rl jmp Error sbiw loophi:looplo,1 brne Rdloop ; Возврат в секцию прикладной программы Return: in tempi,SPMCSR sbrs tempi,RWWSB; Если RWWSB установлен, доступ в секцию RWW ; запрещен ret ; Разрешить адресацию области RWW ldi spmcrval, (1«RWWSRE) I (1«SPMEN) call Do spm rjmp Return Do spm:; Операция определяется содержимым spmcrval ; Проверить завершение предыдущей операции Wait spm: in tempi,SPMCSR sbrc tempi,SPMEN rjmp Wait spm ; Запретить прерывания, сохранить регистр статуса in temp2, SREG cli ; Убедиться в отсутствии записи в EEPROM Wait ee: sbic EECR,EEWE rjmp Wait ee out SPMCSR,spmcrval spm ; Восстановить регистр SREG (для повторного разрешения прерываний) out SREG,temp2 ret Приложения Приложение 1. Сводная таблица микроконтроллеров
AVR семейства Mega
0 ... 182 183 184 185 186 187 188 ... 195
|