Paso 2: El programa
Después de la primera ilustración hemos desarrollado un flujo de programa para definir las funciones del programa a implementar. El programa ofrecerá dos opciones de la función, prueba y modo RUN, para el equipo a seleccionar. En modo de prueba, el sistema de recopilar datos de cada sensor, almacenar los datos a la memoria y repetir. Continúa este proceso hasta que está apagado o cambiado a modo RUN. En funcionamiento el sistema funciona en una función de tipo de máquina de estado. Cada etapa de vuelo se representará como un estado dentro del programa. Dentro de cada estado el sistema recogerá los datos necesarios según lo definido por los requisitos del sistema junto con los datos necesarios para determinar la siguiente fase de vuelo. Una vez que se detecta la siguiente etapa de vuelo pasará a ese estado. Seguirá este proceso hasta que se ha completado la etapa final del vuelo. Una vez que el vehículo ha aterrizado completará su diez minutos temporizador, de forma inalámbrica que transmite los datos recogidos y apagar el sistema. Este programa de diagrama de flujo que representa esto es ilustrado aquí también.
Adjunto el código para el sistema final aquí junto con las librerías que utiliza. Originalmente hizo el programa en estudio seis de Atmel pero lo duplicado y cambió a formato de Arduino porque sé que hay un montón de fans de arduino aquí. Si se utiliza la interfaz de programación de otro siempre puede cambiar a trabajar muy fácilmente. El código utiliza un puñado de librerías así como usted puede los puertos correctamente debe ser muy fácil de usar. Una biblioteca se creó para casi cada componente por lo que mantiene el principal código que menos tiempo.
El programa utiliza algunas funciones para configurar cosas e inicializar todo. También tiene una función sólo para el LED RBG establecer indicadores. Por último es una función separada para el modo de funcionamiento. El sistema funciona en una máquina de estado como la moda que utiliza declaraciones caso determinar qué etapa está y termina dentro de las funciones para cada Estado. Los Estados son sólo números enteros definidos en orden en la parte superior de la programa para que los nombres se pueden utilizar en lugar de números.