реклама на сайте
подробности

 
 
> Скорость ног SAM7, проблема с выводом
Iezuit
сообщение May 4 2008, 12:23
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 16
Регистрация: 13-12-07
Пользователь №: 33 263



Добрый день!
На AT91S64 начал программно (т.е. сам через порт, а не через стандартные функции периферии) выводить информацию на ноги частотой ~10-15 МегаГерц но, по осциллографу, выходит не более 1. Подскаже, я чего-то не понимаю или это ошибка, связанная с мои неправильными действиями?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Iezuit
сообщение May 5 2008, 11:37
Сообщение #2


Участник
*

Группа: Новичок
Сообщений: 16
Регистрация: 13-12-07
Пользователь №: 33 263



Простое - да, но у меня между дерганьями было еще
AT91F_PIO_ForceOutput(AT91C_BASE_PIOA,0x5555<<16);
(т.е. AT91C_BASE_PIOA->PIO_ODSR=a<<16;)
Уважаемый amw привел ассемблерный код вместе с ним.
Как-то очень медленно получаетсяsad.gif Команды-то все сильно не однотактовые, как выяснилосьsad.gif



Цитата(aaarrr @ May 5 2008, 15:31) *
Ну, amw написал уж очень страшный вариант. На деле на одну запись в порт требуется 3 такта MCK, т.е. конструкция из 3-х записей + переход должна выполняться за 12 тактов процессора или 400 мксек.

А как бы заставить ИАР мой код НОРМАЛЬНО странслировать на ассемблер, чтобы получилось таки 12 тактов, о которых Вы пишите? Вроде бы полная оптимизация выставлена, и все-равно...
Go to the top of the page
 
+Quote Post
aaarrr
сообщение May 5 2008, 11:39
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(Iezuit @ May 5 2008, 15:33) *
Простое - да, но у меня между дерганьями было еще
AT91F_PIO_ForceOutput(AT91C_BASE_PIOA,0x5555<<16);
(т.е. AT91C_BASE_PIOA->PIO_ODSR=a<<16;)
Уважаемый amw привел ассемблерный код вместе с ним.

0x5555<<16 при нормальной оптимизации никто в цикле загружать не будет, значение будет получено и положено в регистр до начала цикла.

Цитата(Iezuit @ May 5 2008, 15:37) *
А как бы заставить ИАР мой код НОРМАЛЬНО странслировать на ассемблер, чтобы получилось таки 12 тактов, о которых Вы пишите? Вроде бы полная оптимизация выставлена, и все-равно...

Для начала надо бы листинг получить, без него что-либо оптимизировать затруднительно.
Go to the top of the page
 
+Quote Post
Iezuit
сообщение May 5 2008, 11:46
Сообщение #4


Участник
*

Группа: Новичок
Сообщений: 16
Регистрация: 13-12-07
Пользователь №: 33 263



Цитата(aaarrr @ May 5 2008, 15:39) *
Для начала надо бы листинг получить, без него что-либо оптимизировать затруднительно.

Ну я в принципе писал, но еще раз:
Функция, которую хочется сделать побыстрее

Код
void write_d(unsigned char a)
{
AT91C_BASE_PIOA->PIO_CODR = SCREEN_WR;
AT91C_BASE_PIOA->PIO_ODSR=a<<16;
AT91C_BASE_PIOA->PIO_SODR = SCREEN_WR;
}


Либо не функция, а просто строчки кода
Код
AT91C_BASE_PIOA->PIO_CODR = SCREEN_WR;
AT91C_BASE_PIOA->PIO_ODSR=data<<16;
AT91C_BASE_PIOA->PIO_SODR = SCREEN_WR;
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Iezuit   Скорость ног SAM7   May 4 2008, 12:23
- - bureau   Приведите листинг своего кода, если вас не затрудн...   May 4 2008, 12:45
- - aaarrr   Цитата(Iezuit @ May 4 2008, 16:23) На AT9...   May 4 2008, 14:49
- - Iezuit   Ниже привожу код (IAR). Прошу прощения, что не сде...   May 5 2008, 08:00
|- - amw   Цитата(Iezuit @ May 5 2008, 11:00) Кодwhi...   May 5 2008, 09:56
|- - Iezuit   Цитата(amw @ May 5 2008, 13:56) Посчитайт...   May 5 2008, 10:59
- - aaarrr   А оптимизация-то включена?   May 5 2008, 09:04
|- - Iezuit   Цитата(aaarrr @ May 5 2008, 13:04) А опти...   May 5 2008, 09:25
|- - bureau   2 Iezuit Неправильно понимаешь. Ты сравни с и без,...   May 5 2008, 09:36
|- - Iezuit   Цитата(bureau @ May 5 2008, 13:36) 2 Iezu...   May 5 2008, 09:44
|- - KAlex   Цитата(Iezuit @ May 5 2008, 12:44) У меня...   May 5 2008, 11:10
|- - Iezuit   Цитата(KAlex @ May 5 2008, 15:10) Это как...   May 5 2008, 11:14
|- - KAlex   Здесь все давно разжевано.   May 5 2008, 11:20
- - vet   простое дергание ноги должно выливаться в гораздо ...   May 5 2008, 11:21
- - aaarrr   Ну, amw написал уж очень страшный вариант. На деле...   May 5 2008, 11:31
|- - amw   Цитата(aaarrr @ May 5 2008, 14:31) Ну, am...   May 5 2008, 11:59
- - aaarrr   Цитата(Iezuit @ May 5 2008, 15:46) Ну я в...   May 5 2008, 12:04
- - Iezuit   Большое спасибо! Пробую...   May 5 2008, 12:24


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 31st July 2025 - 19:34
Рейтинг@Mail.ru


Страница сгенерированна за 0.01407 секунд с 7
ELECTRONIX ©2004-2016