Anime com leds Usando PIC16F628A
Autor: César. | Publicado: 2014-08-19T12:08:00-07:00



'****************************************************************'*&nbsp; Name&nbsp;&nbsp;&nbsp; : UNTITLED.BAS&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; *'*&nbsp; Author&nbsp; : César Morisco&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; *'*&nbsp; Notice&nbsp; : Copyright (c) 2013 Centraltek LTD 27 3233 3493&nbsp;&nbsp;&nbsp; *'*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : All Rights Reserved&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; *'*&nbsp; Date&nbsp;&nbsp;&nbsp; : 3/4/2013&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; *'*&nbsp; Version : 1.0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; *'*&nbsp; Notes&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; *'*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; *'****************************************************************&nbsp;@ DEVICE pic16F628A&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'is,lemci 16F628&nbsp;@ DEVICE pic16F628A, WDT_OFF&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'Watch Dog timer aç?k&nbsp;@ DEVICE pic16F628A, PWRT_ON&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'Power on timer aç?k&nbsp;@ DEVICE pic16F628A, PROTECT_OFF&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'Kod Protek kapal?&nbsp;@ DEVICE pic16F628A, MCLR_OFF&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 'MCLR pini kullan?l?yor.&nbsp;@ DEVICE pic16F628A, INTRC_OSC_NOCLKOUT&nbsp; 'Dahili osilatör kullan?lacakTRISA = 111111PORTA = 000000TRISB = 000000PORTB = 0CMCON=7 I&nbsp;&nbsp; VAR BYTEX&nbsp;&nbsp; VAR BYTEJ&nbsp;&nbsp; VAR BYTEC1&nbsp; VAR Byte 'valor de 1 colunaC2&nbsp; VAR Byte 'de la 2 colunaC3&nbsp; VAR Byte '....C4&nbsp; VAR Byte '....C5&nbsp; VAR Byte '....C6&nbsp; VAR Byte '....C7&nbsp; VAR Byte '....C8&nbsp; VAR Byte 'de&nbsp; 8 colunaC9&nbsp; var byte 'Repet e efeitoC10 VAR BYTEC11 VAR BYTEC12 VAR BYTEC13 VAR BYTEC14 VAR BYTEC15 VAR BYTEC16 VAR BYTEC17 VAR BYTEC18 VAR BYTEC19 VAR BYTEC20 VAR BYTEC21 VAR BYTEC22 VAR BYTEC23 VAR BYTEC24 VAR BYTEC25 VAR BYTEC26 VAR BYTEC27 VAR BYTEC28 VAR BYTEC29 VAR BYTEC30 VAR BYTEC31 VAR BYTEC32 VAR BYTEC33 VAR BYTEC34 VAR BYTEC35 VAR BYTEC36 VAR BYTEC37 VAR BYTEC38 VAR BYTEC39 VAR BYTEC40 VAR BYTEC41 VAR BYTEC42 VAR BYTEC43 VAR BYTEC44 VAR BYTEC45 VAR BYTEC46 VAR BYTEC47 VAR BYTEC48 VAR BYTEC49 VAR BYTEC50 VAR BYTEC51 VAR BYTEC52 VAR BYTEC53 VAR BYTEC54 VAR BYTEC55 VAR BYTEC56 VAR BYTEC57 VAR BYTEC58 VAR BYTEC59 VAR BYTEC60 VAR BYTEC61 VAR BYTEC62 VAR BYTEC63 VAR BYTEC64 VAR BYTEC65 VAR BYTEC66 VAR BYTEC67 VAR BYTEC68 VAR BYTEC69 VAR BYTEC70 VAR BYTEC71 VAR BYTEC72 VAR BYTEC73 VAR BYTEC74 VAR BYTEC75 VAR BYTEC76 VAR BYTEC77 VAR BYTEC78 VAR BYTEC79 VAR BYTEC80 VAR BYTEC81 VAR BYTEC82 VAR BYTEC83 VAR BYTEC84 VAR BYTEC85 VAR BYTEC86 VAR BYTEC87 VAR BYTEC88 VAR BYTEC89 VAR BYTEC90 VAR BYTEC91 VAR BYTEC92 VAR BYTEC93 VAR BYTEC94 VAR BYTEC95 VAR BYTEC96 VAR BYTEC97 VAR BYTEC98 VAR BYTEC99 VAR BYTEC100 VAR BYTEPROG:C1&nbsp; = 1c2&nbsp; = 2c3&nbsp; = 4c4&nbsp; = 8c5&nbsp; = 16c6&nbsp; = 32c7&nbsp; = 64c8&nbsp; = 128C9 = 1C10 = 3C11 = 6C12 = 12C13 = 24C14 = 48C15 = 96C16 = 192C17 = 3C18 = 7C19 = 14C20 = 28C21 = 56C22 = 112C23 = 224C24 = 192C25 = 1C26 = 3C27 = 7C28 = 15C29 = 31C30 = 63C31 = 127C32 = 255IF PORTA.1= 0 THENPAUSE 200X = X + 1ENDIFIF X = 1 THENGOSUB ANIME1ENDIFIF X = 2 THENGOSUB ANIME2ENDIFIF X = 3 THENGOSUB ANIME3ENDIFIF X = 4 THENGOSUB ANIME4ENDIFIF PORTA.0 = 0 THENX = 0ENDIFGoto PROGANIME1:FOR I = 1 TO 3PORTB = c1 GOSUB TEMPOPORTB = c2 GOSUB TEMPOPORTB = c3 GOSUB TEMPOPORTB = c4 GOSUB TEMPOPORTB = c5 GOSUB TEMPOPORTB = c6 GOSUB TEMPOPORTB = c7 GOSUB TEMPOPORTB = c8 GOSUB TEMPOPORTB = 0 PORTA =%01111111GOSUB TEMPOPORTA =%10111111 GOSUB TEMPOPORTA = 0NEXT I'RETURNANIME2:FOR I = 1 TO&nbsp; 3PORTB = c8 GOSUB TEMPOPORTB = c7 GOSUB TEMPOPORTB = c6 GOSUB TEMPOPORTB = c5GOSUB TEMPOPORTB = c4 GOSUB TEMPOPORTB = c3 GOSUB TEMPOPORTB = c2 GOSUB TEMPOPORTB = c1GOSUB TEMPOPORTB = 0 PORTA =%10111111GOSUB TEMPOPORTA =%01111111 GOSUB TEMPOPORTA = 0NEXT I 'RETURNANIME3:FOR I = 1 TO&nbsp; 3PORTB = c1 GOSUB TEMPOPORTB = c2 GOSUB TEMPOPORTB = c3 GOSUB TEMPOPORTB = c4 GOSUB TEMPOPORTB = c5 GOSUB TEMPOPORTB = c6 GOSUB TEMPOPORTB = c7 GOSUB TEMPOPORTB = c8 GOSUB TEMPOPORTB = 0 PORTA =%01111111GOSUB TEMPOPORTA =%10111111 GOSUB TEMPOPORTA =%10111111GOSUB TEMPOPORTA =%01111111 GOSUB TEMPOPORTA = 0PORTB = 0PORTB = c8 GOSUB TEMPOPORTB = c7 GOSUB TEMPOPORTB = c6 GOSUB TEMPOPORTB = c5GOSUB TEMPOPORTB = c4 GOSUB TEMPOPORTB = c3 GOSUB TEMPOPORTB = c2 GOSUB TEMPOPORTB = c1NEXT I'RETURNANIME4:FOR I = 1 TO 10PORTB=%11111111PORTA=%11000000gosub TEMPO&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PORTB=000000PORTA=111111gosub TEMPONEXT IANIME5:FOR I = 1 TO 5PORTB = C9GOSUB TEMPOPORTB = C10GOSUB TEMPOPORTB = C11GOSUB TEMPOPORTB = C12GOSUB TEMPOPORTB = C13GOSUB TEMPOPORTB = C14GOSUB TEMPOPORTB = C15GOSUB TEMPOPORTB = C16 GOSUB TEMPOPORTB = 0 PORTA =%11111111GOSUB TEMPOPORTA =111111GOSUB TEMPONEXT IANIME6:FOR I = 1 TO 5PORTA =%11111111GOSUB TEMPOPORTA =111111PORTA = 0PORTB = C16GOSUB TEMPOPORTB = C15GOSUB TEMPOPORTB = C14GOSUB TEMPOPORTB = C13GOSUB TEMPOPORTB = C12GOSUB TEMPOPORTB = C11GOSUB TEMPOPORTB = C10GOSUB TEMPOPORTB = C9 GOSUB TEMPOPORTB = 0 NEXT IANIME7:FOR I = 1 TO 5PORTA =%11111111GOSUB TEMPOPORTA =111111'PORTA = 0PORTB = C17GOSUB TEMPOPORTB = C18GOSUB TEMPOPORTB = C19GOSUB TEMPOPORTB = C20GOSUB TEMPOPORTB = C21GOSUB TEMPOPORTB = C22GOSUB TEMPOPORTB = C23GOSUB TEMPOPORTB = C24 GOSUB TEMPOPORTB = 0 NEXT IANIME8:FOR I = 1 TO 5PORTA =%11111111GOSUB TEMPOPORTA =111111'PORTA = 0PORTB = C24GOSUB TEMPOPORTB = C23GOSUB TEMPOPORTB = C22GOSUB TEMPOPORTB = C21GOSUB TEMPOPORTB = C20GOSUB TEMPOPORTB = C19GOSUB TEMPOPORTB = C18GOSUB TEMPOPORTB = C17 GOSUB TEMPOPORTB = 0 NEXT IANIME9:FOR I = 1 TO 5PORTB = C25GOSUB TEMPOPORTB = C26GOSUB TEMPOPORTB = C27GOSUB TEMPOPORTB = C28GOSUB TEMPOPORTB = C29GOSUB TEMPOPORTB = C30GOSUB TEMPOPORTB = C31GOSUB TEMPOPORTB = C32GOSUB TEMPOPORTB = 0&nbsp; PORTA =%01111111GOSUB TEMPOPORTA =%11111111GOSUB TEMPOPORTA = 0NEXT IRETURNTEMPO:FOR J = 0 TO 2 PAUSE 30NEXT JRETURN