
Dolphin
05.06.2017
15:05:50
успехов )

Danil
05.06.2017
15:07:01
еще один плюс моего варианта можно детектировать кз и обрыв на линии если пульт вынесен. правда для детекта обрыва нужен еще резюк номиналом х16~32 подключенный постоянно. по контролю напряжения на входе ацп можно все детектировать тогда
кз по 0 на входе т. к. даже все нажатые кнопки дают напругу выше 0

Dolphin
05.06.2017
15:08:32
+ можно пропускать обработчик кнопок при детекте отключения клавиатуры, чтобы не тратить время и ресурсы

Google

Dolphin
05.06.2017
15:08:42
а при подключении - обрабатывать

Danil
05.06.2017
15:09:34
как вариант, но обычно кнопки с учетом реакции человека на загрузку проца влияют никак

Dolphin
05.06.2017
15:11:21
ацп же
медленный
@Byte_kgd вот же дурацкая задачка с приемом ))

Byte
05.06.2017
15:26:29

Dolphin
05.06.2017
15:26:48
вот есть буфер, допустим 12 байт, я принимаю 8 байт - конец передачи, указатель на 9й байт смещен. Принимаю еще 8, дописываю в конец, и 4 байта в начало
как узнать сколько байт я принял? :D

Byte
05.06.2017
15:28:01
Счётчиком! :-D

Dolphin
05.06.2017
15:28:08
ок
в какой момент сбрасывать? :D

Danil
05.06.2017
15:28:23
ацп настраиваешь на сбор данных по прерыванию. по таймеру запускаешь раз в 20 мс 5-10 циклов замеров с усреднением и всё

Google

Danil
05.06.2017
15:28:47
на основную программу никак не влияет

Dolphin
05.06.2017
15:28:47

Danil
05.06.2017
15:29:02
в чем другая?

Byte
05.06.2017
15:29:21

Dolphin
05.06.2017
15:29:33

Byte
05.06.2017
15:29:40
Я тут просто в водонагревателе копаюсь, мозг другим занят :-)

Danil
05.06.2017
15:29:43
периодически измеряешь напряжение и в конце измерения делаешь то или иное действие от его уровня.

Dolphin
05.06.2017
15:29:50
но как мне узнать длину очереди передачи?
управляющие слать?

Danil
05.06.2017
15:30:29
можно тупо ставить фаги битовые для каждой кнопки и в другой задаче уже обрабатывать логику

Dolphin
05.06.2017
15:31:47

Danil
05.06.2017
15:32:05
ну иногда на 1 меньше, зависит от реализации

Dolphin
05.06.2017
15:32:27
Как мне определить, что это новый пакет УАРТ
а не продолжение первого

777Andrej
05.06.2017
15:32:48
В3-54 в Казахстане, никому не нужен?

Danil
05.06.2017
15:32:54
некоторые кольцевые буферы так напрямую имеют только один параметр - длина. если не 0, то можно выгребать

Dolphin
05.06.2017
15:33:07
верхний уровень над этим городить? ))

Google

Petr
05.06.2017
15:33:19

Danil
05.06.2017
15:34:13

777Andrej
05.06.2017
15:34:18
Ага

Dolphin
05.06.2017
15:34:22
ну вот и я о том

Danil
05.06.2017
15:34:57
можно делать заголовок и бит стаффинг для таких символов в пакете
самый простой вариант

Dolphin
05.06.2017
15:35:36
в кавычки брать )
ок спасибо, собственно туда мысля и работала

IDDQD
05.06.2017
15:37:18
Ну да, это протокольный уровень

Dolphin
05.06.2017
15:38:55
Я думал таймер ставить на длительность высокого на линии, и если она больше 4 стопов, обрубать пакет

Danil
05.06.2017
15:38:55
удобно юзать небинарные пакеты - куча непечатных кодов для команд и заголовков пакетов

Dolphin
05.06.2017
15:39:43
не, я софтово пишу для аврки

Danil
05.06.2017
15:40:01
в принципе сожно и софтово сделать таймаут
опять же и ASCII и таймауты для бинарного протокола уже есть например в Modbus

Dolphin
05.06.2017
15:40:53
да, типа если принял байт, врубаю таймер, если идет байт - сбрасываю, если нет, по таймауту - рублю пакет

Danil
05.06.2017
15:40:58
все уже придумано

Dolphin
05.06.2017
15:42:16
точно, так и сделаю

Danil
05.06.2017
15:42:47
если канал с помехами, то используй CRC хотя бы 8 битный - реализация на таблице очень экономичная будет

Dolphin
05.06.2017
15:43:11
не

Google

Dolphin
05.06.2017
15:43:21
затратно для тиньки )

Danil
05.06.2017
15:43:37
тинька какая?

Dolphin
05.06.2017
15:43:43
13а )

IDDQD
05.06.2017
15:44:06
Байт данных байт crc?

Danil
05.06.2017
15:44:22
ну там же софт уарт и скорость гавно. успеешь с запасом црц8

Dolphin
05.06.2017
15:44:46
57600 добился
можно XOR впринципе для контрольной суммы

Danil
05.06.2017
15:45:39
если в канале возможны помехи (читай не соединение в пределах одной платы), то лучше проверять целостность данных. а то пустит вам та тинька газ или воду и привет

Dolphin
05.06.2017
15:46:07
нене, это не в продакшн, только для отладки

Danil
05.06.2017
15:46:09

IDDQD
05.06.2017
15:46:12

Danil
05.06.2017
15:46:59

Dolphin
05.06.2017
15:47:28

IDDQD
05.06.2017
15:47:40
Давайте в турбокод лучше это все завернем

Petr
05.06.2017
15:48:29
Долфин, возьми уже что-нибудь более мощное?

Danil
05.06.2017
15:48:38
вторая строка "table CRC8 avr" статья на хабре

IDDQD
05.06.2017
15:48:52

Dolphin
05.06.2017
15:48:55

Danil
05.06.2017
15:49:17

Google

Dolphin
05.06.2017
15:49:20
в более мощном это есть аппаратно

Petr
05.06.2017
15:49:30
Ну вот

Dolphin
05.06.2017
15:49:40
ну какой смысл? ))
делать мигалку 2812 на стм32?
смысл?
или контроллер подсветки на стм32?

Joric
05.06.2017
15:51:02
моднейшаы достижения електронной техники и електронного хозяйства https://i.imgur.com/jwv4PuE.jpg

Danil
05.06.2017
15:52:45
Спасибо
3 строка выдачи гугл - код табличного CRC

Dolphin
05.06.2017
15:52:48
Ну вот
я больше ради спортивного интереса пишу, хочу получить профит в виде сатисфэкшна, например )

Petr
05.06.2017
15:52:58

Danil
05.06.2017
15:53:04
затраты 256 байт флэша

Dolphin
05.06.2017
15:53:19
у меня отправка 54 байта

Danil
05.06.2017
15:53:42
а что у вас основной код уже больше 700 байт?

Dolphin
05.06.2017
15:54:16
так основной код то будет не только отправлять и принимать

Danil
05.06.2017
15:54:21
это же исполнитель на тиньке у которой нихуя нет.

Dolphin
05.06.2017
15:54:27
например 2812 контроллер - 500 байт

Danil
05.06.2017
15:55:32

Dolphin
05.06.2017
15:56:03
да че вы все заладили а? )) ну извращаюсь и чо )