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

 
 
 
Reply to this topicStart new topic
> FastIO, Как работать
zorromen
сообщение Oct 1 2007, 15:24
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 322
Регистрация: 13-12-05
Пользователь №: 12 147



Привет васем. Решил разобраться как работать с FastIO. Работаю в Keil там и отлаживаю в логическом анализаторе. Я шота чесно непонял, когда я просто IO0SET и IO0CLR. То вроде есть дрыганя, но с 33нс на переключение, что очень странно . Это но это ведь не fast, Как он может так дергать? Теперь пробую фастом FIO0SET и FIO0CLR, шота неочень. Точнее ваще недергается. Скажите как ваще работать с Fast режимом. То ваще уже запарился. В даташите ничего ненашел, чтобы работало, по этому поводу.
Go to the top of the page
 
+Quote Post
HARMHARM
сообщение Oct 2 2007, 05:09
Сообщение #2


читатель даташитов
****

Группа: Свой
Сообщений: 853
Регистрация: 5-11-06
Из: Днепропетровск
Пользователь №: 21 999



Не знаю, как для младших серий, а в LPC23xx для использования Fast IO нужно установить бит GPIOM в регистре SCS:
Код
    SCS |= GPIOM;//FIO

Цитата из даташита:
Цитата
GPIOM GPIO access mode selection. R/W 0
0 GPIO ports 0 and 1 are accessed via APB addresses in a fashion
compatible with previous LPC2000 devices.
1 High speed GPIO is enabled on ports 0 and 1, accessed via addresses in
the on-chip memory range. This mode includes the port masking feature
described in the GPIO chapter.

В примерах для Keil есть директория GPIO, там пример.
Go to the top of the page
 
+Quote Post
Andrewak
сообщение Oct 2 2007, 06:42
Сообщение #3


Частый гость
**

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



Цитата(zorromen @ Oct 1 2007, 19:24) *
Привет васем. Решил разобраться как работать с FastIO. Работаю в Keil там и отлаживаю в логическом анализаторе. Я шота чесно непонял, когда я просто IO0SET и IO0CLR. То вроде есть дрыганя, но с 33нс на переключение, что очень странно . Это но это ведь не fast, Как он может так дергать? Теперь пробую фастом FIO0SET и FIO0CLR, шота неочень. Точнее ваще недергается. Скажите как ваще работать с Fast режимом. То ваще уже запарился. В даташите ничего ненашел, чтобы работало, по этому поводу.

Сталкивался с подобной фигнёй. На камне фио работает, но при попытке пошаговой отладки через жтаг, регистр направления постоянно сбрасывается и дёрганья, естественно, нету... принудительная установка битов в регистре направления не спасает - на следующем шаге регистр обнуляется. Но это только при отладке жтагом. Причины выясняются...
Go to the top of the page
 
+Quote Post
zorromen
сообщение Oct 2 2007, 15:28
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 322
Регистрация: 13-12-05
Пользователь №: 12 147



Ух. Вроде пошло. Но непойму почему в Logc analizator кейла выдаетодинаковые импульсы. Одинаковой длинны по 33ns. Это глюк Кейла?

#include <LPC214X.H>

#define LED_1 1<<10
#define LED_2 1<<23
int main(void)
{
SCS=1;
FIO0DIR = LED_1;
IO1DIR = LED_2;
for(;;)
{
FIO0PIN = 0x400;
FIO0PIN = 0;
FIO0PIN = 0x400;
FIO0PIN = 0;
FIO0PIN = 0x400;
FIO0PIN = 0;

IO1PIN = LED_2;
IO1PIN = ~LED_2;
IO1PIN = LED_2;
IO1PIN = ~LED_2;
IO1PIN = LED_2;
IO1PIN = ~LED_2;

}
return 0;
}
Go to the top of the page
 
+Quote Post
HARMHARM
сообщение Oct 3 2007, 12:20
Сообщение #5


читатель даташитов
****

Группа: Свой
Сообщений: 853
Регистрация: 5-11-06
Из: Днепропетровск
Пользователь №: 21 999



Цитата(zorromen @ Oct 2 2007, 18:28) *
Ух. Вроде пошло. Но непойму почему в Logc analizator кейла выдаетодинаковые импульсы. Одинаковой длинны по 33ns. Это глюк Кейла?


33 нс соотвестсвует частоте 30 МГц. Поскольку изменение состояние ножки порта производится двумя командами, смею предположить что частота ядра в симуляторе 60 МГц.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 19th June 2025 - 07:25
Рейтинг@Mail.ru


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