ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Среда
8 мая
180041
Vadymko (01.02.2010 15:14, просмотров: 15989)
Вопрос по быстродействию ARM9 Хаюшки. Вопрос в следующем. Поднял на своей платке AT91SAM9xe256, ну и первым же делом решил подергать ножками При кварце 16 мег с помощью PLLA поднял внутреннюю процессорную частоту (PCK) до 216, MCK соответсвенно 108Мгц. И вот тут уперся в непонятки: Простой кусок кода PIO_Configure(&pinsLed[0], 1); // PA9 (pin 190) while (1) { PIO_Set (&pinsLed[0]); //pin 190 PIO_Clear(&pinsLed[0]); //pin 190 } ...выдал выполнение с непонятной пока медленной скоростью Частота получилась 755кГц, положительный импульс был ~500нс (Set), отрицательный (Clear) ~800нс. При этом любое добавление кода до входа в основной цикл (например строчки PIO_Configure(&pinsLed[1], 1);) дает изменение всех этих цифр. Итак: 1. В чем могут быть проблемы? 2. С какой максимальной скоростью из программы я могу подергать внешней ножкой порта? 3. Как изменение кода ДО цикла в данном случае влияет на скорость выполнения соббсно самого цикла? З.Ы Примерчик сделан на основе ИАРовского примера для тестовой платы, все процедурки оттуда