Tengo 2 microcontroladores totalmente diferentes (uno es MSP de 16 bits y otro nórdico de 32 bits). Se supone que deben hacer la misma tarea y pensé que tal vez sería posible escribir un programa en lenguaje C y luego usar diferentes compiladores mientras los programaba. Obtuve algunos archivos xxx.h comunes con diferentes implementaciones de origen para cada dispositivo, por lo que parte del código se vería exactamente igual. La diferencia es cuando se trata de escribir registros internos y esa parte del código tiene que ser diferente para cada dispositivo, por lo que he pensado en introducir una macro que apunte a qué microcontrolador quiero compilar el código. Entonces podría utilizar la directiva #ifdef dentro de los archivos de origen para llevar la compilación condicional. No tengo experiencia con tal programación, así que necesito algunos consejos, ¿es una buena idea o es mejor escribir un programa para cada microcontrolador?