Programación en Lenguaje "C" Programación en Lenguaje "C" Programación en Lenguaje "C"
Programación en Lenguaje "C" Programación en Lenguaje "C" Programación en Lenguaje "C"
Programación en Lenguaje "C" Programación en Lenguaje "C" Programación en Lenguaje "C"
Microprocesadores y Microcontroladores
N.° de práctica: 06
nombre
Objetivos de aprendizaje.
Que el estudiante aprenda y aplique la estructura básica de programación en ‘C’
utilizada en microprocesadores y microcontroladores, con base en el sistema de
desarrollo.
Material y equipo.
Tarjeta de desarrollo, Computadora con ambiente Code Composer Studio, hojas
de especificaciones del microcontrolador
microcontrolador. Documento spnu151l.pdf “ARM
Optimizing C/C++
C++ Compiler v15.12.0.LTS. User's Guide”. Libro de J.Valvano.
-Cable
Cable BNC y Osciloscopio.
-Leds,
Leds, Switches N.O. y resistencias de 330 Ohms a 1kOhm, alambre AWG22.
Actividad previa.
a) Presente una tabla donde muestre los tipos de datos para una variable en
lenguaje C y los diferentes nombres usados para cada tipo que emplea el
Compilador del ambiente CCS
CCS, su tamaño en bytes, rango, y su tipo de
representación (ASCII, binaria, complemento a 2)
2). Revise el manual
spnu151l.pdf.
b) ¿Para qué sirve la directiva #define?
c) Describa la diferencia entre los siguientes operadores a) & y &&, b) | y ||.
Muestre un ejemplo de uso de cada operador.
d) Explique la forma en que se define un array y cómo se accede a sus elementos
en lenguaje C.
e) Explique qué es el scope de una variable en el entorno de C.
f) ¿Qué es una variable global y una local?
g) Presente 2 maneras de hacer un loop infinito en lenguaje C.
h) En lenguaje C, ¿Cómo se define la referencia a una dirección de un registro
empleando la directiva #define? (Ref. Valvano)
i) Describa en sus propias palabras el modo de funciona funcionamiento
miento de bits
direccionables (o direccionamiento de bits específico) en un puerto GPIO.
j) En los programas, main.c y main2.c complete los valores de configuración
faltantes (marcados como (a), (b), etc… ) considerando para el procesador
Manual de Prácticas
Microprocesadores y Microcontroladores
empleado TM4C1294. T
Tome
ome en cuenta los operadores lógicos en C:
C ^= , |= ,
&= . Se revisará y se le interrogará sobre el código implementado.
k) Escriba el código para implementar un retardo (ciclo o loop para realizar
reali un
conteo) de aproximadamente 1 segundo y agregarlo entre cada cambio de
estado del LED(2) de la tarjeta TIVA
TIVA.
l) Sea el registro GPIO_PORTA_DATA_R un registro definido en lenguaje C
conteniendo el dato 0x92.
m) ¿Qué acción (establecer/apagar/negar) tiene sobre los bits, las siguientes
operaciones lógicas en lenguaje C?. Especifique el resultado en formato
binario y hexadecimal. Explique qué función realiza cada sentencia según la
“máscara” (valor del lado derecho del signo “igual”).
Desarrollo.
1) Crear un proyecto para programar en Lenguaje C.
2) Implemente una rutina de inicialización en lenguaje C para las terminales
PH0 y PH1 como de salida digital y las terminales PK5 y PK7 como de
entrada digital.l. Identifique las terminales.
3) Conecte en las terminales de salida un Led en cada una empleando una
resistencia limitadora de corriente. Su activación se hará con lógica positiva.
Conecte en las terminales de entrada un Switch en cada una alambrados
con lógica positiva.
4) Implemente un ciclo continuo para leer el estado de los switches y reflejarlo
en los Leds de acuerdo a la siguiente tabla:
Manual de Prácticas
Microprocesadores y Microcontroladores
Entrada Activación
SW1 (PK5) LED1 (PH0)
SW2 (PK7) LED2 (PH1)
Conclusiones.
El estudiante debe generar, con carácter obligatorio, sus propias conclusiones,
haciendo énfasis en los objetivos planteados al inicio de la práctica
práctica.
Bibliografía