|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Junior Member
Iscritto dal: May 2014
Messaggi: 1
|
problema con programmazione pic18f46k22
ciao a tutti
![]() ho un problema con la programmazione del pic. ho creato questo programma perchè dovrei portarlo alla maturità solo che ho alcuni problemi e non riesco a capire quali siano questi problemi. il programma deve far muovere delle braccia robotiche che picchiano su uno xilofono e producono una sinfonia musicale. ho creato una routine di avvio cioè ho fatto in modo che finchè la PORTB,6 non va a 1 il programma non parte. solo che quando lo provo nel debug per vedere se funziona devo togliere la routine di avvio e quando provo a farlo partire il programma fa quello che vuole e salta delle istruzioni e non riesco a capire il perchè, qualcuno mi può dare una mano? grazie a tutti ![]() questo è il programma: robot.txt |
![]() |
![]() |
![]() |
#2 | |
Senior Member
Iscritto dal: Jan 2001
Città: Livorno
Messaggi: 1338
|
Quote:
Codice:
avvio: avvio_1: btfss PORTB,0 bra avvio_1 return In ogni caso tutte quelle ridondanze rendono complicato trovare gli errori: Codice:
delaySOL_V: movlw d'5' movwf CONT2 delay_SOL_V1: decfsz CONT2 bra delay_SOL_V1 return delayLA: movlw 0x0a movwf CONT2 delay_LA1: decfsz CONT2 bra delay_LA1 return etc. etc. nota 1 ---> portD,1 poi un unica subroutine a cui fai trovare in w un numero da 1 a 7 e via. Poi anzichè fare tutti quei call La, call Do etc, memorizzi nella eeprom interna una serie di numeri che rappresentano le note. Quando il programma parte va a leggere la eeprom e ti suona le note. In questo modo se c'è un errore capisci meglio in quale parte del programma si trova. |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 10:37.