Documentos de Académico
Documentos de Profesional
Documentos de Cultura
luz Siete diodos emisores de vuelta, dando la ilusin de los nmeros en el aire.
Vista Superior
Vista Lateral
Este es el primer reloj que he construido. He construido un par de signos de LED, pero
aburrido porque ya conozco el mensaje.
Cmo este reloj funciona:
Un motor hace girar la "hlice", y un pequeo microprocesador mantiene la nocin del tiempo
y cambia el patrn de siete LEDs con tiempo exacto para simular un 7 por 30 matriz de
LEDs.Es una ilusin, pero funciona muy bien.
Si usted quiere construir este reloj, usted necesitar un par de cosas, entre ellas:
. Habilidad con motores y cosas mecnicas
experiencia electrnica previa.
Un VCR muerto o unidad de disco u otra fuente de un motor adecuado y piezas diversas.
Un programador que programar PIC16C84 o un microprocesador 16F84.
Si usted no puede conseguir ese tipo de motor, puede utilizar el motor de una unidad de disco
de edad . Esta pgina tiene un montn de fotos y tomar algn tiempo para cargar. Si utiliza un
motor de la unidad de disco o cualquier otro motor de corriente continua con escobillas 180
grados de separacin, necesitars el cdigo ligeramente revisada: Descargar:mclockt3.asm El
cdigo fuente. mclockt3.hex El cdigo hexadecimal listo para poner en un chip.
Si usted no tiene ninguna manera de poner el programa en un chip PIC 16C84 o 16F84, usted
puede construir su propio programador .
Impreso Circuito Diseo de la placa para una versin del reloj.
Licencia:
El diseo del hardware y el software estn cubiertos bajo la GNU General Public License .
Garanta:
Ninguno.
Preguntas Frecuentes:
Q: Qu es esto 0.047 FARAD condensador ??
A: Usted puede obtener muchos lugares, incluyendo los condensadores de memoria en Jameco
Electrnica .
Q: Qu es un conector Berg?
A: Qu es un Kleenex? :-) El lado placa de circuito impreso a veces se llama una
"cabecera".Las luces y los botones de enganche de placas madre para computadoras los
utilizan. Los pines son 0.025 "cuadrado, en 0.1" centros. La final femenina se compone de
terminales a presin encajan en una carcasa de plstico. Un ejemplo en Jameco.
Q: Vi una versin grande de este en una tienda pero era diferente. Lo has visto?
A: S, he visto un montn de "persistencia de la visin" relojes en los ltimos aos. Hice ste
en 1996, as que creo que todos me copian :)
Q: Mi motor cabeza VCR tiene un montn de cables. Cmo Cules utilizo?
A: Yo no utilizar un motor de cabeza. He utilizado un motor de carrete. Slo tiene 2 cables y
funciona con corriente continua.
[ Inicio ] [ Servicios ] [ TechRef ] [ Fin ] [ Legal ] [ Contacto ]
una toma de 18 pines para el 16C84 porque tiene que ser programado
antes
ponindolo en el circuito. A los 7 resistencias de corriente lmite
utilic un
DIP matriz resistencia, ya que lo hizo fcil para experimentar con LED
brillo. Me instalados en 120 ohmios. Puede utilizar siete resistencias
regulares,
porque 120 ohmios funciona bien, a pesar de que pone la derecha de
corriente de pico en
el lmite para el 16C84. Piense en el equilibrio mientras se construye
este
circuito, y hacer referencia a mis imgenes, por lo que no tiene que
aadir un montn de
equilibrio de peso ms adelante. Sustituir a cualquiera de los valores
de parte que te gusta. Nota
que he usado un supercap 47000uf, que es mantener el reloj corriendo
detrs
apagarlo, as que usted puede ajustar la hora. Los LEDs reciben
alimentacin independiente
de esto. No sustituya un resonador cermico para el cristal de 4 MHz,
Este es un reloj y debe ser exacta.
Tercer paso: Programar el 16C84.
Usted necesitar un programador que programar un PIC16C84. Si has
encontrado
esta pgina archivo / web, usted puede encontrar los planes para
construir un programador 16C84.
Programarlo utilizando el archivo hex que acompaa este documento.
Tengo
incluido el cdigo fuente (.asm) slo para su diversin. Cuando
programar el chip, defina las opciones de chips a: temporizador de
vigilancia (WDT)
OFF y el oscilador a cristal normal de XT.
Paso cuatro: El tiro juntos y Keep Time.
Tornillo de la placa de circuito en el motor, y conecte el conector de
tres hilos
en. Encienda el motor. El voltaje preferido es 6,2 voltios, pero
que se desarrollar del 5 voltios a alrededor de 7,5 voltios. Tenga en
cuenta que 5 voltios llega a
el circuito cuando 6,2 voltios se aplica al motor, a causa de diodo
prdidas. El reloj puede estar trabajando en este punto, donde se
presentan las 12:00. Si se
no es. probablemente hubo alguna tensin en el supercap cuando
enchufado
en el chip. Apague los pines de alimentacin y momentneamente cortos
5 y 4
juntos (suelo y / MCLR) para restablecer el chip. Ahora cuando se
aplica energa
el reloj debera funcionar, y usted puede configurarlo apagando el
poder y
presionando los botones (hora, 10 minutos, minuto) el nmero correcto
de
veces. Si los nmeros aparecen al revs, invertir la polaridad de la
motor para hacer girar en sentido contrario. Usted puede experimentar
con el equilibrio
el reloj, y el uso de espuma debajo de la base para reducir la
vibracin.
-------; mclock8.asm
; "El Propeller" escanea mecnicamente reloj LED
; algunos cambios desde la ltima versin ; tabla modificada etc para Compatiblility con octava LED
; temporizador de vigilancia utiliza para asegurar el arranque
; Bob Blick 12 de febrero 1997
; Licencia bajo los trminos de la Licencia Pblica General de GNU,
www.gnu.org
; No hay garantas expredded o implcita
; Bob Blick 18 de febrero 2002
; -------Lista p = 16C84
radix hexagonal
incluir "p16c84.inc"
; -------; recuerde que debe definir las opciones en tiempo explosin: OSC =
xtal regular, WDT = ON
; los tiempos de todos basados en cristal 4 MHz
; -------; son estos equipara ya en el archivo de inclusin? algn da voy a
mirar.
; -------w equ 0
f equ 1
; -------; Comience de RAM disponible.
; -------cblock 0x0C
safe_w; en realidad no temporal, utilizado por svc de
interrupcin
safe_s; en realidad no la temperatura, utilizados por
svc de interrupcin
period_count; incrementa cada interrupcin
period_dup; copia de period_count salvo de interrupcin
period_calc; perodo estable despus calc histresis.
banderas; b2 = int b1 = minutos b4 = borde
dot_index; el que se muestra la columna
digit_index; que se est visualizando dgitos
hora, en formato de visualizacin, no hexagonal (01-12)
minutos, 00 a 59
bigtick_dbl; incrementa cada interrupcin
bigtick_hi
bigtick_lo
llaves, valor clave
cero; valor cero
tick; utilizado por retraso
CDDN
; -------; Inicio de ROM
; -------org 0x00; Inicio de espacio de cdigo
Ir a Inicio
; -------; SERVICIO DE INTERRUPCIN DE RUTINA
; -------org 0x04; interrumpir vectorial
Safe_w Intsvc movwf; salvar w
ESTADO swapf, w; estado de intercambio, w
movlw 1
hora ADDWF, f
retlw 0
Inc_hours_12 movlw 0x01
hora movwf
retlw 0
; -------; incrementar el tiempo basado en banderas, 1 que fue enviado por la
rutina de interrupcin
; Inc_mins bucle tambin utilizado por la rutina de puesta en hora
; -------Banderas Keep_time btfss, 1; los minutos bandera
retlw 0; esta vez no
banderas mpc, 1; borrar la bandera minutos
Inc_mins movlw 0x07; la hora de inicio de incremento
minutos ADDWF, w; suman los 7 minutos w
ESTADO BTFSC, DC; hizo aadiendo 7 dgitos causa
equipaje?
Goto Sixty_mins; luego probar para un cambio de hora
incf minutos, de lo contrario aadir al menos 1 de
verdad
RETLW 0; y volver
Sixty_mins movwf minutos; guardar los minutos
movlw 0x60; prueba de 60
xorwf minutos, w; son minutos a 60?
ESTADO btfss, Z
RETLW 0; no? volver
CLRF minutos, de lo contrario minuto cero
Goto Inc_hours; y hora de incremento
; -------; Fin de subrutinas
; Programa comienza aqu
; -------Iniciar llamar Ram_init; establecer las variables a los valores
agradables
llamar Port_init; establecer las direcciones de puerto
llamar Timer_init; comenzar interrupcin basada
temporizador
; -------; Hecho inicializar, inicie el bucle sin fin.
; -------;
Crculo; comenzar el bucle grande
;
; -------; detectar flanco descendente en PORTA, 4 para determinar el ndice de
rotacin
; calcular el perodo de rotacin y almacenar en period_dup
; Comparar con periodo (period_calc) trabajar y ajustar si forma
diferente
; -------llamar Check_index
; -------; comprobar estado de visualizacin y el cambio si es necesario
; -------llamar Display_now
; -------; comprobar el teclado y ajustar el tiempo
; -------llamar Check_keys
; --------
:020000040000FA
:10000000F028FF3FFF3FFF3F8C00030E8D00640090
:100010008E0A03198E03980A0319970A0319960F7B
:100020001828FC3096006C309700793098009114B5
:100030000D0E83008C0E0C0E0B1109008207C134CB
:10004000BE34BE34BE34C134FF34DE348034FE34BA
:10005000FF34DE34BC34BA34B634CE34BD34BE34AE
:10006000AE349634B934F334EB34DB348034FB34BF
:100070008D34AE34AE34AE34B134E134D634B6342B
:10008000B634F934BF34B834B734AF349F34C934DC
:10009000B634B634B634C934CF34B634B634B534E5
:1000A000C334FF34C934C934FF34FF3407309900F6
:1000B00012309400950192019301FC3096000034B7
:1000C000003066001730650000340B118B178B165B
:1000D00081016400D83062008101003405081106F6
:1000E0001039031900349106111A00340E088F00DC
:1000F0008E019301920110080F02031C8328023C19
:10010000031C900A0034023E031C900300340530A7
:100110001206FF300319A9280310130D8207140ECD
:100120009A2814089A280A309A28150E9A28150831
:100130009A2800340F399A009A079A079A079A0763
:10014000031DA6289308FF300319A92812081A07CF
:100150001E2086000C301002B520920A06301206CE
:10016000031D00349201930A00349B009B0BB628B8
:100170000800050819060739031900349906643088
:100180009A00FF30B5209A0BC128191DE328991C4D
:10019000CC28191CD22800340A309A00E3209A0B8C
:1001A000CE280034123014060319DD280730140756
:1001B0000730831C01309407003401309400003470
:1001C000911C00349110073015078318E928950A0F
:1001D0000034950060301506031D00349501D228C7
:1001E0005620602065206E208720B920E020F3286B
:0201F000FF3FCF
:02400E00F53F7C
:00000001FF