Не могу изменить регистр CLK_CTRL. Надо, что бы МК работал от внешнего кварца (8Мнz). Регистр вообще не изменяется и не настраиваться ни на 32Mhz, ни на 32khz.
LDI R16,0xD8 OUT 0x34,R16 LDI R16,0x01 STS 0x0040,R16
OUT быстрее на 1 такт. С STS не укладывается в 4 такта (Within 4 instruction cycles, the application code must write the appropriate data to the protected register.)
zombi
Dec 22 2011, 20:11
Вот моя рабочая подпрограмма
Код
intRC32_init: lds R16,(OSC_CTRL) ori R16,$02 sts (OSC_CTRL),R16 ; enable intRC32
lds R16,(OSC_STATUS); wait intRC32 ok sbrs R16,1 rjmp PC-3
ldi R16,$D8 sts (CPU_CCP),R16 ; enable change SYSclk ldi R16,$01 sts (CLK_CTRL),R16 ; set SYSclk intRC32 ret
Всё работает и укладывается Вот ТУТ есть обьяснение на русском и примеры. Мне на начальном этапе очень помогло.
Navovvol
Dec 23 2011, 05:20
Спасибо. Очень помогло
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.