Страница 1 из 1

Bluetooth джойстик для денди

Добавлено: Вт июл 30, 2013 21:47:27
Ромыч
День добрый! Есть желание сделать беспроводные джойстики под старенькую приставку. Задача думаестся как

Код: Выделить всё

|--------|           |--------------|         |---------|                              |---------|       |---------|       |-------------|
|джо     |     --->  |AVR-кодер     | --->    | BT      |           \|/                | BT      |  -->  |AVR      | -->   | порт        |
|йстик   |           |              |         | модуль  |            | UART            | модуль  |       |декодер |        | джойстика   |
интерфейс имеет 3 сигнала (клок, синхра, данные). как посоветуете передавать эти сигналы? с уартом и блютузом столкнусь впервые

Re: Bluetooth джойстик для денди

Добавлено: Ср июл 31, 2013 08:26:41
ibiza11
в джойстике обычный регистр строит, который последовательно передает состояния всех кнопок. в AVR нужно считать эти данные, передать о UART в модуль
на приемной стороне в МК организовать эмуляцию этих кнопок (либо трехпроводного интерфейса).

Re: Bluetooth джойстик для денди

Добавлено: Ср июл 31, 2013 08:28:02
Ромыч
ну хорошо, данные мы передадим. а как быть с синхрой и частотой?

Re: Bluetooth джойстик для денди

Добавлено: Чт авг 01, 2013 08:07:44
ibiza11
джойстик это простой регистр (типо 74HC165). приставка его опрашивает.
Вам нужно
1) научить первый МК, который в приставке, прикидываться регистром и отдавать по требованию приставки данные.
2) научить второй МК, который в джойстике, должен вместо приставки опрашивать регистр и получать из него данные.
3) научить первый и второй МК обмениваться данными.

все по полочкам разложил. что непонятно?

Re: Bluetooth джойстик для денди

Добавлено: Чт авг 01, 2013 08:27:40
Ромыч
я тут тоже не сидел даром 8)
концепция такая:

0) так как протокол джойстика простой, он ждет сигнал синхры (2мс), далее сигнал клок(2мс) и с каждым следующим сигналом клок отдает бит кнопки в последовательности A, B, Select, Start, Up, Down, Left, Right, после чего на него идет опять сигнал синхры.

1) МК в джойстике формирует сигналы синхры и клок, получаем байт состояния кнопок
2) Когда байт наполнится, отправляем его на УАРТ
3) МК в приставке получает байт и отправляет биты в камень, согласно такой же схеме с сигналами клок и синхры.

тут мне видится несколько подводных камней. А именно: вполне возможна некоторая задержка с передачей байта, но в связи с малой длительностью импульсов, не думаю, что будет слишком ленивая реакция на нажатия. Пока все в теории, на днях руки дойдут до макеток, там и будет видно