Autor Tema: consulta sobre tris_b  (Leído 3795 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado fastyx

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 353
consulta sobre tris_b
« en: 30 de Diciembre de 2005, 08:23:00 »
una consulta puntual: no entiendo el argumento entre parentesis de tris_b(????)
por ejemplo cuando colocan set_tris_b(0xFE); como interpreto el 0xFE?
gracias por la paciencia(la ciencia de la paz)

Desconectado vszener

  • Moderador Local
  • PIC24H
  • *****
  • Mensajes: 2395
RE: consulta sobre tris_b
« Respuesta #1 en: 30 de Diciembre de 2005, 08:27:00 »
Buenas!!!haber lo que hay dentro de parentesis es hexadecimal e indica al puerto b (ya que es set_tris_b) los pines de salida y d eentrada Ebn el mensaje numero 9 del post ejemplitos en c se explican los tipos binario,hexadecimal,decimal para usarlos. Creo que en l manual del compilador tambien te lo explican en el apartado tipos de datos o algo asi.


Suerte!!!Giño
· Nos vemos en los bares!!!!!
· Mi Blog: Aqueronte

Desconectado RaDoN

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1498
RE: consulta sobre tris_b
« Respuesta #2 en: 30 de Diciembre de 2005, 08:28:00 »
Coje la calculadora de Windows, la pones en cientifica y metes el nº (es hexadecimal).

Si no me equiboco el 0xFE es 11111110 en binario, cada numero o letra hexadecimal equivale a un grupo de 4 binario. Si es mas facil para tí tb puedes usar notacion en binario, en esa funcion quedaria.

set_tris_b(0b11111110);
Si juegas contra el mejor, pierdes como los demás.

Desconectado vszener

  • Moderador Local
  • PIC24H
  • *****
  • Mensajes: 2395
RE: consulta sobre tris_b
« Respuesta #3 en: 30 de Diciembre de 2005, 08:29:00 »
Se me olvidaba, puntualizar que cuando pones en la instruccion set_tris_x donde x puede ser cualquier puerto del pic(a,b,c,...) si ponemos 0 declaramos el pin correspondiente como saida y si ponemos 1 declaramos el pin correspondiente como entrada.

Suerte y feliz año!!!Giño
· Nos vemos en los bares!!!!!
· Mi Blog: Aqueronte

Desconectado fastyx

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 353
RE: consulta sobre tris_b
« Respuesta #4 en: 30 de Diciembre de 2005, 08:47:00 »
disculpen la burrada:como coloco en la la calculadora de windows en hexadecimal el numero 0XFE(no encuentro la x)

Desconectado vszener

  • Moderador Local
  • PIC24H
  • *****
  • Mensajes: 2395
RE: consulta sobre tris_b
« Respuesta #5 en: 30 de Diciembre de 2005, 08:54:00 »
Simplmente pon las dos cifras despues del 0x ...el 0xHEXADECIMAL es el formato del compilador CCS da al formato hexadecimal

Suerte!!!Giño
· Nos vemos en los bares!!!!!
· Mi Blog: Aqueronte

Desconectado elmasvital

  • Administrador
  • PIC24H
  • *******
  • Mensajes: 1713
RE: consulta sobre tris_b
« Respuesta #6 en: 30 de Diciembre de 2005, 09:48:00 »
Creo que deberias repasar algun tema sobre sistemas de numeracion. Así por encima para que comprendas que el binario el octal el decimal y el hexadecimal es una forma de expresar lo mismo.

Si no tienes claro esto te vas a perder mucho.

1 saludo

Desconectado elmasvital

  • Administrador
  • PIC24H
  • *******
  • Mensajes: 1713
RE: consulta sobre tris_b
« Respuesta #7 en: 30 de Diciembre de 2005, 09:51:00 »
Creo que deberias repasar algun tema sobre sistemas de numeracion. Así por encima para que comprendas que el binario el octal el decimal y el hexadecimal es una forma de expresar lo mismo.

Si no tienes claro esto te vas a perder mucho.

1 saludo

PD: Set_tris_x(....) espera como parámetros la configuración de los 8 puertos e/s. Ahora bien lo más grafico es pasarlo en binario 0b01100111 porque se ve a simple vista cuales estan abiertos y cuales cerrados, pero tambien es facil perderte entre tanto 0y 1 y errar al ponerlos. Por eso se utiliza sistemas de numeración más alto como el hexadecimal.

Desconectado fastyx

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 353
RE: consulta sobre tris_b
« Respuesta #8 en: 30 de Diciembre de 2005, 10:52:00 »
gracias!!!!! ya comprendi estoy ejercitando conversiones entre sistemas de numeracion.no sabia que ox era el prefijo de hexadecimal.Rebotado

Desconectado RedPic

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 5552
    • Picmania by Redraven
RE: consulta sobre tris_b
« Respuesta #9 en: 30 de Diciembre de 2005, 11:14:00 »
Amigo fastyx:

Puedes hacerlo de forma que no necesites la calculatta. Y es escribiendo el argumento directamente en binario.

Igual que 0x indica que lo que sigue es Hexadecimal, el prefijo 0b indica que lo siguiente es Binario.

Codigo:

set_tris_b(0xFE);       // Esta llamada a set_tris en hexadeciaml es idéntica
set_tris_b(0b11111110); // a esta otra llamada en binario, e incluso
set_tris_b(254);        // a esta otra que es lo mismo en decimal



A continuaaaaar ...
Contra la estupidez los propios dioses luchan en vano. Schiller
Mi Güeb : Picmania