Gracias por la respuesta, me apunto los libros.
Le he estado echando un ojo y tengo una duda, voy a usar el Hi tech, me gustaría saber una cosa.
#use parece que es del CCS y no se puede usar en el Hi tech, ¿para usar la función delay en microsegundos o milisegundos en el Hi tech que tendría que hacer?
He buscado bastante pero no encuentro nada que me lo aclare bien, ¿tendría que bajarme un header que he visto por ahí y poner #include "delay.h"?¿Ese header vale para cualquier reloj que uses? Lo digo porque como he puesto en el esquema tengo un cristal de 10MHz...
Un saludo y muchas gracias de nuevo
EDITO: Ah y otra duda, aparte de la libreria htc.h, ¿tengo que poner también #include "16F877.h"?¿Por que?
Gracias por la respuesta, me apunto los libros.
Le he estado echando un ojo y tengo una duda, voy a usar el Hi tech, me gustaría saber una cosa.
#use parece que es del CCS y no se puede usar en el Hi tech, ¿para usar la función delay en microsegundos o milisegundos en el Hi tech que tendría que hacer?
He buscado bastante pero no encuentro nada que me lo aclare bien, ¿tendría que bajarme un header que he visto por ahí y poner #include "delay.h"?¿Ese header vale para cualquier reloj que uses? Lo digo porque como he puesto en el esquema tengo un cristal de 10MHz...
Un saludo y muchas gracias de nuevo
Si mal no recuerdo, para usar las funciones de delay de Hitech, basta con definir la frecuencia a utilizar....Código: C
#define _XTAL_FREQ 10000000 __delay_ms(100)EDITO: Ah y otra duda, aparte de la libreria htc.h, ¿tengo que poner también #include "16F877.h"?¿Por que?
No, basta con solo incluir la librería htc.h
#include "htc.h"
#include "stdio.h"
#define _XTAL_FREQ 10000000
int contador=0;
void interrupt isr(void){
if(TMR1IE && TMR1IF){
TMR1IF=0;
contador++;
if(contador==5){
while(TXIF==0);
TXREG=0b10101010;
contador=0;
}
TMR1H=0b00001011;
TMR1L=0b11011100;
}
}
void main()
{
GIE=1;
PEIE=1;
INTE=1;
INTEDG=1;
TMR1H=0b00001011;
TMR1L=0b11011100;
T1CKPS1=1;
T1CKPS0=1;
RP0=1;
TRISB=0b11111101;
TRISC=0b11111101;
BRGH=1;
TMR1IE=1;
TXEN=1;
SPBRG=64;
RP0=0;
SPEN=1;
CREN=1;
TMR1ON=1;
while(1);
}