Автор Тема: UART3 - TX  (Прочитано 733 раз)

Оффлайн YWAS

UART3 - TX
« : Ноябрь 13, 2018, 12:32:52 am »
Всем доброго дня суток !!!!
Год работает UART3 - RX понятно на прием данных, потребовалось сделать вывод данных соответственно UART3 - TX - два дня бьюсь - ничего с него не выходит(осцилографом смотрел/UART-USB смотрел), уже кучу всего перечитал на предмет нюансов именно с  UART3 - TX - все в пустую
настройки script.fex->script.bin
[uart3]
uart_used = 1
uart_port = 3
uart_type = 2
uart_tx = port:PA13<2><1><default><default>
uart_rx = port:PA14<2><1><default><default>
работаю через wiringOP
main ()
{
  int fd; // дескриптор UARTa
  wiringPiSetup();
  if ((fd = serialOpen ("/dev/ttyS3", 19200)) < 0)
   {
      fprintf (stderr, "Unable to open serial device: %s\n", strerror (errno)) ;
      exit(1);
   }
    // хоть так
    serialPuts(fd, "TEST/n");

    /*
    // хоть так
    serialPutchar (fd, 'T');
    serialPutchar (fd, 'E');
    serialPutchar (fd, 'S');
    serialPutchar (fd, 'T');
    serialPutchar(fd,0x0D);
    serialPutchar(fd,0x0A);
    */
    serialFlush(fd);
}

Прием данных не приводил в примере, там все работает - а вот передача - ну никак
Спасите помогите, что еще ему надо - не могу понять

Оффлайн ua3nbw

Re: UART3 - TX
« Ответ #1 : Ноябрь 13, 2018, 12:13:21 pm »
[spi1] и [bt_para] отключены ?
Вроде ещё и секцию [gpio_para] надо редактировать.
uname  -a покажите

Оффлайн YWAS

Re: UART3 - TX
« Ответ #2 : Ноябрь 13, 2018, 12:17:25 pm »
uname -a
Linux orangepipcplus 3.4.113-sun8i #98 SMP PREEMPT Fri Oct 26 13:27:34 CEST 2018 armv7l armv7l armv7l GNU/Linux

вот все секции где встречается порт PA13 - .....used стоит ноль
[gpio_para]
gpio_used = 0
gpio_num = 0
....................
[spi1]
spi_used = 0
spi_cs_bitmap = 1
spi_cs0 = port:PA13<2><1><default><default>
spi_sclk = port:PA14<2><default><default><default>
spi_mosi = port:PA15<2><default><default><default>
spi_miso = port:PA16<2><default><default><default>
.................
[bt_para]
bt_used = 0
bt_uart_id = 1
bt_uart_baud = 1500000
bt_rst_n = port:PA13<1><default><default><0>
bt_wake = port:PG12<1><default><default><0>
bt_host_wake = port:PL06<0><default><default><0>
bt_host_wake_invert = 0


Оффлайн ua3nbw

Re: UART3 - TX
« Ответ #3 : Ноябрь 13, 2018, 01:55:01 pm »
проверил, у меня так:
[uart3]
    uart_used = 1
    uart_port = 3
    uart_type = 2
    uart_tx = port:PA13<3><1><default><default>
    uart_rx = port:PA14<3><1><default><default>
    ;uart_rts = port:PA15<3><1><default><default>
    ;uart_cts = port:PA16<3><1><default><default>

замкнул RX-ТX, запустил minicom эхо проходит

Оффлайн YWAS

Re: UART3 - TX
« Ответ #4 : Ноябрь 13, 2018, 03:03:54 pm »
программа minicom - еще тот черный ящик - с какими ключами её запустить надо для UART3 ??

решил проверить работает ли UART1 включил его
[uart1]
uart_used = 1
uart_port = 1
uart_type = 2
uart_tx = port:PG06<2><1><default><default>
uart_rx = port:PG07<2><1><default><default>
;uart_rts = port:PG08<2><1><default><default>
;uart_cts = port:PG09<2><1><default><default>
запустил тестовую програмку - данные выходят и входят

а UART3_TX - молчит как рыба

какой у вас Orange ?
 - может где то в дебрях wiringPi - есть трабл именно с UART3_TX

Оффлайн Olej

Re: UART3 - TX
« Ответ #5 : Ноябрь 13, 2018, 03:27:07 pm »
программа minicom - еще тот черный ящик - с какими ключами её запустить надо для UART3 ??
Можете глянуть здесь: отладочная консоль (UART).
Там же есть: можете (лучше) использовать не minicom, а screen - там же по ссылке всё есть.

Оффлайн YWAS

Re: UART3 - TX
« Ответ #6 : Ноябрь 13, 2018, 04:54:34 pm »
вообщем, для человека 20 лет с Windows, - эти программы как какое то недоразумение  (сорри) (даже с учетом работы в MS-DOS)

с командной строки проверил
echo tets > /dev/ttyS1

ответ - после UART-USB на ПК (в терминальной программе)
[16:45:22] t
[16:45:22] { 74 }
[16:45:22] e
[16:45:22] { 65 }
[16:45:22] t
[16:45:22] { 74 }
[16:45:22] s
[16:45:22] { 73 }
[16:45:22]
[16:45:22] { 0D }
[16:45:22]
[16:45:22] { 0A }

тоже самое для UART3
echo tets > /dev/ttyS3

тишина

Какие есть идеи, куда рыть - уже крик души - три дня на такой ерунде провозиться

На всякий случай - права одинаковые
ls -la /dev/ttyS*
crw-rw---- 1 root dialout 251, 1 Nov 13 14:41 /dev/ttyS1
crw-rw---- 1 root dialout 251, 3 Nov 13 14:41 /dev/ttyS3
« Последнее редактирование: Ноябрь 13, 2018, 05:02:52 pm от YWAS »

Оффлайн ua3nbw

Re: UART3 - TX
« Ответ #7 : Ноябрь 13, 2018, 05:16:24 pm »
программа minicom - еще тот черный ящик - с какими ключами её запустить надо для UART3 ??
После запуска необходимо открыть конфигурацию нажав CTRL-A O и указать имя COM порта
Welcome to minicom 2.7.1

OPTI+-----------------------------------------------------------------------+
Comp| A -    Serial Device      : /dev/ttyS3                                |
Port| B - Lockfile Location     : /var/lock                                 |
    | C -   Callin Program      :                                           |
Pres| D -  Callout Program      :                                           |
    | E -    Bps/Par/Bits       : 115200 8N1                                |
    | F - Hardware Flow Control : Yes                                       |
    | G - Software Flow Control : No                                        |
    |                                                                       |
    |    Change which setting?                                              |
    +-----------------------------------------------------------------------+
            | Screen and keyboard      |
            | Save setup as dfl        |
            | Save setup as..          |
            | Exit                     |
            +--------------------------+

Список устройств можно посмотреть командами:
dmesg | grep tty

сохранить конфигурацию, выйти и запустить minicom снова,
замкнуть TX-RX и при вводе символов с клавиатуры увидим эхо.

Цитировать
какой у вас Orange ?
 - может где то в дебрях wiringPi - есть трабл именно с UART3_TX
OpiPC

Вы можете проверить свой uart3 установив mainline kernel 4.14.y
и включив его в
armbian-config
--> System --> Hardware

Оффлайн YWAS

Re: UART3 - TX
« Ответ #8 : Ноябрь 13, 2018, 06:45:56 pm »
есть сслыка на mainline kernel 4.14.y ?
 что то я его не найду

Оффлайн YWAS

Re: UART3 - TX
« Ответ #9 : Ноябрь 13, 2018, 08:11:47 pm »
кстати в текущей версии в armbian-config --> System --> Hardware - нет Hardware

на форумах встречаю такую информацию - что не верно прописаны порты
uart3 {
allwinner,pins = "PG13", "PG14";         <<<<<<<<<<<<<<<<<<<< это
allwinner, function = "uart3";
allwinner,drive = <0x0>;
allwinner,pull = <0x0>;
linux,phandle = <0x12>;
phandle = <0x12>;
};

вот только пока не найду в каких файлах это прописано

Люди добрые - кто знает где оно - подскажите (я не очень большой знаток Linux - только учусь)

возможно  .dtb - но у меня нет таких ни директорий  ни файлов
« Последнее редактирование: Ноябрь 13, 2018, 09:07:21 pm от YWAS »

Оффлайн ua3nbw

Re: UART3 - TX
« Ответ #10 : Ноябрь 13, 2018, 10:50:54 pm »
кстати в текущей версии в armbian-config --> System --> Hardware - нет Hardware

В Mainline 4.x.y kernel

https://dl.armbian.com/orangepipcplus/Debian_stretch_next.7z
https://dl.armbian.com/orangepipcplus/Ubuntu_bionic_next.7z

Оффлайн YWAS

Re: UART3 - TX
« Ответ #11 : Ноябрь 14, 2018, 12:15:33 am »
за ссылки спасибо

поставил Ubuntu_bionic_next
 uname -a
Linux orangepipcplus 4.14.78-sunxi #412 SMP Fri Oct 26 11:37:04 CEST 2018 armv7l armv7l armv7l GNU/Linux

в arbian-config включил UART1 и UART3,
                               [ ] analog-codec                              │ │
│ │                          [ ] cir                                       │ │
│ │                          [ ] i2c0                                      │ │
│ │                          [ ] i2c1                                      │ │
│ │                          [ ] i2c2                                      │ │
│ │                          [ ] pps-gpio                                  │ │
│ │                          [ ] pwm                                       │ │
│ │                          [ ] spdif-out                                 │ │
│ │                          [ ] spi-add-cs1                               │ │
│ │                          [ ] spi-jedec-nor                             │ │
│ │                          [ ] spi-spidev                                │ │
│ │                          [*] uart1                                     │ │
│ │                          [ ] uart2                                     │ │
│ │                          [*] uart3         

 а показывает что их вообще куча
ls -la /dev/ttyS*
crw------- 1 root tty     4, 64 Oct 26 21:34 /dev/ttyS0
crw-rw---- 1 root dialout 4, 65 Oct 26 21:26 /dev/ttyS1
crw-rw---- 1 root dialout 4, 66 Oct 26 21:23 /dev/ttyS2
crw-rw---- 1 root dialout 4, 67 Oct 26 21:27 /dev/ttyS3
crw-rw---- 1 root dialout 4, 68 Oct 26 21:23 /dev/ttyS4
crw-rw---- 1 root dialout 4, 69 Oct 26 21:23 /dev/ttyS5
crw-rw---- 1 root dialout 4, 70 Oct 26 21:23 /dev/ttyS6
crw-rw---- 1 root dialout 4, 71 Oct 26 21:23 /dev/ttyS7


проверил вывод на UART1
 echo TEST > /dev/ttyS1

[0:09:36] T
[0:09:36] { 54 }
[0:09:36] E
[0:09:36] { 45 }
[0:09:36] S
[0:09:36] { 53 }
[0:09:36] T
[0:09:36] { 54 }
[0:09:36]
[0:09:36] { 0D }
[0:09:36]
[0:09:36] { 0A }

проверяю вывод на UART3
 echo TEST > /dev/ttyS3

Опять таже беда - НИЧЕГО нет на выходе

какая то жесть
может конечно выход проца сдох - но с чего бы ему дохнуть ХЗ
завтра прийдет еще одна плата - буду проверять на ней
« Последнее редактирование: Ноябрь 14, 2018, 12:18:53 am от YWAS »

Оффлайн YWAS

Re: UART3 - TX
« Ответ #12 : Ноябрь 14, 2018, 04:35:29 pm »
Пришла другая плата - все сделал так же - UART3 - TX - РАБОТАЕТ

В общем все оказалось тривиально - сдох вывод PA13(UART3 - TX) - такие выводы
выводить конечно на штырьки - прямо вывод с проца(как сделано на этих платах) - не лучший вариант -  НО дальше - я все разделил резисторами 100R - только потом к внешней м/с
даже если бы КЗ было дальше то током 33ма навряд ли можно было убить вывод

и да - на выводе PA13(UART3 - TX) - АНАЛОГИЧНО как и на других UART - во время перезагрузки - вывод в Z состояние переходит а потом на нем появляется лог "1"

...как бы то проверить вывод PA13(UART3 - TX) как GPIO - но пока не знаю как его настроить
кто в курсе - советуйте





Оффлайн ua3nbw

Re: UART3 - TX
« Ответ #13 : Ноябрь 14, 2018, 07:06:54 pm »

...как бы то проверить вывод PA13(UART3 - TX) как GPIO - но пока не знаю как его настроить
кто в курсе - советуйте
если Mainline ядро, и  установлен  WiringOtherPi (WiringOPi) проверить можно так:
gpio mode 8 out     // port:PA12 
gpio mode 8 down

gpio mode 7 in     //port:PA06
gpio mode 7 up

только подставьте  номер gpio mode для PA13
да, и  про ток 33ма , многовато будет.


Оффлайн YWAS

Re: UART3 - TX
« Ответ #14 : Ноябрь 14, 2018, 08:42:46 pm »
Согласно документации на проц, рабочие токи на I/O до 20ма,
и там же максимальные значения для I/O -   -40ma  +40ma
и я написал ток Короткого Замыкания - т.е. если бы где то и коротнул - не должно вылететь

P.S. согласно нику - Автор: ua3nbw - это позывной, и я когда то занимался (UA3CDL) правда работал только на 2х метрах,
 вы и сейчас практикуете? как там оно? живет?