;############################################################################ ; ; ;Programa monitor para carga de programas via canal serial do 8031 - serial ; ;do PC ( COM1: ou COM2: ) ; ; ; ;############################################################################ BITSTART EQU 0B2H ;endereco do P3.2 MRAM EQU 0000H ;endereco inicial da RAM BAUD EQU 0E6H ;taxa de transmissao de 1200 bps COM CLOCK DE 12 MHz ;############################################################################ ORG 0000H LJMP INICIO ; ORG 0023H LJMP SERI ;mapeamento do canal serial ORG 0027H ;inicio do programa principal INICIO: MOV IE,#90H ;interrupcoes (serial) habilitadas MOV IP,#10H ;interrupcoes (serial) habilitadas MOV SP,#07H ;STACK POINTER no endereco 07h MOV DPTR,#MRAM ;DPTR apontando para o endereco 0000h DA RAM MOV SCON,#54H ;canal serial ajustado para modo assincrono MOV TMOD,#20H ;TIMER 1 no modo 2 - temporizador de 8 bits com ;autoreload MOV TL1,#BAUD ;carrega taxa de transmissao MOV TH1,#BAUD ;carrega taxa de transmissao SETB TR1 ;liga TIMER 1 ESPERA: CPL P3.3 ; SJMP ESPERA ;espera receber ;############################################################################ ; ; CARREGA RAM COM DADOS QUE CHEGAM PELA SERIAL ; ;############################################################################ ORG 0050H SERI: MOV A,SBUF ;le buffer serial MOVX @DPTR,A ;ecreve na RAM INC DPTR ;incrementa ponteiro da RAM CLR RI ;reseta flag de recepcao RETI END