pic-c pic16f8776a

lo que pasa colegas es que me e topado con tutoriales y no vienen muy explicado como
uno quicera el problema es con estos comoandso:

#byte porta= 0x05
#byte portb= 0x06
#byte portc= 0x07
#byte portd= 0x08
#byte porte= 0x09

#byte trisa= 0x85
#byte trisb= 0x86
#byte trisc= 0x87
#byte trisd= 0x88
#byte trise= 0x89


lo que pasa es que no se cual es su significado y su funcion,
me gustaria saber cual es su funcion para emplearlos a mi gusto y como mas me convenga
gracias :p
 
byte porta= =x05
presumo que sera un bit en el puerto a pata 5 del puerto a,
ni idea cual es el lenguaje ese yo solo se algo y no mucho de .ams
1 di en que lenguaje esta el programa
2 como todos los lenguajes son muy intuitivos ya deberías haberlo descubierto
3 lee tutoriales
 
Última edición:
no lo que e encontrado es algo acerca de la ram y de los bancos pero no me queda muy bien
entendido que digamos :S



y esta hecho en c en el programa pic-c :p



y pues si e visto bastantes tutoriales pero lo que pasa es que no me avia topado con estas definiciones,
y pues lo que pasa es que empiezas por lo mas facil pero cuano le vas entendiendo emiesas a ver que ay formas mas facil de hacer las cosas pero al principio cuesta trabajo entenderlas :S

#include <16f76.h>
#use delay (clock=4000000)
#fuses XT,NOWDT,NOPUT,NOPROTECT

#byte PORTB=0x06
#byte PORTC=0x07

int dato;

void main(void)


{

set_tris_b(0x00);
set_tris_c(0xff);
portb=0x00;

while (true)
{
dato= portc;
switch(dato)
{
case 1: PORTB =0xff;
break;

case 2: portb=0b00001111;
break;


case 3: portb=0b00111100;
break;

default: portb=0x00;
break;


}

}

}
y este es todo el codigo :p
 

Adjuntos

  • Sin título.png
    Sin título.png
    51.9 KB · Visitas: 7
Última edición:
Hola.
Lo pongo de esta manera:

#byte como ya se vio, es para declarar o simbolizar a una direccion especifica de la RAM, eso al igual que #bit que es para un bit de algun byte.
Al usar #byte no se restringe el nombre, entonces puedes poner otras cosas:
Código:
#byte Salidas = 0x06
Esto es porque en el archivo de cabecera no estan definidos los registros del PIC y si revisan veràn que todo se resume a funciones pre-hechas (El CCS no maneja un C muy estricto).

Código:
output_b(0xFF);  // Igual para el resto de puertos
Finalmente, esto es para no estar buscando la direccion del registro jeje

Código:
#byte  MyPORTB = getenv("SFR:PORTB")
PD: Todo esta en el archivo de ayuda del CCS

Un saludo
 
Atrás
Arriba