Arduino MEGA 2560 и RX TX подключение к ней

morfius
morfius аватар
Offline
Зарегистрирован: 06.01.2017

Доброе время.

Копаю, но до конца для себя не найду ответа, на меге есть порты COMMUNICATION, там куча RX и TX.

Какой правильнее использовать для работы с SIM800,808,900 модулями? Я так понял, в ней есть аппаратный com? А в чем его прикол? Нужно ли использовать тот же softwareserial модуль, или что-то еще?

__Alexander
Offline
Зарегистрирован: 24.10.2012

там не куча, а 4 аппаратных uart. подписаны как TX0/RX0 - TX3/RX3. Использовать с модулем лучше от 1 до 3, т.к. через нулевой идет прошивка. Использовать программный смысла нет.

morfius
morfius аватар
Offline
Зарегистрирован: 06.01.2017

Круто, т.е. получается мега может одновременно грубо говоря 3 устройства поддерживать аппаратно, не считая софтового способа?

Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

morfius пишет:

Какой правильнее использовать для работы с SIM800,808,900 модулями?

Любой. В скетче нужно работать с тем, к которому подключено. Нюанс с нулевым __Alexander выше объяснил.

morfius пишет:

Я так понял, в ней есть аппаратный com?

Не COM, а UART. Есть как и влюбой другой ардуине, только в МЕГА2560 их четыре.

morfius пишет:

 А в чем его прикол? 

В том, чтобы соединять с ардуиной другие платы/модули/приборы, в котолрых тоже есть UART.

morfius пишет:

Нужно ли использовать тот же softwareserial модуль, или что-то еще?

Нет. Softwareserial - это программный UART. Используется в том случае, если не хватает аппаратного или заняты нужные пины.

Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

morfius пишет:

Круто, т.е. получается мега может одновременно грубо говоря 3 устройства поддерживать аппаратно, не считая софтового способа?

Да.

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Только осторожно. На некоторых мегах китайцы неправильно подписали TX1/RX1 (перепутали местами)

morfius
morfius аватар
Offline
Зарегистрирован: 06.01.2017

Вот у меня как раз как на картинке 1 в 1... Спасибо, обратил на это внимание, но не понял, почему так...

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

morfius пишет:

Вот у меня как раз как на картинке 1 в 1... Спасибо, обратил на это внимание, но не понял, почему так...

Ну, как почему? Просто, когда делали маску для подписей перепутали RX1 и TX1. На самом деле они наоборот: 18-ый пин - TX, а 19-ый - RX.

morfius
morfius аватар
Offline
Зарегистрирован: 06.01.2017

Не могу осилить аппаратное подключение и его отличие от софтового. У меня был написан проект под уну, сейчас хочу его на мегу перенести, так вот софтово - оно как бы так же может цепляться. Ради интереса подключаю к 14 и 15 пину.

SoftwareSerial mySerial(15,14); 

Ни ответа, ни привета... Аппаратные пины можно использовать с библиотекой SoftwareSerial?

Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

Да не нужны для аппаратного Serial никакие дополнительные библиотеки. Не нужна тут SoftwareSerial. У Меги2560 четыре аппаратных Serial. На пинах 14 и 15 находится Serial3. В коде так к нему и обращайтесь: Serial3.begin(), Serial3.print() и т.д.

 
morfius
morfius аватар
Offline
Зарегистрирован: 06.01.2017

void setup()
{
Serial3.begin(19200);
Serial.begin(19200);
Serial.println("START GSM MODEM");
Serial3.println("AT");  //подключен и исправен?
delay(500); // есть ли ответ от модема
  
           
   }


void loop(){
  /////////////тут чтение запись в ком
  if (Serial3.available()){
  Serial.write(Serial1.read());
  }
   if (Serial.available()){
  Serial3.write(Serial.read());}}

 

 

Что я делаю не так? Вижу бесконечную вереницу русской буквы я... яяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяя Подключил 14 и 15 пины... :/

Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

1) if (Serial3.available() > 0)  , вот пример посмотрите

2) Зачем Вы в строке 16 читаете Serial1 ?

Kshkoj
Offline
Зарегистрирован: 17.04.2017

И все же, кто нибудь знает достоверно - для чего на GSM модулях (например А6 мини) контакты 

HST_RXD Download serial port RXD Pin,pin level2.8V 

HST_TXD Download serial port TXD pin,pin level2.8V

UART_CTS/GPIO5 UART _CTS pin

UART_RTS/GPIO7 UART_RTS pin?

А так же - для чего используется     MIC2_P Headphone MIC interface?

 

заранее спасибо... и не судите строго ))))

Arhat109-2
Offline
Зарегистрирован: 24.09.2015

А по названию догадаться - никак? Первые 2 - скорее всего пины для загрузки прошивок ибо "download" .. вторые 2 - обвязка типового COM - сигналы готовности или как их там, не помню уже. Ну а "headphone MIC interface" мне кажется в переводе не нуждается .. не? :)

Kshkoj
Offline
Зарегистрирован: 17.04.2017

По названию, то все понятно. Перевести и сам могу :-) По поводу Сом - можно его ли использовать для подключения или только заливать прошивку? ... А по поводу микрофона - что за интерфейс? Для каких нужд его можно испльзовать?.. Если кроме перевода знаете как исползовать - приведите пример, ссылку на описание его использования. Во всех обзорах максимум подключают микрофон и довольны, что слышно, что творится вокруг... Но мне интересно, может данный интерфейс упрстит какую либо задачу в разработке...

morfius
morfius аватар
Offline
Зарегистрирован: 06.01.2017

Блин, в этом был трабл. Я сначала хотел на 1й перейти, потом передумал и оставил этот тут. Смотрю, вроде все ок, а не работает. Исправил на Serial3 и все поехало. :)

Jeka_M пишет:

1) if (Serial3.available() > 0)  , вот пример посмотрите

2) Зачем Вы в строке 16 читаете Serial1 ?

morfius
morfius аватар
Offline
Зарегистрирован: 06.01.2017

Аппаратно работает как-по мне вообще потрясно, нет после него желания вообще использовать софтовый, жаль только, что железные плюшки только в меге...

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

morfius пишет:

жаль только, что железные плюшки только в меге...

Почему? Просто в меге их три, а в уне - один, но есть.

morfius
morfius аватар
Offline
Зарегистрирован: 06.01.2017

А разве в уне он не используется для заливки в него скетчей? Я думал там аппаратно используется только для этих целей... ?

ЕвгенийП пишет:

morfius пишет:

жаль только, что железные плюшки только в меге...

Почему? Просто в меге их три, а в уне - один, но есть.

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Используется, и что? Залил через него, а дальше скетч работает и использует его для своих целей сколько хочет. А Вы что, никогда не пользовалиь Serial.print? Это же и есть использование аппаратного UART не для заливки, а для своих нужд. Точно также его и для других нужд можно использовать. Я вот через него с wi-fi модулем общаюсь, например.