Main Menu
Home
Cadastre-se
Como colaborar
Contato
Sugerir Conteúdo
Reportar Problema
Conteúdo
Fórum
Notícias
Artigos
Projetos
Inovação
Downloads
Eventos
Links
Login
Usuários online
Nós temos 23 visitantes online
Usuários Registrados
6594 registrados
1 hoje
17 esta semana
100 no mês
Próximos Eventos
Nenhum evento
« < Maio 2012 > »
D S Q Q Q S D
29 30 1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31 1 2
RSS
PageRank
Fórum Embarcados
Seja bem-vindo, Visitante
Por Favor Entrar ou Registrar.    Esqueceu a senha?
AJUDA com USART (PIC16f628a) (1 visualizando) (1) Visitante
PIC
Ir para baixo Favorito por: 0
TÓPICO: AJUDA com USART (PIC16f628a)
#787
iketeshima (Usuário)
Fresh Boarder
Mensagens: 1
graphgraph
Usuários Offline Clique aqui para ver o perfil deste usuário
AJUDA com USART (PIC16f628a) 6 Mês atrás Popularidade: 0  
Boa noite !
Estou fazendo um projeto com o objetivo de um microcontrolador transmitir 1 byte para outro microcontrolador, através do módulo da USART... no caso uma transmissão Assíncrona, half Duplex ! No qual transmite e recebem porém nao simultaneamente.


Programa :

PIC 1

O Programa tem inicio a teste de 4 chaves, sendo cada chave envia um byte diferente ! (ou seja, chave 1 acionada? envia byte X, chave 2 acionada ? envia byte Y, chave 3 acionada ? envia byte Z...), após uma das chave ser acionada, tratará instruções de configuração da USART em modo ASSincrono; primeiro seta o bit BRGH do reg TXSTA ativando alta velocidade de transmissão, configura Baud Rate para 9600bps, Habilita porta Serial; Habilita transmissão, armazena byte referente a chave no TXREG (registrador de transmissão), e após faz teste no bit TRMT, do reg TXSTA para ver se a transmissão terminou ! Após a transmissão terminar, fiz as seguintes configurações para que ele receba uma resposta do segundo circuito: Habilita recepção e manda Teste no bit RCIF do reg. PIR1, para ver a hora que a recepção termina, após receber resposta aciona um buzzer!


PIC 2

Pode-se dizer que no começo do funcionamento dele, deixei ele em modo de espera, ou seja, esperando receber o byte do PIC1, para isso fiz as seguintes configurações na USART quanto a recepção : Ativa Alta taxa de transferencia de transmissão, configura Baud Rate para 9600bps, manda nível 0 para o bit SYNC do reg TXSTA , selecionando transmissão assíncrona; habilita porta serial, habilita recepção ; manda testa bit RCIF, do reg PIR1 para avisar quando termina transmissão, (PS: nao comentei no inicio do programa do PIC2, mais armazeno um valor de byte em REG criado para que compare com o valor recebido, com a intensão de acionar um buzzer ou led se os byte forem iguais ! ) Copia valor do RCREG para o W e faz operação SUBWF com os dois valores (W-reg. criado) se forem os mesmo, a operação tem o resultado de zero , assim afeta flag Z, e aciona buzzer ou LED, após manda uma resposta positiva que recebeu o byte; habilito transmissão e testa TRMT do TXREG, para ver se transmissão terminou.



Bom, Copilei os programas e gravei no MCU, porém não deu certo ! Nem ao menos aparenta fazer a primeira transmissão, o que poderia ser? Quando testado no proteus deu erro na posição 0x16 da EEPROM. PS: nao usei memória EEPROM.


Agradeço desde já!

Qualquer duvida, estarei aqui para esclarecer!
 
Logado Logado  
 
Última Edição: 2011/11/25 01:14 Por iketeshima.
  O administrador desabilitou acesso publico para escrita.
#800
SevilhaV (Usuário)
Fresh Boarder
Mensagens: 2
graphgraph
Usuários Offline Clique aqui para ver o perfil deste usuário
Re:AJUDA com USART (PIC16f628a) 3 Mês, 2 Semanas atrás Popularidade: 0  
Caro iketeshima, os dois microcontroladores estão sincronizados com mesma frequência? Para comunicação entre PIC's acho que é mais interessante você procurar por comunicação I²C, é só procurar pela internet que você encontra uma vasta quantidade de material.
 
Logado Logado  
  O administrador desabilitou acesso publico para escrita.
#872
opvini (Usuário)
Fresh Boarder
Mensagens: 4
graphgraph
Usuários Offline Clique aqui para ver o perfil deste usuário
Re:AJUDA com USART (PIC16f628a) 3 Semanas, 6 Dias atrás Popularidade: 0  
Confere se o TX está ligado ao RX, e o GND dos dois também deve ser o mesmo, comum.
Primeiro faz um teste com o PICs conversando com um PC pra ter certeza que a lógica e a comunicação estão corretas. Depois coloque os dois pra conversar.
 
Logado Logado  
  O administrador desabilitou acesso publico para escrita.
Ir para cima
Links do Dia
8051 - 8052.com  
I2C - Protocolo de Comunicação 
RTMES 
Yei! Blog do Murilo 
circuitos eletrônicos 
ESC Brazil
Pesquisar no Portal
Newsletter
Assinar a newsletter do
Portal Embarcados
Nome:
Email:


Enquete
Qual é a sua formação?
 
Parceiros
Laboratório de Garagem
Comunidade C&C++ Brasil
Tempo Real
Eletromaniacos
Psoc-Chile
Oportunidades
Últimas do Fórum

Mais...
Blogs
progamador free lance Autor: alarmesmegatron
forum da labtools mosaico link quebrado Autor: Paulo Furlan
Oportunidade Desenvolvedor de Software Embarcado Autor: CMC Consultoria