Ola Claudio boa noite !
Preciso de sua ajuda no projeto Manipulador K8 que voce modificou para o PIC 12F629 ou 12F675.
O projeto funciona muito bem, montei no protoboard e no Proteus.
Veja no codigo abaixo, existe a possibilidade de habilitar os Modos: QRP, CQTEST e CONTESTE, e ja vem default como STANDARD.
Jà editei o STANDARD e coloquei QRP e não vi diferença, pois quando muda esses modos ele habilita outras mensagens...
CALL_0 EQU M_P ;Put your call here, letter by letter CALL_1 EQU M_Y ; No more than 7 characters CALL_2 EQU M_2 CALL_3 EQU M_M CALL_4 EQU M_G CALL_5 EQU M_END CALL_6 EQU M_END CALL_7 EQU M_END SPEED_DEFAULT EQU WPM_15 ; can be WPM_5 to WPM_49 #define STANDARD ; can be: STANDARD, QRP, CQTEST, or CONTEST #define AR_ON ; comment this out if you don't want AR sent
Aqui as mensagens que ele teria que selecionar ....
MSGBASE MSG1 ifdef CONTEST RETLW M_T ; Contest Message RETLW M_E RETLW M_S RETLW M_T RETLW M_SP RETLW M_CALL RETLW M_SP RETLW M_CALL RETLW M_SP RETLW M_T ; Contest Message RETLW M_E RETLW M_S RETLW M_T RETLW M_SP RETLW M_END endif ifdef CQTEST RETLW M_C ; CQ TEST RETLW M_Q RETLW M_SP RETLW M_T RETLW M_E RETLW M_S RETLW M_T RETLW M_SP RETLW M_C RETLW M_Q RETLW M_SP RETLW M_T RETLW M_E RETLW M_S RETLW M_T RETLW M_SP RETLW M_D RETLW M_E RETLW M_SP RETLW M_CALL RETLW M_SP RETLW M_CALL RETLW M_SP RETLW M_K RETLW M_END endif ifdef QRP RETLW M_C ; QRP RETLW M_Q RETLW M_SP RETLW M_C RETLW M_Q RETLW M_SP RETLW M_C RETLW M_Q RETLW M_SP RETLW M_C RETLW M_Q RETLW M_SP RETLW M_D RETLW M_E RETLW M_SP RETLW M_CALL RETLW M_SP RETLW M_CALL ; RETLW M_SP RETLW M_DN RETLW M_Q RETLW M_R RETLW M_P RETLW M_SP ifdef AR_ON RETLW M_AR RETLW M_SP endif RETLW M_K RETLW M_END endif ifdef STANDARD RETLW M_C ; Long CQ Message RETLW M_Q RETLW M_SP RETLW M_C RETLW M_Q RETLW M_SP RETLW M_C RETLW M_Q RETLW M_SP RETLW M_D RETLW M_E RETLW M_SP RETLW M_CALL RETLW M_SP RETLW M_CALL RETLW M_SP endif ; MSG2 RETLW M_C ; CQ Message RETLW M_Q RETLW M_SP RETLW M_C RETLW M_Q RETLW M_SP RETLW M_C RETLW M_Q RETLW M_SP RETLW M_D RETLW M_E RETLW M_SP RETLW M_CALL RETLW M_SP RETLW M_CALL RETLW M_SP ; RETLW M_CALL ;extra ; RETLW M_SP ;extra ifdef AR_ON RETLW M_AR RETLW M_SP endif RETLW M_K RETLW M_END ; MSG3 RETLW M_C ; CQ DX Message RETLW M_Q RETLW M_SP RETLW M_C RETLW M_Q RETLW M_SP RETLW M_C RETLW M_Q RETLW M_SP RETLW M_D RETLW M_X RETLW M_SP RETLW M_D RETLW M_E RETLW M_SP RETLW M_CALL RETLW M_SP RETLW M_CALL RETLW M_SP RETLW M_D RETLW M_X RETLW M_SP ifdef AR_ON RETLW M_AR RETLW M_SP endif RETLW M_K RETLW M_END ; MSG4 RETLW M_USER ; Custom Contest Message RETLW M_SP RETLW M_D RETLW M_E RETLW M_SP RETLW M_CALL RETLW M_SP RETLW M_CALL RETLW M_SP ifdef AR_ON RETLW M_AR RETLW M_SP endif RETLW M_K RETLW M_END ; MSG5 RETLW M_USER ; User Message RETLW M_SP RETLW M_END ; MSG7 ifdef NO_DE RETLW CALL_1 RETLW CALL_2 RETLW CALL_3 else RETLW M_E RETLW M_SP RETLW M_CALL endif RETLW M_SP RETLW M_END ; MSG8 RETLW M_SP ; WPM suffix RETLW M_W RETLW M_P RETLW M_M RETLW M_END
Poderia me dar uma dica de como posso fazer isso.?
Agradeço sua ajuda.
Luis.
Olá Luis!
O código original rodava no pic 12f508/9. Existe muitas diferenças de funcionamento, o que acarretou algumas mudanças no código ( e consequentemente na quantidade de instruções usadas) que reposicionou o código original na flash. As instruções que usam salto GOTO tem que ficar todas centradas dentro de páginas senão pode ocorrer um pulo fora da localização desejada. Como eu somente testei usando as configurações usada em um único Define, não me preocupei em ver se as outras opções estavam funcionando, mesmo porque não conseguiria perceber a mudança do texto enviado pela dificuldade de entender código morse. Não sei afirmar com plena certeza se é este o caso. Pode ser também algum outro problema no código que apareceu após a adaptação para o 12F629. Mas infelizmente, no momento não poderei ajudar, por estar afastado de minhas atividades por problemas de saúde. Não sei se você já aprendeu um pouco de programação ASM. Se já, tente debugar o código (que você alterou nas opções do define) no simulador do Mplab, analizando passo a passo as linhas de código e conferindo se acontece o esperado, especialmente os saltos gotos.
Ola Claudio boa noite!
Obrigado pela resposta.
Andei mexendo no codigo e acredito que logo obterei algum sucesso.
Ainda engatinho em programaçao, mas gosto de aprender.
Faço votos que se recupere logo.
Um abraço e obrigado....
Luis