Manipulación de registro del microcontrolador (2 / 6 paso)

Paso 2: Hacer código más corto el camino fácil...

Vamos a empezar con un dibujo simple que comprueba el estado de uno de los 4 botones y lazos de ese valor a cada uno de 4 LEDs. Pulse cualquier botón, el LED correspondiente se enciende.

He incluido asignación de pines para las 5 tablas diferentes que se muestra aquí, el chipKIT Max32, DP32, Uno32, tarjetas Uc32 y CMOD y el Arduino UNO:

Ahora, cuando empecé a escribir código, estaba siempre el código más largo que pude pensar porque no sabía mejor. Me imagino que habría parecía algo como esto:

(Se puede utilizar con pocos cambios en las asignaciones de pines. Copiar y/sin comentarios según sea necesario. Estos pernos fueron elegidos porque hará más fácil manipular los registros más adelante. Más código se añadirá más adelante para cada una de estas placas.)

De arriba a abajo, este sketch es 73 líneas (sin contar comentarios), y usando MPIDE requerirá 6664 bytes de memoria para el chipKIT Uno32 y 1402 bytes para el Arduino UNO.

Ahora, echemos un vistazo a una versión modificada, esta vez utilizando algunos lazos de() parahacer las cosas repetitivas y algunas anidados digitalRead() y digitalWrite() comandos para asignar Estados de pin.

Este bosquejo es notablemente más corto. De hecho, es menos de un tercio en 20 líneas sin comentarios. Tarda un poco menos espacio en memoria (6324 bytes para chipKIT, 1074 bytes para Arduino), pero la única ventaja es que el bosquejo tiene menos líneas. La instrucción en memoria es aproximadamente el mismo. El compilador aún tiene que buscar y cargar el pinMode(), comandos de digitalRead() y digitalWrite() de los archivos de biblioteca de fondo. Estos vienen prefijados de tamaño, así que si usted los usa ni una sola vez las instrucciones de montaje se deben cargar en la memoria del chip.

Así que incluso si acortamos el código, es claro que no se puede ahorrar mucho espacio en el chip. Vamos a arreglar eso.

Artículos Relacionados

Cómo conducir una gran cantidad de LEDs de unos pines del microcontrolador.

Cómo conducir una gran cantidad de LEDs de unos pines del microcontrolador.

Con el hecho de que muchos pines del microcontrolador tienen tres Estados (+ V, GND, o"alta impedancia", coche N*(N-1) LEDs de pines N. Así que el pequeño 8microcontrolador de PIN como un PIC12Fxxx o un ATtiny11 puede conducir 20 LEDs ensus cinc
Principio microcontroladores parte 11: Temporizadores, contadores y el reloj del microcontrolador

Principio microcontroladores parte 11: Temporizadores, contadores y el reloj del microcontrolador

Temporizadores y contadores son tan esenciales que usted verá muchos ejemplos que a lo largo de esta serie. Como el nombre lo dice, se utilizan temporizadores para tiempo y contando. Cuenta y el tiempo le permite hacer algunas cosas muy prolijo como
El registro del cambio del 74HC164 y su Arduino

El registro del cambio del 74HC164 y su Arduino

registros de desplazamiento son una parte muy importante de la lógica digital, actúan como pegamento entre los mundos paralelos y en serie. Reducir cuentas de alambre, perno uso e incluso ayudar a tomar la carga de tu cpu por ser capaces de almacenar
Introducción a la depuración del microcontrolador (y un cronómetro Pomodoro)

Introducción a la depuración del microcontrolador (y un cronómetro Pomodoro)

Lectores de Hola Hack-A-Day y prototipos peligroso!  Por favor voten por mí en la uC de Sparkfun concurso!  (Si votas por mí puede todavía votar para otros proyectos así)  El botón de votación es justo arriba e izquierda de aquí... hay que ir... más.
Cómo crear números de registro del barco

Cómo crear números de registro del barco

lo hice en TechShop Menlo Park. http://www.techshop.comEn el proceso de pintar un barco que consiguieran raspar las cifras de registro para una limpieza suave mirar. Sin estos el barco es ilegal estar en el agua. Se trata de cómo crearlas:Paso 1: Gua
Conceptos básicos del microcontrolador mbed para el brazo

Conceptos básicos del microcontrolador mbed para el brazo

mientras que visita a una feria de Brsitol Pi, recogí una placa de microcontrolador de brazo gratis (normalmente cuesta £30 +). Hubo dos juntas siendo regalados, que eran nuevos en el modelo de LPC1768 tiempo. Lo tengo porque en el momento había esta
STATSulator: Registro del entrenamiento

STATSulator: Registro del entrenamiento

el STATSulator es un php/mysql de la aplicación y bs2 escritorio pantalla lcd que realiza un seguimiento de tu entrenamiento. Le permite ver lo que sus compañeros de entrenamiento también están poniendo en, horas de raws, no los detalles para su acti
Registro del corte del laser

Registro del corte del laser

Paso 7: Haga su propio Puede convertir sus archivos de audio en trazados de corte vectoriales en diez pasos:1. descargar el procesamiento.2. Descargar Python 2.5.4.3. Descargar Audacity.4. descargar el código en GitHub (se puede descargar el archivo
DIY Laser Tag sistema (versión de prueba del microcontrolador)

DIY Laser Tag sistema (versión de prueba del microcontrolador)

aquí está el esperada etiqueta sistema microcontrolador setup! Si usted tiene tener un microcontrolador con entradas múltiples, entonces esto le dirá cómo utilizarlo para crear y programar un sistema de etiquetas láser de su cuenta con una personaliz
Araña y registro del bosque negro

Araña y registro del bosque negro

Utilice estos pasos para hacerte un registro con una araña y los huevos directamente de la selva negra!INGREDIENTESReceta de pastel de chocolate-blanco 1 taza de azúcar-1 taza de harina-6 cucharadas cacao en polvo sin azúcar-3/4 cucharaditas polvo de
FUENTE de alimentación del microcontrolador de PIC

FUENTE de alimentación del microcontrolador de PIC

Hola todo el mundo,Mi nombre es Atanas, de MACEDONIAEn primer lugar, quiero que todo el mundo para ver mi YouTube video.Mi video para este proyecto.Volveré pronto a publicar el esquema y el código de este proyecto.Gracias.
Gran pantalla de LED de desplazamiento

Gran pantalla de LED de desplazamiento

Este es un instructivo para crear una pantalla de LED desplazamiento grande (600 mm x 400 mm).Este fue un proyecto en Hackspace de Nottingham en el Reino Unido junto a Instructables. Instructables enviado el hackspace cientos de grandes (10mm) LEDs p
¿$ 15,00 informática básica? ¿

¿$ 15,00 informática básica? ¿

Imaginar un microcontrolador que se puede conectar un terminal de serie hasta para obtener un prompt ok? ¿Qué pasaría si se cambia uno de los registros de control puedo ver el efecto inmediato? ¿Es realmente posible descargar programas en este chip d
Construir y una bobina de Tesla Musical de MONSTER con un microcontrolador del código

Construir y una bobina de Tesla Musical de MONSTER con un microcontrolador del código

visita mi página de youtube para más proyectos: http://www.youtube.com/channel/UCksEFn8xaLP0z4rsiHa9zcA?feature=mheeComo suben los meses de invierno, muchos se obligado a permanecer en el interior... Para muchos, esto significa jugar scrabble con la