Tamaño código Morse Flasher de bolsillo (5 / 7 paso)

Paso 5: El código explicado

Código Morse se explica en el siguiente comentario, que aparece en el código:

; Código Morse consiste en
; puntos, que son cortos parpadea;
; guiones, que son largos, parpadea tres veces tan largos como un punto;
; y, que son periodos en los que la luz está apagada.
; espaciamientos vienen en varias longitudes:
; En una carta, puntos y guiones están separados por un
; espacio que es la misma longitud que un punto.
; Letras separadas por un espaciamiento de la misma longitud que un guión.
; Y palabras están separadas por una distancia cinco veces tanto como un punto.
;
; El código: (más o menos. Es un largo tiempo desde Boy Scouts)
; A .- * B -... * C -.-. * D -..
; E. * F .. -. * G --. * H ....
; I .-. * J .--- * K -.- * L .-..
; M -- * N -. * O --- * P .--.
; Q --.- * R .-. * S ... * T -
; U... - * V ...- * W .-- * X -.. -
; Y -.-- * Z --..
;
;
Comentarios en lenguaje ensamblador PIC (que es el lenguaje con el que se este programa) comienzan con un carácter de punto y coma y continuarán hasta el final de la línea. Comentarios están destinados a la próxima persona que trabaja en el código y realmente no dan las instrucciones para el microcontrolador. Así que esta tabla de valores de código Morse de la letra no dice la computadora cualquier cosa. Las instrucciones para la computadora aparecen más abajo.

Cuando el microcontrolador se inicia, comienza pasando por las instrucciones empezando en posición cero. En este programa, las instrucciones empezando en la línea 45 se colocará en posición cero, debido a la org 0 en línea 44. (En Bloc de notas, usted puede encontrar líneas numeradas tirando hacia abajo el menú edición y haga clic en línea Goto. Bloc de notas deshabilita la línea Goto si wordwrap está habilitada; Si línea Goto no parecen funcionar (está atenuado) Tire hacia abajo el menú Formato y desmarque wordwrap.)

org 0; vector de RESET
Inicio:
Goto principal

org 4; vector de interrupción
retfie; no hacer nada

principal:
banksel TRISIO; selecciona Banco 1, donde se almacena el TRISIO.
movlw 0; establecer GP0-GP5 todas las salidas.
movwf TRISIO
banksel GPIO; selecciona banco 0, para utilizar GPIO

BCF GPIO, 2;; Apagar LED
bucle:
llamar al letterF
llamada S
llamar al letterC
llamada de espaciado
Goto bucle

Sobre TRISIO es inicialización para configurar el microcontrolador. Para entenderlo completamente, necesita leer la hoja de datos para el PIC12F683.
El programa va a través de la instrucción en cada línea, a continuación, se mueve a la siguiente línea, a menos que la instrucción es un goto, call, retorno o retfie

Es lógico concluir que la línea llamada letterF hace que el microcontrolador a flash una F en código Morse. También es cierto, pero la razón es cierto que es un bloque de código llamado letterF() ya ha sido definido en este programa. Que el bloque se ve así:

; Es el código para F... -.
letterF:
punto de llamada
punto de llamada
tablero de llamada
punto de llamada
llamada de espaciado
volver

Puesto que la tabla de letras nos dice que la letra F es... -. otra vez es lógico creer que eso es lo que hace este código--dice el microcontrolador flash primero un punto, luego un punto, luego un guión, etc.. Una vez más, también es cierto, pero otra vez, porque tenemos código adecuado en otros lugares en el programa. Por ejemplo, tenemos:

DOT:
BSF GPIO, 2;; enciende LED
llamar a dotTime;; esperar un poco
BCF GPIO, 2;; Apagar LED
llamar a dotTime;; esperar un poco
volver

El colon sugiere que esta es la definición de punto; que es correcto y se permite solamente una definición para un símbolo en un programa. Podemos usarlo tantas veces como queramos, sin embargo.
Para entender esto necesitamos saber que punta de la GPIO 2 está conectada al pin 5, que es donde conectamos el LED. Cuando la punta de la GPIO 2 se establece en 1, pin 5 tiene 5 voltios. Cuando envía el valor 0 al pin GPIO 2, el voltaje en el pin cambia a 0 voltios. Los nombres de los pines en el esquema del circuito insinúan.

Así que un punto es flasheado por encender el LED, espera un rato, luego apagarlo y esperar un rato. Necesitamos una espera después del punto para evitar que los destellos corriente unreadably juntos, y eso es lo que hace el código de dotTime.

Los nombres de los varios pernos PIC12F683 y registros están ocultos dentro de un archivo que se incluye en la parte superior del programa en la línea de

#include < p12F683.H >
El bloque de dotTime tiene este aspecto

dotTime:
Call retardo;; esperar un poco
volver
retraso es todavía otro bloque de código, probablemente el más complicado en este programa:
; define las variables de programa. Estos resultan ser en el banco 0
me equ 0 x 20
j equ 0x21
k equ 0x22

demora:; retrasos ~ 1 segundo en 4MHz reloj
movlw 5
movwf i; utiliza un bucle anidado triplemente
Topi: clrf j
topj: clrf k
topk: incfsz k, 1; cuenta a 256
Goto topk; bucle interno es de 3 ciclos
incfsz j, 1
topj Goto
decfsz i, 1
Goto topi
volver

Necesita un programador para programar el código en el chip.

Artículos Relacionados

Kit de emergencia con código Morse

Kit de emergencia con código Morse

aquí es un kit de emergencia de tamaño bolsillo que puede caber fácilmente dentro de un pequeño monedero o bolsillo.  Nunca sabemos lo que nos podría pasar si se descomponen en nuestro coche o perderse en un viaje de campamento.  Uso compacto de una
LÓGICA de MANOA: código Morse pared arte con Arduino + encontraron materiales

LÓGICA de MANOA: código Morse pared arte con Arduino + encontraron materiales

Paso 1: Materiales reunirPara este proyecto he comprado un Arduino Uno REV 3, un LED blanco brillante, cuatro resistencias, un interruptor de botón, cuatro separadores de placa de circuito, soporte de la batería de un 8 x 1.5 AA, cable de conector de
Construir un código Morse usable

Construir un código Morse usable

Los códigos se utilizan para enviar mensajes secretos. Sin embargo, se utilizan para un montón de otras razones: eficiencia, exactitud, fiabilidad e identidad. Protocolos de Internet son un tipo de código. Ves las imágenes y la música, y la ropa que
Siente el-(A código Morse táctil lector) - parte 1: Software de código

Siente el-(A código Morse táctil lector) - parte 1: Software de código

sensación la-código (F-T-C) es un lector de texto de código Morse táctil vibra. Tiene un componente de software y un componente de hardware. Su propósito es hacer posible leer cualquier archivo de texto en silencio y sin mirar el ordenador. Con F-T-C
Arduino Shield de código Morse

Arduino Shield de código Morse

código Morse fue el descubrimiento que hizo posible la larga distanciacomunicación en la era del telégrafo. El código representacaracteres alfanuméricos por intervalos cortos y largos de la señal, losfamiliar puntos y guiones. Durante muchos años pas
Codificador/decodificador de código Morse usando una de LinkIt

Codificador/decodificador de código Morse usando una de LinkIt

Este es el segundo proyecto usando el LinkIt un tablero en el instructable que le mostré cómo construir una cinta de medición a distancia.En este tutorial voy a mostrarte cómo hacer un Decodificador/codificador de código Morse usando LinkIt uno. La s
Inalámbrico transmisor de código Morse de timbre y de la impresora

Inalámbrico transmisor de código Morse de timbre y de la impresora

En este instructable, mostraré cómo modificar un timbre inalámbrico en un transmisor de código Morse y el receptor. Además, les mostraré cómo hacer que una impresora de código de Morse en tiempo real utilizando piezas simples.Información de anteceden
Throwduino básico - sensibles a la luz que destella Throwie con 1 parte de agregado - ahora con código Morse

Throwduino básico - sensibles a la luz que destella Throwie con 1 parte de agregado - ahora con código Morse

Throwies son grandes.  Tienen un número de piezas mínimo - 2 o 3 dependiendo de si usted utiliza un imán - y producir un gran efecto.  Son muy baratos y fácil pero no muy eficiente:1) todo el tiempo, así que en promedio desperdician la mitad de su en
Cómo hacer una pulsera de código Morse en un telar de grano

Cómo hacer una pulsera de código Morse en un telar de grano

Me encanta la joyería mensaje secreto, así cuando tenía proyectos de ideas para mi grano nuevo telar, yo sabía que tenía que incorporar de alguna manera un mensaje secreto. ¿Mi solución? Combinar el telar de abalorios con código Morse.He incluido un
Tejer en código Morse

Tejer en código Morse

Este es un proyecto relativamente fácil una vez que llegar hasta el punto - la parte más difícil es en la configuración.He hecho 4 hasta ahora - los regalos de cumpleaños de clases (3 son mantas de bebé).Paso 1: Planificación parte 1Decidir la siguie
Hacer un manipulador de práctica de código Morse miniatura

Hacer un manipulador de práctica de código Morse miniatura

Este es un instructivo sobre cómo hacer un pequeño, portable código morse práctica manipulador que puede poner en el bolsillo, tomar en cualquier lugar y práctica de aprender código Morse. Está compuesta de dos componentes y toma alrededor de media h
Código Morse clave se conectan con la computadora

Código Morse clave se conectan con la computadora

este es mi 1 º proyecto, la clave del código Morse se conectan con la computadora mediante USBPaso 1: Inicio Preparado un ratón de la computadora y abrir la caja, retire la placa de circuito de ratón.Paso 2: Cubrir el LED Usan papel y cinta para cubr
Programa de una cadena de luces de Navidad a parpadear el código morse con Arduino y Snap circuitos

Programa de una cadena de luces de Navidad a parpadear el código morse con Arduino y Snap circuitos

esto es un proyecto de mi hijo Dylan (9) y pongo usando una placa de circuito de Arduino, un conjunto de broche de presión del circuito y una cadena de luces de Navidad.Lo que usted necesita:Un Arduino: Un Arduino es un equipo en una sola placa de ci
Aprender código Morse...

Aprender código Morse...

Alguna vez pregunto ¿cuál es que sonido de bip en un submarino en el cine? Bien solo has escuchado código Morse enviado a otro decodificador. Código Morse había sido tan popular (al ejército) desde la segunda guerra mundial, pero hoy en día, pocos so