Re: Простой стабилизированный регулятор мощности ТЭНа из китайских модулей
kvic, d.styler, 
На основе наработок Виктора, предложу свой вариант.
Поскольку передаём исключительно числовые параметры, есть смысл уйти от передачи в ASCII к бинарному коду. Малость сэкономим ресурсы немощных ардуинок.   
 
=====
Информация от стабилизатора    
Формат посылки (буква=полубайт, всего шесть байт): AB CD DD EE EE GG
A - Заголовок
B - Состав данных
C - Режим + ошибки
D - Измеренное входное напряжение сети    (три полубайта, диапазон значений 0...4095, т.е. до 409,5В)
E - Измеренный выходной параметр или текущая уставка (два байта, диапазон значений 0...65535)
G - Конец посылки (CR) (один байт: $0D)
Полубайт «Состав данных»
младший бит - «уставка и выход» - 0-напряжение, 1-мощность            
второй бит - «измерение выходного параметра» 1-измеряется, 0-нет            
третий бит - «измерение входного напряжения» 1-измеряется, 0-нет            
четвертый бит - (резерв)
Для стаба Виктора полубайт «состав данных» - b0010, т.е. 
«уставка и выход» - напряжение, 
выходной параметр - измеренный, 
входное напряжение сети - НЕ измеряется
Для моего стаба полубайт «состав данных» - b0101, т.е. 
«уставка и выход» - мощность, 
выходной параметр - НЕ измеряется и передается текущая уставка, 
входное напряжение сети - измеряется
Если в качестве заголовка использовать b0011, то вместе с полубайтом «состав данных» в терминале первый символ будет отображаться информативно (0...9 или одним из символов : ; < = > ? )
Полубайт «Режим + ошибки»
два младших бита — режим
b0000 - Стоп (по нулям, значит в стопе, логично же)
b0001 - Рабочий режим (старается поддерживать заданный выходной параметр)
b0010 - Разгон
b0011 - (резерв)
установленный третий бит при нулевом четвертом - ошибка на входе        
b0100 - Сети нет (на выходе ноль, т. е. режим стоп, и два младших бита не врут)    
b0101 - Напряжения сети недостаточно для достижения уставки    
b0110 - (резерв)
b0111 - (резерв)
далее - ошибки на выходе и прочие...
=====
Управление стабилизатором
Формат посылки (буква=полубайт, всего не более четырех байт): AA BB BB GG
A - Заголовок (M,U,P…)
B - Код режима или уставка (один или два байта, диапазон значений 0...65535)
G - Конец посылки (CR) (один байт: $0D)


 
 



