Libreria de Retardos SDCC
2 participantes
Página 1 de 1.
Libreria de Retardos SDCC
Voy a empezar a ver si puedo hacer una libreria de retardos para sdcc, mi idea es cojer una libreria de retardos en ensamblador y aprovechando que sdcc acepta asm convertirla a sdcc.
¿Os parece buena idea? ¿Veis algun problema?
Mientras voy a buscar la libreria.
Un saludo
¿Os parece buena idea? ¿Veis algun problema?
Mientras voy a buscar la libreria.
Un saludo
Re: Libreria de Retardos SDCC
Hice un fichero tempo.c que usaba con sdcc, pero puedes mejorar, aqui el cuarzo tiene un valor fijo de 4MHZ
// tempo.c
// temporisation
#define __16f877
#include <pic16f877.h>
// quartz de 4MHz
void tempo_4us(char);
void tempo_ms( unsigned int);
void tempo_s( unsigned char);
void tempo_4us ( char a )
{
a;// pour eviter un warning de non referencement
_asm //a est en fait dans le registre w
sublw 1 //(1-a)
boucle:
ADDLW 1
btfss 0x03,0 //test si w=0 carry=1
goto boucle
_endasm;
} //temps=(4a+1)µs a>=2
void tempo_ms( unsigned int t) {
while (t) {
tempo_4us(247);
t--;
}
}
void tempo_s( unsigned char t) {
while (t) {
tempo_ms(1000);
t--;
}
}
Aqui más http://per.launay.free.fr/pik_digor/sdcc/lib/source/
Sino tu puedes usar las bibliotecas de PICGCC y modificar para usar con SDCC
http://sourceforge.net/projects/pic-gcc-library/files/Pic-Gcc-Library/Pic-Gcc-Library.1.1.10/pic-gcc-library.1.1.10.tar.gz/download
Todas estas bibliotecas estan libre, licencia GPL
Saludos
Per
// tempo.c
// temporisation
#define __16f877
#include <pic16f877.h>
// quartz de 4MHz
void tempo_4us(char);
void tempo_ms( unsigned int);
void tempo_s( unsigned char);
void tempo_4us ( char a )
{
a;// pour eviter un warning de non referencement
_asm //a est en fait dans le registre w
sublw 1 //(1-a)
boucle:
ADDLW 1
btfss 0x03,0 //test si w=0 carry=1
goto boucle
_endasm;
} //temps=(4a+1)µs a>=2
void tempo_ms( unsigned int t) {
while (t) {
tempo_4us(247);
t--;
}
}
void tempo_s( unsigned char t) {
while (t) {
tempo_ms(1000);
t--;
}
}
Aqui más http://per.launay.free.fr/pik_digor/sdcc/lib/source/
Sino tu puedes usar las bibliotecas de PICGCC y modificar para usar con SDCC
http://sourceforge.net/projects/pic-gcc-library/files/Pic-Gcc-Library/Pic-Gcc-Library.1.1.10/pic-gcc-library.1.1.10.tar.gz/download
Todas estas bibliotecas estan libre, licencia GPL
Saludos
Per
Temas similares
» SDCC USB libreria
» Libreria LCD 20x 4 Flexible 3 bits SDCC PIC18F2550
» Libreria LCD 20 x 4 Flexible 4 bits SDCC PIC18F2550
» Bug en la librería ADC para 18F
» librería ADC para PIC-GCC
» Libreria LCD 20x 4 Flexible 3 bits SDCC PIC18F2550
» Libreria LCD 20 x 4 Flexible 4 bits SDCC PIC18F2550
» Bug en la librería ADC para 18F
» librería ADC para PIC-GCC
Página 1 de 1.
Permisos de este foro:
No puedes responder a temas en este foro.