Serial PC-PC com MAX232

Estamos trabalhando no link de RF para o nosso projeto de futebol de robôs, então já começamos a implementar a comunicação serial com MAX232, neste sábado de 24/03/2007 Victory e Murilo implementaram com sucesso a comunicação seria com MAX232 entre 2 comutadores, e assim que o link de RF chegar já estará tudo pronto p/ só fazer a ligação e trocar dados via ambiente wireless!

Enquanto murilo se concentrava em modular o projeto em uma placa padrão, Victory adiantou a implementação do software assembler para comunicar com o 8051 do robô armlock de sumô de robô, afinal antes de implementarmos o novo robo de futebol vamos controlar remotamente via RF o robô antigo para garantir a funcionalidade total do protocolo e só então partir para a etapa seguinte do projeto. Dessa forma pretendemos economizar tempo pois a montagem do sumô já esta funcional

Esperamos daqui a alguns dias estar com o kit de RF em mãos para fazer os testes... ahh e tb consertar nosso kit de 8051 q está com o display quebrado, pois o programa implementado escreve os caracteres recebidos no display!

Segue parte do código implementado... infelizmente o blog tá acusando limite de caracteres esgotado, então se quiser o resto é só solicitar via hereim@ig.com.br :

;Inicia programa no endereço de reset
ORG 0000h
JMP main

;Endereço de interrupção serial
ORG 0023h
jmp trata_serial

;Pula endereços de registradores
ORG 0030h
main:

 ;Configura comunicação serial Assincrona 8bits (mode 1) baud-rate dado por Timer1 (SM0=0, SM1=1)
 ;Habilita recepção de dados (REN=1)
 MOV SCON, #01010000b

 ;Dobra relacao de divisao de frequencia na serial (SMOD = 0)
 MOV PCON, #00000000b

 ;Configura Timer1 8bits auto-reload (mode 2) (T1M1=1, T1M0=0)
 ;Configura Timer0 16bits (mode 1) (T1M1=0, T1M0=1)
 MOV TMOD, #00100001b

 ;Baud-Rate = 9600
 MOV TH1, #0FDh 
 MOV TL1, #00h

 ;Configura interrupção serial (EA=1, ES=1)
 MOV IE, #10010000b

 ;Limpa flag de interrução
 CLR RI

 ;Ativa Timer1
 SETB TR1

 ;loop infinito para leitura de dados da serial
 JMP $

;********************************************************************************************
; Trata recebimento de dados via serial
;********************************************************************************************
trata_serial:
 MOV A, SBUF    ;Lê dado recebido
 LCALL wrcar1  ;Chama a funcao que escreve caracter lido no LCD 
 
 CLR RI

 RETI

(...)




[ ver mensagens anteriores ]



Meu Perfil
BRASIL , Nordeste , SALVADOR , IMBUI , Homem , Portuguese , English , Informática e Internet

 
Visitante número: