ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Пятница
29 марта
432823 Топик полностью
Юра (14.08.2013 09:10, просмотров: 1) ответил Bill на И как именно вы предлагаете писать?
Да пусть в том же хидере, где Вы указали, что #define LED_PORT PORTB и что #define RED_LED_PIN 6, - описать чуть ниже для удобной работы несколько строк вроде: #define RED_LED_ON LED_PORT |= (1 < < RED_LED_PIN). И все. Лучше сразу там описать все возможные "кирпичики" для работы: LED_ON, LED_OFF, LED_TOGGLE... Ведь когда я, оседлав Пегаса, пишу (или, что еще страшнее, по исходному с-файлу вспоминаю через год логику работы устройства), то меня интересует действие, а не "на каком порту, какой бит, какой полярностью включает". А если изменится полярность? Менять по 20 файлам? И, кроме всего прочего, на Вашем LED_PORTу в 95% случаев будет висеть еще что-то. Почему я должен в 20 файлах проекта помнить, что управление направлением MODBUS-интерфейса у меня лежит на LED-порту, и писать LED_PORT |= (1 < < PIN_DIRECT ). Лучше это чудовище убрать в тот же хидер: #define MODBUS_DIRECT_TO_DEVICE LED_PORT |= (1 < < PIN_DIRECT ). В результате в нашем Сишнике имеем ясные строки: RED_LED_ON; MODBUS_DIRECT_TO_DEVICE; И комментировать-то нечего... И менять в одном месте. А про (0 < < ... ) - кому как удобно. Мне - редко.