#include "muxer.h" #include void muxer_init(){ DDRC |= (_BV(0)|_BV(1)|_BV(2)|_BV(3)); // conf as outputs PORTC |= _BV(3); // inhibit } void muxer_set(uint8_t channel){ PORTC |= _BV(3); // engage inhibit PORTC &= ~(0x07); //mask PORTC |= channel & 0x07; //set PORTC &= ~(_BV(3)); // disengage inhibit //TODO: delays, check everything, mask in register }