Led ve display göstergeli hexadesimal binary sayıcı uygulamaları tüm devreler pic16f84a ile gerçekleştirilmiş isis simülasyon ve diğer kod mplab dosyaları vardır. Buton kontrollü Hex-adesimal Sayıcı 1-2-3-4-5-6-7-8-9-A-B-C-D-E-F arası sayım
ASM Yazılımı
;MICROCONTROLADORES PIC ;AUTOR : BRYAM HUAMANCHUMO BACA ;LABORATORIO # 01b : CONTEO ASCENDENTE HEXADECIMAL AL PRESIONAR EL PULSADOR list p=16F84 #includetemporal equ 0x20 org 00 goto main org 05 main bsf STATUS,RP0 ;Paso al banco 0 bcf STATUS,RP1 movlw b'01000' ;RA3 Entrada = '1' movwf TRISA clrf TRISB ;PORTB Salidas bcf STATUS,RP0 ;Regreso al Banco 0 clrf temporal ;Inicializo Cuenta clrf PORTB ;y Inicializo puerto infinito btfsc PORTA,3 ;si se presiona RA3 goto infinito espera ;espera btfss PORTA,3 ;Antirebote goto espera incf temporal,0 andlw 0x0F ;Me aseguro q no llegue ;a 15 = 0x0F = b'1111' movwf temporal movwf PORTB goto infinito END
Dip switch kontrollü display göstergeli hexdesimal sayıcı devresi
on off kombinasyonlarına göre sayılar beliriyor
ASM Yazılımı
;MICROCONTROLADORES PIC ;AUTOR : BRYAM HUAMANCHUMO BACA ;LABORATORIO # 01d : VISUALIZA EL NÚMERO HEXADECIMAL AL CONMUTAR EL DIPSWITCH List p=16F84A INCLUDEORG 0 ; El programa comienza en la dirección 0 Inicio bsf STATUS,RP0 ; Acceso al Banco 1 clrf PORTB ; Las líneas del Puerto B se configuran como salida movlw b'00011111' ; Las 5 líneas del Puerto A se configuran como entrada movwf PORTA clrf TRISB ; Las líneas del Puerto B se configuran como salida bcf STATUS,RP0 ; Acceso al Banco 0 Principal movf PORTA,0 andlw b'00001111' ; Máscara para quedarse con el valor de las ; entradas correspondientes al nibble bajo call Binario_a_7Segmentos ; Convierte código binario a a 7 segmentos del display movwf PORTB ; Resultado se visualiza por el puerto de salida goto Principal ;Subrutina "Binario_7segemntos" ----------------------------------------------------------- Binario_a_7Segmentos ; Tabla para display de 7 segmentos addwf PCL,1 Tabla retlw 3Fh ; El código de 7 segmentos para el "0" retlw 06h ; El código de 7 segmentos para el "1" retlw 5Bh ; El código de 7 segmentos para el "2" retlw 4Fh ; El código de 7 segmentos para el "3" retlw 66h ; El código de 7 segmentos para el "4" retlw 6Dh ; El código de 7 segmentos para el "5" retlw 7Dh ; El código de 7 segmentos para el "6" retlw 07h ; El código de 7 segmentos para el "7" retlw 7Fh ; El código de 7 segmentos para el "8" retlw 67h ; El código de 7 segmentos para el "9" retlw 77h ; El código de 7 segmentos para el "A" retlw 7Ch ; El código de 7 segmentos para el "B" retlw 39h ; El código de 7 segmentos para el "C" retlw 5Eh ; El código de 7 segmentos para el "D" retlw 79h ; El código de 7 segmentos para el "E" retlw 71h ; El código de 7 segmentos para el "F" END ; Fin del programa
Otomatik hexadesimal sayıcı uygulaması
ASM Yazılımı
;MICROCONTROLADORES PIC ;AUTOR : BRYAM HUAMANCHUMO BACA ;LABORATORIO # 01c : CONTEO ASCENDENTE HEXADECIMAL ROTATIVO ;ZONA DE DATOS ... List p=16F84A INCLUDEvar1 EQU 0x0E var2 EQU 0x0F ;ZONA DE CODIGOS ... ORG 0 ; El programa comienza en la dirección 0 Inicio bsf STATUS,RP0 ; Acceso al Banco 1 movlw b'00000111' movwf OPTION_REG ; Prescalar de asignado al TMR0 clrf TRISB ; Las líneas del Puerto B se configuran como salida bcf STATUS,RP0 ; Acceso al Banco 0 clrf var1 clrf var2 Principal movf var1,0 call Binario_a_7Segmentos ; Convierte a 7 segmentos movwf PORTB ; Resultado se visualiza por el puerto de salida Salto incf var2,1 btfss var2,2 goto Timer0_us clrf var2 incf var1,1 btfss var1,4 goto Principal clrf var1 goto Principal ;Subrutina "Timer0_us" Timer0_us movlw 0x00 ; TMR0_Carga movwf TMR0 ; carga el Timer 0 bcf INTCON,T0IF ; Resetea el flag de desbordamiento del TMR0 Timer0_Rebosamiento btfss INTCON,T0IF ; Se ha producido desbordamiento goto Timer0_Rebosamiento ; Todavía no Repite goto Salto ;Subrutina "Letra_a_7segemntos" ---------------- Binario_a_7Segmentos ; Tabla para display de 7 segmentos addwf PCL,1 Tabla retlw 3Fh ; El código de 7 segmentos para el "0" retlw 06h ; El código de 7 segmentos para el "1" retlw 5Bh ; El código de 7 segmentos para el "2" retlw 4Fh ; El código de 7 segmentos para el "3" retlw 66h ; El código de 7 segmentos para el "4" retlw 6Dh ; El código de 7 segmentos para el "5" retlw 7Dh ; El código de 7 segmentos para el "6" retlw 07h ; El código de 7 segmentos para el "7" retlw 7Fh ; El código de 7 segmentos para el "8" retlw 67h ; El código de 7 segmentos para el "9" retlw 77h ; El código de 7 segmentos para el "A" retlw 7Ch ; El código de 7 segmentos para el "B" retlw 39h ; El código de 7 segmentos para el "C" retlw 5Eh ; El código de 7 segmentos para el "D" retlw 79h ; El código de 7 segmentos para el "E" retlw 71h ; El código de 7 segmentos para el "F" END
0-A-255 Binary sayıcı led göstergeli
PBP Yazılımı
'MICROCONTROLADORES PIC 'AUTOR : BRYAM HUAMANCHUMO BACA 'LABORATORIO # 01d : CONTEO DE 0 A 255 EN BINARIO X VAR BYTE TRISB = 0 'Salida Inicio: For X = 0 TO 255 PORTB = X Pause 200 Next X GoTo Inicio
binary-hexadesimal-sayicilar-16f84-led-display
Şifre-Pass: 320volt.com
Yayım tarihi: 2009/03/28 Etiketler: Assembly, binary sayıcı, hexadesimal sayıcı, Led Display, microchip pic projeleri, PIC16F84 örnekleri, PIC16F84A, picbasic pro
hocam önce emeğine sağlık benim sıkıntım şu benim böyle birşeye ama buton ile 0 dan 9 a kadar saydırıp 0-9 arası bir sayıda durdurmak istiyorum bu konuda bana yardımcı olurmusunuz.
Çözümüne yardımcı olursanız çok sevinirim. Saygılarımla
https://ibb.co/7pXM8Jw