Ник:
Пароль:

Контакты

E-mail: info@starterkit.ru
тел.: +7 922 680-21-73
тел.: +7 922 680-21-74
Телеграм: t.me/starterkit_ru
Партнеры:
otladka.com.ua - г.Киев

Способы оплаты

User Info


Добро пожаловать,
Guest

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

ПользователейПользователей:0
Поисковых ботовПоисковых ботов:2
ГостейГостей:1

ОбновитьПодробнееВсегоВсего:3
Форум » starterkit.ru » Старый форум » SK-MAT91SAM9XE512
MiniMax (Guest)
Добавлено 24.03.2009 19:28 Редактировалось 24.03.2009 19:28 Сообщение: 11
MiniMax (Guest)

по хорошему надо либо включить pull-up (соотв. бит в соотв. PUER регистре)
Пробовал включать в At91BootStrap. Pullup включается.
Но после загрузки Linux RXD опять болтается.
Похоже, что конфигурация в режиме последовательного порта запрещает внутренние pullup. Хотя встречал в datasheet,
что они отключаются только для выходов ( например, TXD).
Пока проблема решена при помощи внешнего резистора.
Спуститься к концу Подняться к началу
repairman (Guest)
Добавлено 24.03.2009 23:02 Редактировалось 24.03.2009 23:02 Сообщение: 12
repairman (Guest)

pull-up'ы перепрограммируются каждым "хозяином"- bootstarp, uboot, kernel... ядро линукс тоже вступив в права перепрограммирует их под себя...
В линукс их можно включить в [kernel_src]/arch/arm/mach_at91/at91sam9260_devices.c

В строках типа:
Код

at91_set_A_periph(AT91_PIN_PB14, 0); /* DRXD */
..
at91_set_A_periph(AT91_PIN_PB5, 0); /* RXD0 */
..
at91_set_A_periph(AT91_PIN_PB7, 0); /* RXD1 */
...

"0" заменить на "1" это включит pull-up (~200 kOhm -> 3.3v) на этот пин.
и т.д. для всех нужных Вам USART...

см. также прототип функции:
Код

int __init_or_module at91_set_A_periph(unsigned pin, int use_pullup);


_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Отредактированно repairman 24.03.2009 г. в 23:12:51
Спуститься к концу Подняться к началу
moonloop (Guest)
Добавлено 26.03.2009 14:25 Редактировалось 26.03.2009 14:25 Сообщение: 13
moonloop (Guest)

Как вариант (у меня) в board-sam9260ek.c в ф-ции ek_map_io добавить at91_set_gpio_input(AT91_PIN_PB14, 1) - это включит pull-up. Хотя в *_devices поаккуратней будет...

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Отредактированно moonloop 26.03.2009 г. в 14:26:40
Спуститься к концу Подняться к началу
Форум » starterkit.ru » Старый форум » SK-MAT91SAM9XE512