Цитата
Во-вторых, SAM7, как и любой арм, дрыгает ногами весьма неохотно.
Не так уж все и запущено именно на атмеловских армах. 3 такта на запись в порт (супротив двух при записи, например, в ОЗУ).
Тут решать надо по другому.
Код
#pragma optimize=no_inline
void Out8Bit(unsigned int d1, unsigned int d2, unsigned int d3, unsigned int d4)
{
pPIO->PIO_CODR = d1;
pPIO->PIO_CODR = d2;
pPIO->PIO_ODSR = d3;
pPIO->PIO_ODSR = d4;
pPIO->PIO_SODR = d2;
pPIO->PIO_SODR = d1;
}
и вызывать уже эту функцию, передавая ей в параметрах нужные биты.
Код
...
Out8Bit(0x400,0x1000,0xFF,0x00);
...
Тогда будет достаточно быстро.
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин