Dúvida na direção dos PORTs do PIC

Software e Hardware para uC PIC

Moderadores: andre_luis, 51, guest2003, Renie

Dúvida na direção dos PORTs do PIC

Mensagempor lpagano » 17 Nov 2008 15:32

Pessoal,

Será que existe algum conflito na configuração abaixo para um PIC 18F4520?

Código: Selecionar todos
TRISB = 0b00000001;       // só o RB0 como entrada

a = 0b00001111;

PORTB = a << 1;         // PORTB = 0b00011110


Nesse caso o PORTB.RB0 estaria em zero, mas como o TRISB declarou esse pino como saída, será que vai ter algum conflito ou posso utilizar o RB0 como entrada sem problemas?
lpagano
Byte
 
Mensagens: 393
Registrado em: 06 Nov 2006 14:23

Mensagempor RobL » 19 Nov 2008 16:21

Se sua pergunta se refere a colocar o PortB0 como entrada e rotacionar os demais, a cada escrita (rotação) ele vai reler o PortB0 novamente (ler o pino). Portanto não terá problema.
RobL
Dword
 
Mensagens: 1546
Registrado em: 20 Fev 2007 17:56

Mensagempor lpagano » 20 Nov 2008 07:20

RobL,

Isso quer dizer que se o TRIS.B0 estiver em 1, mesmo que eu dê um comando para sair um 'zero' no pino RB0 não fará efeito nesse pino, pois o mesmo só funcionará para leitura de dados (inputs)?

Valeu!
lpagano
Byte
 
Mensagens: 393
Registrado em: 06 Nov 2006 14:23

Mensagempor RobL » 20 Nov 2008 09:31

Não terá problema.
O pic trabalha com a seqüência Read, Modify, Write.
Quando você escreve, toda a porta é lida, modificada e reescrita. O pino (porta) que estiver como entrada vai ler o pino e não o buffer.
Portanto, você não consegue escrever de forma a chegar ao pino, se a porta estiver como entrada.
Quando você escreve, escreve nos buffer e os pinos que estiverem como saída (note como saída) vão refletir, nos pinos, o que está no buffer de escrita.
O perigo existirá se houver alguma alteração na direção da porta, separada por uma linha de programa somente, que não é o seu caso.
RobL
Dword
 
Mensagens: 1546
Registrado em: 20 Fev 2007 17:56

Mensagempor lpagano » 20 Nov 2008 11:09

RobL,

Obrigado pela explicação.
Vou fazer isso no meu programa.

Valeu!
lpagano
Byte
 
Mensagens: 393
Registrado em: 06 Nov 2006 14:23


Voltar para PIC

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante

x