Ник:
Пароль:

Контакты

E-mail: info@starterkit.ru
тел.: +7 922 680-21-73
тел.: +7 922 680-21-74
Телеграм: t.me/starterkit_ru

Способы оплаты

User Info


Добро пожаловать,
Guest

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

Ник:
Пароль:

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

ОбновитьПодробнееВсегоВсего:4
Форум » starterkit.ru » Embedded Linux
Ошибки при работе с библиотекой libserialport
sasamy
Добавлено 29.06.2024 22:51 Редактировалось 29.06.2024 22:52 Сообщение: 11
sasamy
4.71

Пункты: 84170
Регистрация: 14.08.2009
Цитата
Спасибо, разобрался. Все получилось ...


на всякий случай - текущее состояние всех клоков можно посмотреть через debugfs, в терминале выполнить

mount -t debugfs none /sys/kernel/debug
cat /sys/kernel/debug/clk/clk_summary
Спуститься к концу Подняться к началу
Персональная информация
dolmatov
Добавлено 06.12.2024 08:56 Редактировалось 06.12.2024 09:09 Сообщение: 12
dolmatov
0

Пункты: 1885
Регистрация: 03.07.2016
Наблюдаю еще одну проблему: передаю на linux плату поток монотонно инкрементируемых байтов с другой, НЕ-linux платы. Принимаю в цикле вот такой функцией с таймаутом 20 мс.

Код
cnt = sp_blocking_read(port, buf, 1, 20);


Так вот, в принимаемом потоке байтов на линукс плате отсутствуют байты со значением 0x11 и 0x13, соответственно число принятых байтов меньше числа переданных.
Прием / передача производятся с BaudRate = 230400, связь не по проводам а через BLE модули HC-42, но этот момент видимо не имеет значения, так как принимаемые байты контролируются третьей платой без линкуса уже на выходе НС-42 на линукс плате...
Сами значения непринятых байтов как бы о чем то намекают, но ясности все равно нет...
Спуститься к концу Подняться к началу
Персональная информация
dolmatov
Добавлено 06.12.2024 15:41 Сообщение: 13
dolmatov
0

Пункты: 1885
Регистрация: 03.07.2016
[quote]Наблюдаю еще одну проблему: передаю на linux плату поток монотонно инкрементируемых байтов с другой, НЕ-linux платы. Принимаю в цикле вот такой функцией с таймаутом 20 мс.

Код
cnt = sp_blocking_read(port, buf, 1, 20);


Так вот, в принимаемом потоке байтов на линукс плате отсутствуют байты со значением 0x11 и 0x13, соответственно число принятых байтов меньше числа переданных.
Прием / передача производятся с BaudRate = 230400, связь не по проводам а через BLE модули HC-42, но этот момент видимо не имеет значения, так как принимаемые байты контролируются третьей платой без линкуса уже на выходе НС-42 на линукс плате...
Сами значения непринятых байтов как бы о чем то намекают, но ясности все равно нет...[/quote]


Разобрался ..

Код
struct sp_port_config * config;
sp_new_config(&config);
sp_get_config(port, config);
sp_set_config_xon_xoff(config, SP_XONXOFF_DISABLED);
sp_set_config(port, config);
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » Embedded Linux