Diretivas HIGH e LOW

Software e Hardware para uC PIC

Moderadores: andre_luis, 51, guest2003, Renie

Diretivas HIGH e LOW

Mensagempor bug » 15 Nov 2012 11:10

Bom dia pessoal, estou precisando ler sobre as diretivas HIGH e LOW , baixei vários PDFs da Micro Chip e não achei nada. Algum colega teria algo sobre?
Só o que sei é que define byte alto e byte baixo para um dado de 16 bits.
Obrigado.
Bug
Boas férias a todos. :P
bug
Bit
 
Mensagens: 27
Registrado em: 18 Nov 2006 13:21

Mensagempor vtrx » 15 Nov 2012 13:17

Voce mesmo postou a definição...
Avatar do usuário
vtrx
Dword
 
Mensagens: 2239
Registrado em: 20 Abr 2008 21:01

Re: Diretivas HIGH e LOW

Mensagempor Rodrigo_P_A » 15 Nov 2012 15:35

bug escreveu:Bom dia pessoal, estou precisando ler sobre as diretivas HIGH e LOW , baixei vários PDFs da Micro Chip e não achei nada. Algum colega teria algo sobre?
Só o que sei é que define byte alto e byte baixo para um dado de 16 bits.
Obrigado.
Bug
Boas férias a todos. :P


depende do contexto

HIGH LOW em para um dado de 16 bits pode ser byte alto e byte baixo

HIGH LOW para estado do pino pode ser VCC GND

e assim por diante, difícil explicar desse jeito, num tem regra pra isso, depende do contexto, e que diretiva é essa?
---
Avatar do usuário
Rodrigo_P_A
Dword
 
Mensagens: 2237
Registrado em: 12 Out 2006 18:27
Localização: Osasco - S.P - Brasil

Re: Diretivas HIGH e LOW

Mensagempor EvandrPic » 15 Nov 2012 15:57

HIGH, LOW e UPPER são operadores aritméticos do compilador MPASM. Não são diretivas.
Veja mais em DS33014K:
http://ww1.microchip.com/downloads/en/D ... 33014K.pdf

page 40 que fica na página 48 deste PDF:
3.5 ARITHMETIC OPERATORS AND PRECEDENCE
Arithmetic operators may be used with directives and their variables as specified in the table below.

Note: These operators cannot be used with program variables. They are for use with directives only.

The operator order in the table also corresponds to its precedence, where the first operator has the highest precedence and the last operator has the lowest precedence.
Precedence refers to the order in which operators are executed in a code statement.

...

page 142 que fica na página 150 deste PDF:
6.4 LOW, HIGH AND UPPER OPERATORS
Low, high and upper operators are used to return one byte of a multi-byte label value.
If low is used, only bits 0 through 7 of the expression will be used. If high is used, only bits 8 through 15 of the expression will be used. If upper is used, only bits 16 through 21 of the expression will be used.
...



bug escreveu:Bom dia pessoal, estou precisando ler sobre as diretivas HIGH e LOW , baixei vários PDFs da Micro Chip e não achei nada. Algum colega teria algo sobre?
Só o que sei é que define byte alto e byte baixo para um dado de 16 bits.
Obrigado.
Bug
Boas férias a todos. :P
EvandrPic
Dword
 
Mensagens: 2116
Registrado em: 31 Mar 2010 15:05

Mensagempor bug » 15 Nov 2012 19:19

Obrigado a todos, estava procurando em diretivas porisso não encontrava!
Achei que seria diretivas após ler este post em MikroElektronika:

MPlab uses the HIGH and LOW directives to return the high and low bytes when reading a table. MikroC rejects these directives.

Is there a workaround:

example:

asm {
movwf _temp
movlw HIGH (TABLE) // error
movwf PCLATH
movlw 0x2
mulwf temp
movf PRODH,w
addwf PCLATH,f
movf PRODL, w
addlw LOW (TABLE) // error
}
movwf PCL

Bom feriado!
bug
Bit
 
Mensagens: 27
Registrado em: 18 Nov 2006 13:21


Voltar para PIC

Quem está online

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

cron

x