Paso 4: Configuración de registro de bits
Los registros tienen algunos nombres que se especifican en la hoja de datos dependiendo de su significado, como ADCSRA para el registro de configuración del ADC: A. También cada poco significativa de los registros tiene un nombre, como ADÉN para la ADC activar Bit en el registro ADCSRA.
Para establecer sus bits podríamos utilizar la sintaxis normal de C para álgebra binaria, pero encontré en internet un par de macros que son muy bonitas y limpias:
Define y claro registro de bits
#ifndef cbi
#define cbi (sfr, bits) (_SFR_BYTE(sfr) & = ~_BV(bit))
#endif
#ifndef OSE
#define OSE (sfr, bits) (_SFR_BYTE(sfr) | = _BV(bit))
#endif
Usarlas es muy simple, si queremos establecer en 1 el Bit habilitar de la ADC sólo podemos escribir:
SBI(ADCSRA,Aden);
Mientras que si queremos establecer a 0 (identificador de est claro) sólo podemos escribir:
CBI(ADCSRA,Aden);