Форум myROBOT.ru » Лаборатория » Электронная мастерская » Arduino + Skylab SKM53

Страниц (1): [1]
 

1. troll - 21 Января, 2011 - 23:02:27 - перейти к сообщению
День добрый!

Нужен совет.

Есть Ардуина, которая на выходы имеет ТТЛ 5В.

Есть некий модуль Skylab SKM53, который, как следует из даташита
http://www.skylab.com.cn/datashe...Nav_SKM53_DS.pdf
Цитата:
UART Ports: The module supports one full duplex
serial channels UART. The serial connections are at
2.85V LVTTL logic levels, if need different voltage
levels, use appropriate level shifters.


Вопрос: как подружить TTL 5v Ардуины и 2.85V LVTTL этого модуля.

Такой модуль был выбран исключительно исходя из цены.

С другой стороны, ресурс
http://www.pieterprovoost.nl/blog/?page_id=81
рекомендует подключать "напрямую"

Что посоветуете?

Ссылка
http://www.arduino.cc/cgi-bin/ya...num=1273151381/0
привнесла больше вопросов чем ответов.

Спасибо.
2. nest - 22 Января, 2011 - 00:34:07 - перейти к сообщению
запитать ардуину от 3-ёх вольт.

Но вообще как то нелогично в даташите на модуль: питание от 5 , а интерфейс что то про 2,85 написано, хотя по таблице (TTL:VOH≥0.75 *VCC VOL≤0.25VCC) получается 3,75....

других ГПС модулей не было совсем ? Улыбка

что бы на всякий случай: подавайте на него через резистывный делитель, а с него брать - прямиком.
3. Белый Волк - 22 Января, 2011 - 06:22:16 - перейти к сообщению
troll
Соглашусь с nest: стоит измерить амплитуду импульсов на выводе TXD, поскольку в технической документации, очевидно, неоднозначность. Снижение питания Arduino до 3 вольт - тоже может быть решением (посмотрите datasheet - возможно придётся снизить тактовую частоту).
Напрямую подключать не советую. В крайнем случае, преобразователь уровней можно выполнить на двух биполярных транзисторах.
4. troll - 22 Января, 2011 - 10:10:34 - перейти к сообщению
Белый Волк пишет:
troll
В крайнем случае, преобразователь уровней можно выполнить на двух биполярных транзисторах.


О, а можно подробнее?
В Ардуине есть источник 3.3В Может можно им воспользоваться?
Спасибо!

На счет других модулей - были. Но вопрос цены оказался решающий :-)
(Добавление)
nest пишет:
хотя по таблице (TTL:VOH≥0.75 *VCC VOL≤0.25VCC) получается 3,75....


Мда... Из
TTL:VOH≥0.75 *VCC VOL≤0.25VCC
получается, что он должен принимать 5В?

Короче, прийдет модуль - попробую.
5. Белый Волк - 22 Января, 2011 - 12:59:55 - перейти к сообщению
troll
Примерно такая схема:
6. troll - 22 Января, 2011 - 13:08:32 - перейти к сообщению
Спасибо!
7. troll - 02 Февраля, 2011 - 01:44:35 - перейти к сообщению
Всем привет.

Кратко отпишусь о рез-тах.

1. Получил модуль.
2. Подключил "напрямую", рассудив трезво, что из TTL:VOH≥0.75 *VCC VOL≤0.25VCC следует по крайней мере, что не пойдет дым.
3. Написал простенькую прогу:

CODE:

#include <NewSoftSerial.h>

NewSoftSerial gps(2, 3);

void setup()
{
Serial.begin(9600);
gps.begin(9600);
}

void loop() // run over and over again
{
if (gps.available()) {
Serial.print((char)gps.read());
}
}


4. Получил ответ от модуля:
CODE:

$GPGSA,M,1,,,,,,,,,,,,,,,*12

$GPGSV,1,1,03,24,,,29,11,,,28,28,,,18*7E

$GPRMC,223944.165,V,,,,,0.00,0.00,010211,,,N*46

$GPGGA,223945.165,,,,,0,0,,,M,,M,,*41



Итак. Модуль вроде работает, подключение удалось.
Но спутников мы не видим, координат нет. Наверное все из-за неудачного расположения моего балкона...
8. cjA - 02 Февраля, 2011 - 07:30:12 - перейти к сообщению
только военные спутники не на геоцентрической орбите, они и не ответят, ясен пончик.
При чем тут балкон? Попросите соседа
9. troll - 07 Февраля, 2011 - 02:16:51 - перейти к сообщению
Удалось найти в квартире место устойчивого приема. Теперь модуль ЖПС отдает МК правильные координаты. Проверял в ГугльЕарз - попадание есть :-)

Если кому надо - скину программу для Ардуины.

http://home.mira.net/~gnb/gps/nmea.html#gprmc

Странно. В прошлый раз в том месте приема не было. Поменялась конфигурация спутников?