He estado recorriendo los foros para una implementación completa de I2C para MSP430G2553 usando Code Composer Studio. Todo lo que puedo encontrar son fragmentos de código fuera de contexto o ejemplos de un solo byte.
Necesito averiguar cómo hacer lo siguiente usando Code Composer Studio 7x en un MSP430G2553 con I2C:
- Escriba un byte de datos en un registro específico.
- Necesito hacer lo anterior en 2 esclavos I2C diferentes.
- Necesito leer MÚLTIPLES bytes de un solo esclavo I2C.
Soy nuevo en la programación de controladores. He estado programando en Windows durante 20 años, pero la programación del controlador de bajo nivel es solo un gran cambio de paradigma para mí. Si alguien pudiera indicarme un buen ejemplo de las 3 operaciones anteriores que funcionarán en Code Composer Studio 7.x, estaría muy agradecido.
No le estoy pidiendo a alguien que escriba mi código. Solo tengo problemas con los conceptos básicos de cómo funcionan las cosas cuando se programan los controladores en CCS. Estoy acostumbrado a llamar a una función como:
SetPinMode(14,OUTPUT);
Lo anterior, cuando se llame, establecerá el pin 14 como un pin de salida.
Sin embargo, cuando veo algo en un ejemplo de TI como:
UCB0CTL0 = UCMST + UCMODE_3 + UCSYNC; // I2C Master, synchronous mode
No puedo darle ningún sentido. Todo está abreviado. Establecer valores es actuar como llamar a una función. Es agradable y compacto, pero para un tipo acostumbrado a llamar a una función con un nombre significativo, es incomprensible ... Parece un jibberish. No puedo leer ese código y averiguar qué partes de él están haciendo lo que ... Estoy pensando que podría necesitar alguna clase de 'Introducción a la Programación del Controlador' para ponerme en el modo de descifrar el código anterior.
Me parece que el mundo de la programación del controlador usa "mano corta" en lugar de funciones de llamada. Estoy seguro de que hay buenas razones para esto, pero es muy difícil de seguir cuando empiezas por primera vez. Cualquier ayuda útil con algunas explicaciones que sean útiles para alguien como yo que no sepa la respuesta sería muy apreciada.
Cualquiera puede decir que sabe cómo hacer algo. Una persona verdaderamente dotada puede enseñárselo a alguien que aún no lo sabe. Eso es lo que estoy pidiendo aquí. O al menos guíame a alguna fuente donde los ejemplos se alimentan con una cuchara para empezar. Simplemente no entiendo todo el paradigma en este punto, por lo que me cuesta descifrarlo ...