?

Log in

No account? Create an account

Previous Entry | Next Entry

PRR

Нет, всё-таки Power Reduction Register в меге (или в avr-gcc/avr-libc) вещь косая... Два раза уже на одни и теже грабли наступил - если его настроить в секции init3, то прога себя чувствует не очень хорошо... Теперь буду с ними работать только через макросы типа

//PRR
#define PRR_INIT(a_MASK)		PRR = a_MASK
#define PRR_ENABLE_ALL			PRR = 0
#define PRR_DISABLE_ALL			PRR = 0xFF
#define PRR_ENABLE_BLOCK(a_BIT)		PRR &= ~_BV(a_BIT)
#define PRR_DISABLE_BLOCK(a_BIT)	PRR |= _BV(a_BIT)

которые можно сразу всем скопом отрубить в случае глюков!