Diversión con foto montaje - episodio 6 (3 / 4 paso)

Paso 3: Software

El enlace de software se enumera a continuación. Mientras que se destina a la 16F688, fácilmente se adaptó a otras versiones de la foto. Usted necesitará cambiar la línea que identifica la versión de PIC (lista =) y el archivo de inclusión, pero los cambios intuitivas. La línea __CONFIG también necesite ajustar sólo porque uno o dos de las etiquetas utilizadas se deletrean diferentemente en algunos de los archivos de inclusión.

La mayoría del software se refiere al manejo de LCD y las rutinas de retardo por lo que las partes deben conocer si vieron algunos de los episodios anteriores. Una cosa a la nota en el frente es que la sección de declaración de variables (UDATA) es un poco diferente. Porque los registros de control EEPROM están todos en el Banco 1 de memoria, decidí también colocar las variables EE_Addr y EE_Data en el Banco 1. Que requieran el uso de etiquetas como parte de las declaraciones de dirección Inicio UDATA. Banco 0 de datos comienza en hex de Dirección 20 mientras que el Banco 1 de datos comienza en la dirección A0 hexagonales. También tenemos que ser conscientes a través del programa en cuanto a qué Banco de memoria estamos en al leer y escribir. Mi regla general, como se indica en el encabezado, es para siempre salir de una subrutina en el banco 0.

Porque estamos usando registros específicos de la EEPROM para Lee y escribe, no hay que preocuparse por donde en la dirección de la EEPROM del mapa se encuentra. Hace la vida un poco más fácil porque básicamente solo contamos con un índice de 00 a FF hexadecimal. Muchas de las fotos tienen 256 bytes de EEPROM pero algunos solo tienen 128 bytes (por ejemplo el 16F627/8) así que ser conscientes de que para sus aplicaciones.

El código para leer y escribir la EEPROM se deriva de lo que figura en la hoja de datos pero hay un par de diferencias importantes, especialmente en la sección de escritura. Para una lectura, simplemente configurar la dirección deseada en EEADR, punto a memoria de datos (a diferencia de la memoria de programa Flash), mando a leer y luego leer los datos del registro EEDAT. El proceso de escritura sigue algunos de los mismos pasos pero con algunas diferencias notables en medio de la secuencia. Una vez más, comenzamos estableciendo la dirección deseada en EEADR y llenarla EEDAT con el byte de datos que desea escribir. A continuación debemos establecer una bandera de "Habilitar escritura". Usted puede pensar como el pin de R/W en chips de memoria o la pantalla LCD. Como se mencionó anteriormente, debemos permitir que el proceso de escritura completar sin interrupción, así que este es el punto en que sería borrar la bandera GIE. Si te fijas en la hoja de datos, hay código hay que realmente borra GIE y luego bucles hasta que GIE está claro. Se pone allí debido a la posibilidad de que una interrupción puede ocurrir antes de la clara de GIE realmente surte efecto (reloj cuatro ciclos o ciclo de una instrucción). Porque la devolución desde el controlador de interrupción vuelve a habilita GIE automáticamente, el comando clear puede obtener reemplazado. Así que lo que se recomienda es a lazo en el comando clear hasta que realmente completar una lectura de GIE y verificar que es clara.

Ahora viene el código para realizar el apretón de manos secreto necesario para escrituras. Realmente, todo lo que hacemos es primero escribir 55 hexagonal y luego escribir hexadecimal AA en EECON2. Te lo dejo como ejercicio para el estudiante calcular la probabilidad de la secuencia sucede por accidente. Tras el apretón de manos secreto, establece el indicador de comando escriba real y esperar que el PIC para la bandera. Lo hará cuando se haya completado la escritura. Ya que nosotros no podemos hacer otra cosa durante el tiempo de escribir, esta bandera de la interrogación es la forma más sencilla de realizar esta tarea. El ejemplo de la hoja de datos muestra un comando de sueño con la suposición de que vamos a despertar y continuar cuando conseguimos una interrupción (EEIR) en la realización de la escritura. Lo que no muestra, sin embargo, es la configuración para esa interrupción y el manejo de la interrupción antes de continuar la ejecución. Una vez más, los triunfos de manera perezosa.

La rutina de Test_EEPROM sólo envía tres bytes de datos en EEPROM y despues lo lee que detrás. Cada byte que es escrito o leído se envía a la pantalla LCD para la exhibición. Nada demasiado útil en este punto sino que muestra cómo podemos acceder a la EEPROM para futuros proyectos.

Artículos Relacionados

Diversión con foto montaje - episodio 1

Diversión con foto montaje - episodio 1

En los viejos tiempos, cuando los hombres eran hombres y disquetes eran inmensos, programamos los primeros microprocesadores en lenguaje ensamblador - y nos gustó de esa manera. Ahora que estoy jubilado he decidido volver a aquellos días de antaño y
Diversión con foto montaje - episodio 20

Diversión con foto montaje - episodio 20

En el episodio 19 que mencionar de paso que sería relativamente fácil trasladar el diseño a la 16F1837 más moderno que se utilizó en el episodio 13 de la visualización de gráficos. Sería alejarse de nosotros tener que copiar las cadenas de mando y me
Diversión con foto montaje - episodio 16

Diversión con foto montaje - episodio 16

Hasta ahora he resistido añadiendo a los millones de proyectos "Parpadear un LED" que salen en la web. No es decir que realmente no hacen un proyecto de "Parpadear un LED" cuando empecé molestando con el PIC ya lo hice. Bueno, ha llega
Diversión con foto montaje - episodio 17

Diversión con foto montaje - episodio 17

En los viejos tiempos cada compañía telefónica tenía una interfaz propietaria y a menudo diferentes interfaces para diversos teléfonos en su línea de productos. Estos días, sin embargo, casi todos los teléfonos utiliza una interfaz USB, como muchos o
Diversión con foto montaje - episodio 13

Diversión con foto montaje - episodio 13

Hace unos meses estuve considerando hacer un medidor de capacitancia con el PIC. Hice algunas investigaciones en la web y comprobado varios diseños. Entonces cometí el error de comprobación de eBay para ver cuánto uno costaría. Las versiones de placa
Diversión con foto montaje - episodio 12

Diversión con foto montaje - episodio 12

OK, así que soy de esas personas que son alegres cuando por fin llego algo de trabajo pero ROE en mí si yo no entiendo completamente los detalles de por qué funciona. Tal es el caso de este episodio. El fondo es que estoy trabajando en un proyecto pe
Diversión con foto montaje - episodio 3

Diversión con foto montaje - episodio 3

Después de había estado jugando con las fotos de un rato me paso a cuenta de que la web estaba llena de placas de interfaz que pueden hacer una variedad de tareas interesantes. Mejor aún, eran más baratos que tratar de construir sus propias tablas po
Diversión con foto montaje - episodio 15

Diversión con foto montaje - episodio 15

Uno de mis últimos proyectos implicó la construcción de un pequeño amplificador 2.1 con algunos chips de amplificador de potencia TDA que robaban de un elenco de tarjeta electrónica. Desde que era capaz de decidir cómo quería controlar cosas, opté po
Diversión con foto montaje - episodio 14

Diversión con foto montaje - episodio 14

Como ya he mencionado en un episodio anterior, ser voluntario en un centro de reciclaje sin ánimo de lucro. Sobre todo se arreglar Computadoras y monitores LCD, pero últimamente he dado a la tarea de conseguir algunos más viejos sistemas Dell 5650 fu
Diversión con foto montaje - episodio 19

Diversión con foto montaje - episodio 19

Una de mis frases favoritas es "es fácil si sabes cómo." No estoy seguro si recogió en algún lugar hace tiempo o había acuñado yo pero hay mucho de verdad en él. Es tipo de lo que sucedió cuando fui buscando una manera de ampliar lo que hice en
Diversión con foto montaje - episodio 23

Diversión con foto montaje - episodio 23

Como ya he mencionado en anteriores episodios de ser voluntario en el centro local de reciclaje sin ánimo de lucro. Algunas de las cosas de electrónica que consiguen dejar tipo de marcas me sientan como un arqueólogo de la tecnología y tengo una fant
Diversión con foto montaje - Episodio 21

Diversión con foto montaje - Episodio 21

No soy un viajero del mundo pero he estado en varios lugares que difieren radicalmente en temperatura y humedad. No importa lo que alguien dice, "calor seco" no significa nada cuando el termómetro está por encima de 110 grados. Asimismo,-40 grad
Diversión con foto montaje - episodio 9

Diversión con foto montaje - episodio 9

Hace cuarenta años que tenía un par de amigos que se involucro mucho con HO escala trenes modelo. Yo había superado mi interés en trenes después mi viejo Lionel tiene pasado a mi hermano menor pero todavía admiraba el trabajo de que mis amigos estaba
Diversión con foto montaje - episodio 11

Diversión con foto montaje - episodio 11

OK, realmente no tengo TOC pero tengo que admitir que a veces me sale pegado sobre un tema. Además de electrónica y software me gusta hacer cosas como carpintería y, últimamente, de cobre arte patio de tuberías. El problema con la materia de arte es
Diversión con foto montaje - episodio 2

Diversión con foto montaje - episodio 2

Bueno el episodio 1 fue todo un éxito porque realmente alguien que no me miró. Así que aquí vamos con el episodio 2. En este Instructable buscamos algunos datos reales de entrada para enviar a la pantalla de LCD de 1602 que construyó en el episodio 1