Programación en C para sistemas Embebidos

si

马上开始. 它是免费的哦
注册 使用您的电邮地址
Programación en C para sistemas Embebidos 作者: Mind Map: Programación en C para sistemas Embebidos

1. Seleccion de tipo de datos

1.1. si un puntero no se usa declarar const

1.1.1. Uso de punto flotante

1.1.1.1. constantes de punto flotante por defecto son double, excepto que se las especifique como float. a += 1.0 // double a += 1.0f // float

1.1.1.2. usar float 32 bits en lugar de double 64bits

1.1.1.3. operaciones de punto flotante ineficiente en ejecucion y memoria

1.2. evitar punto flotante

1.3. bit menor a 1

1.4. evitar double y long long

1.5. usar el tipo pequeñó

2. Estructuras y uniones anonimas

2.1. nombre de miembros tiene alcance fuera de la estructura o union

2.2. compilador c puede tener extensiones q las permite

2.3. prpias del lenguaje c++

2.4. son de utilidad para manipular los registros del procesador que mapean en direcciones de memoria

2.4.1. Por ejemplo: el registro U0CTL (Control de USART0)

2.5. tambien son de utilidad para definir variables booleanas ahorrando memoria

2.6. se debe poner flags = 0

2.7. Modificar o testear algún flag: if( waitingSomeEvent && someEvent ) { someEvent = 0; }

3. Alineamiento de estructuras

3.1. los datos de tamaño mayor que un byte deben estar alineados en direcciones pares.

3.1.1. En los de 32 bits, se alinean en direcciones múltiplos de 4.

3.2. El compilador agrega bytes de relleno para alinear variables

3.3. También se hace alineamiento dentro de las estructuras.

3.4. El acceso a variables desalineadas requiere de más instrucciones de máquina.

4. Partes de MSP430

4.1. tabla vector

4.2. funcion especial para registros

4.3. 16 bit modulos perifericos

4.4. RAM

4.5. Flash/ROM

4.6. 8 bit modulos perifericos

5. MSP430

5.1. 125 ns instrucciones en 1 ciclo

5.2. 16 BIT

5.3. Arquitectura Risc

6. Paso de parametros a funciones

6.1. consume tiempo y puede consumir memoria de la pila.

6.2. se pueden pasar en registros y/o a través de la pila.

6.3. Una función con hasta 4 parámetros los recibe en registros (R12, R13, R14 y R15). Ejemplo: void f2(unsigned char b, int n) { int a, i; for(i=0, a=0; i<n; ++i) a += b+i; }