ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Вторник
26 ноября
735276 Топик полностью
Dingo (10.02.2017 11:09, просмотров: 143) ответил vllv на У меня другой подход.
Понял, что меня смущает. Много текста, который тяжело охватить сразу. #define INIT_LEDUSB_G_OFF() do { \ SET_MODER(B,8,OUTPUT_MODE); \ SET_OTYPE(B,8,PUSH_PULL_OTYPE); \ SET_OSPEED(B,8,LOW_SPEED); \ SET_PULL(B,8,PULL_NOT); \ RESET_OD(B,8); \ } while(0) Я бы завернул ещё в макрос/функцию, для подстановки "B" и "8". Но замечание о разнесении уровней платы и функционала правильная. Есть такая возможность: #if defined __BOARD1__ // some code 1 #elif defined __BOARD2__ // some code 2 #else #error Check board! #endif Опять же, про вкус и цвет фломастеров..