взяв за основу предложенный демонстрационный пакет
сделать код управляемым и удобочитаемым

чтобы путем несложных манипуляций с кодом, я мог независимо изменить количество 
вводимых - выводимых параметров от 0 до максимума
в принципе, можно даже без циклов сделать
по принципу:
на стороне ардуино:

сетап:

список и количество пинов на ввод
список и количество пинов на вывод
список и количество пинов на ADC
список и количество пинов на DAC

loop:
цикл передачи вводных пинов
цикл передачи пинов ADC
цикл приема пинов на вывод
цикл приема DAC


полностью аналогично на стороне питона:

цикл приема "digital-in-N"
цикл приема "analog-in-N"
цикл передачи "digital-out-N
цикл передачи "analog-out-N

