[an error occurred while processing this directive]
|
Кто-нибудь сталкивался с такой багой в Atmega128?
После всех мучений сократил программу до нескольких строк:
int main( void )
{
DDRB = 0xFF;
for (uint8 i = 0; i < 128; i++)
{
_delay_loop_2(10);
PORTB = i;
_delay_loop_2(10);
}
for (;;)
}
Результат: сигнал на выходах PB2 и PB3 - нормальный меандр, какой должен быть, а на выходах PB0 и PB1 одиночный короткий импульс длительностью 200 нс, длительность не зависит от параметра задержки. Дело еще в том, что РВ0 и РВ1 имеют альтернативные функции SPI интерфейса. Но запрет его ( SPCR=0; ) ничего не дает. Еррату на Атмегу128 не нашел. Короче - крыша едет!
Подскажите, кто сталкивался с подобным.
Дмитрий, Томск
E-mail: info@telesys.ru