ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
21 ноября
851898 Топик полностью
Adept (29.06.2018 23:26 - 30.06.2018 05:14, просмотров: 334) ответил De_User на А в Google больше!
там куча ненужных телодвижений, для трёх простых действий чтения байта. Фактически тоже самое, что и у меня. но чистоты эксперимента ради, вот прям взял и подставил всё в отладчик без изменений.
Спасибо. Разобрался. Некоторые вещи пришлось подогнать, теперь вот так: Код ldi r16,PROD_SIGNATURES_START + NVM_PROD_SIGNATURES_ADCACAL0_offset call SP_ReadCalibrationByte sts ADCA_CAL,r16 ldi r16,PROD_SIGNATURES_START + NVM_PROD_SIGNATURES_ADCACAL1_offset call SP_ReadCalibrationByte sts ADCA_CAL+1,r16 SP_ReadCalibrationByte: ldi r20, NVM_CMD_READ_CALIB_ROW_gc ; Prepare NVM command in R20. mov ZL, r16 ; Load byte index into low byte of Z. clr ZH ; Clear high byte of Z. sts NVM_CMD, r20 ; Load prepared command into NVM Command register. lpm r16, Z ; Preform a LPM to read out byte to R16 ldi r20, NVM_CMD_NO_OPERATION_gc ; Clear NVM Command register sts NVM_CMD, r20 ret в регистр калибровки ADCA записывает значение 0х00FF.
нихера не работает (что не удивительно). с завидным упорством по Z-адресу читается флешь :(( такое впечатление, что NWM просто как-то отключен или не настроен (просмотрел неоднократно все контрол-регистры, в т.ч. и энергосбережения. Нифига криминала не нашёл :((
...делать нужно так, как нужно. А как ненужно - делать не нужно (С) Винни-Пух :)