Ник:
Пароль:

Контакты

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

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

Ник:
Пароль:

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

ОбновитьПодробнееВсегоВсего:6
Форум » starterkit.ru » Embedded Linux
Помогите новичку. Не получается дрыгать ногой.
flogger_d
Добавлено 06.01.2012 23:59 Сообщение: 11
flogger_d
0

Пункты: 185
Регистрация: 22.09.2011
Ну, у меня планы на светодиодах не ограничиваются...
Это - первый этап...
Дальше я хочу купить бу-шный детский электромобильчик (на молотке видел за 2.5 круб) и присобачить это дело к нему... С камерой и интернет каналом через gsm модем. И оставить на даче на неделю
Спуститься к концу Подняться к началу
Персональная информация
flogger_d
Добавлено 07.01.2012 00:17 Сообщение: 12
flogger_d
0

Пункты: 185
Регистрация: 22.09.2011
По поводу драйверов в ядре хочу уточнить: Как я понимаю, это .../drivers/leds?
Есть ли какие нибудь ресурсы почитать на эту тему? Как я понимаю, если описать в этом разделе часть пинов контоллера как устройства, то можно будет работать с ними через файлы устройств или /proc из юзер-спейс? Есть ли где нибудь примеры таких конфигураций? И что на счет подключения каких нибудь датчиков? Есть ли возможность также сконфигурять это дело в ядре и работать через файлы устройств или каталог /proc?
Спуститься к концу Подняться к началу
Персональная информация
dimas
Добавлено 07.01.2012 02:09 Сообщение: 13
dimas
0

Пункты: 73
Регистрация: 20.11.2011
Пол: Мужчина
Всем доброго времени суток!
А вот у меня меня пример gpio как-то не очень заработал. Пользую плату SK-9G45-OEM в связке с SK-9G45-MB. Хочу "подрыгать" CPU_PC27 (это PIN3 разъёма X2 на SK-9G45-MB, он же PIN39 разъёма X3 на SK-9G45-OEM). Если верить мультиметру, то этот пин в постоянном КЗ с +5В (например, PIN2 разъёма X2 на SK-9G45-MB). В gpio.c менял только
#define PIN_MASK (1<<27)
#define MAP_BASE (AT91_PIOC)
Уже вывих мозга получил, однако.
С уважением, Дмитрий.
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 07.01.2012 12:04 Сообщение: 14
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
Уже вывих мозга получил, однако.
С уважением, Дмитрий.

не надо вывих, контактов еще вполне достаточно..
подойдите к вопросу системно:
вынимаем плату с АРМом из кериер-боард, включаем питание кериера и тестером тыкаем в разъем Х2. общий тестера на земляной полигон или корпус ЮСБ разъема, положительным шупом тестера по гребенке Х2. согласно схеме, д.б.:
1 - 0В
2 - +5В
3 - 0В (плата с АРМом вынута)
4 - +3В3
если картина не такая, то это или не Х2, или неправильная разводка, или неправильная шелкография :)

далее, выключаем кериер, вставляем плату с АРМом, включаем питание и смотрим тестером уровни на Х3(OEM) - контакты 1,2,3,4..
потом запускаем заветную программку ("дрыгать ножкой"), если ничего не наврано, то пин должен дрыгаться.. (речь про OEM)
кстати, после редефайна "В gpio.c менял" make запускали?

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 07.01.2012 12:12 Сообщение: 15
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
Уже вывих мозга получил, однако.

блин! я сам чуть вывих не получил!
у них базовые адреса разные..
это для 9260 (его используют в примере)
Код
#define AT91_PIOC 0xfffff800

это для 9g45 (в OEM)
Код
#define GPIO_BA 0xFFFFF600 // GPIO C


достоверный пример

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
dimas
Добавлено 07.01.2012 15:31 Сообщение: 16
dimas
0

Пункты: 73
Регистрация: 20.11.2011
Пол: Мужчина
Позор на мои седины! Ведь была же такая мысль... Ещё раз убеждаюсь, что прежде чем заклинания читать и в бубен бить, нужно просто ВНИМАТЕЛЬНО прочитать документацию на свой коллайдер. at91sam9g45.pdf Figure 6-1. AT91SAM9G45 Memory Mapping... Ну как я там 0xfffff800 умудрился вычитать?!
Спасибо огромное! Теперь, конечно, всё заработало :)
С уважением, Дмитрий.
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 07.01.2012 16:03 Сообщение: 17
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
Спасибо огромное! Теперь, конечно, всё заработало :)

Ja-ja.. завуалированные грабли - любой может наступить..
А что насчет разъемов и 5В? или тревога была ложной?

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 07.01.2012 16:19 Сообщение: 18
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
По поводу драйверов в ядре хочу уточнить: Как я понимаю, это .../drivers/leds?
Есть ли какие нибудь ресурсы почитать на эту тему?

кратенько написано в доке ядра /Documentation/leds-class.txt, рядом лежит gpio.txt - вполне читабельный :)

Цитата
Как я понимаю, если описать в этом разделе часть пинов контоллера как устройства, то можно будет работать с ними через файлы устройств или /proc из юзер-спейс? Есть ли где нибудь примеры таких конфигураций?

понимание правильное. примеры можно подсмотреть в соседних файлах (от других плат), вроде в самой 9260-ek тоже мелькали настройки led..

Цитата
И что на счет подключения каких нибудь датчиков? Есть ли возможность также сконфигурять это дело в ядре и работать через файлы устройств или каталог /proc?

нет такой марки "каких нибудь" - это слишком расплывчато.. можно на основе GPIO организовать бинарные входы со стандартной поддержкой в ядре, можно организовать пин, как устройство ввода и пользоваться подходящим демоном.. вариантов море - достаточно выбрать подходящий и понять, как его реализовать..

как пример: я на 9260 прицепил 5 светодиодов, вот так они видны в системе:
Код
root@arm9260:~# ls /sys/devices/platform/leds-gpio/leds/ -l
##### 0
drwxr-xr-x 3 root root 0 ### 7 16:55 backlight
drwxr-xr-x 3 root root 0 ### 7 16:55 health
drwxr-xr-x 3 root root 0 ### 7 16:55 mmc
drwxr-xr-x 3 root root 0 ### 7 16:55 nand
drwxr-xr-x 3 root root 0 ### 7 16:55 userled
root@arm9260:~# ls /sys/devices/platform/leds-gpio/leds/health/ -l
##### 0
-rw-r--r-- 1 root root 4096 ### 7 16:56 brightness
lrwxrwxrwx 1 root root 0 ### 7 16:56 device -> ../../../leds-gpio
-r--r--r-- 1 root root 4096 ### 7 16:56 max_brightness
drwxr-xr-x 2 root root 0 ### 7 16:56 power
lrwxrwxrwx 1 root root 0 ### 7 16:56 subsystem -> ../../../../../class/leds
-rw-r--r-- 1 root root 4096 ### 7 16:56 trigger
-rw-r--r-- 1 root root 4096 ### 7 16:56 uevent
root@arm9260:~# cat /sys/devices/platform/leds-gpio/leds/health/trigger
none nand-disk mmc0 timer [heartbeat] gpio

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
dimas
Добавлено 07.01.2012 19:15 Сообщение: 19
dimas
0

Пункты: 73
Регистрация: 20.11.2011
Пол: Мужчина
Цитата
А что насчет разъемов и 5В? или тревога была ложной?

Да, тревога была ложной. Мои извинения за беспокойство. Перепроверил - всё в порядке. Вот до чего ночные ковыряния платы доводят :)
С уважением, Дмитрий.
Спуститься к концу Подняться к началу
Персональная информация
flogger_d
Добавлено 08.01.2012 00:53 Сообщение: 20
flogger_d
0

Пункты: 185
Регистрация: 22.09.2011
Спасибо. Все. Некоторое время буду курить маны... :-)
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » Embedded Linux