Aqui estoy denuevo. EL programa que usamos para grabar el PIC es el winlv. EL programa que tengo hecho ya lo compilamos y lo pasamos al PIC sin ningun problema pero, como era de esperar, no funciona. Lo agrego aqui por si en algun momento en el que estes aburrido lo miras un poco. Es muy sencillo, unicamente hay que encender algunos leds dependiendo de unas condiciones.
#include <16f877.h>
#fuses HS,NOPROTECT,nowdt,nolvp,nobrownout
#use delay(clock=4000000)
int monedas=0;
main ()
{
while (true)
{
output_bit(PIN_C0,1);
if (PIN_B0==0)
{
if (PIN_A4==1)
{
while (!PIN_A4==0)
{}
monedas = monedas +1 ;
}
}
if (monedas >= 2)
{
if (PIN_D7== 1 && PIN_D6== 1)
{
output_bit (PIN_D0,1);
while (!PIN_D7==0 || !PIN_D6==0)
{}
output_bit(PIN_D0,0);
}
if (PIN_D7==1 && PIN_D6==0)
{
output_bit(PIN_D3,1);
monedas= monedas -2;
while (PIN_D7==1 || PIN_D6==1)
{
if (PIN_D6 == 1)
{
output_bit (PIN_D3,0);
output_bit (PIN_D0,1);
}
}
output_bit (PIN_D0,0);
output_bit (PIN_D3,0);
}
if (PIN_D7==0 && PIN_D6==1)
{
output_bit(PIN_D2,1);
monedas= monedas -2;
while (PIN_D7==1 || PIN_D6==1)
{
if (PIN_D7 == 1)
{
output_bit (PIN_D2,0);
output_bit (PIN_D0,1);
}
}
output_bit (PIN_D0,0);
output_bit (PIN_D2,0);
}
}
if (PIN_B0==1)
{
if (PIN_A4==1 && monedas>=1)
{
while (!PIN_A4 == 0)
{}
output_bit(PIN_D1,1);
monedas = monedas-1;
delay_ms(500);
output_bit(PIN_D1,0);
}
}
}
}
Las primeras lineas, a parte de lo de la libreria del 16f877 lo demas no tengo ni idea para que es, lo ha puesto el profesor. Si ves algun error gordo o algo que crees que deberia cambiar ponlo cuando puedas. Thanx!!
P.D: vas a tener que darme una direccion para mandarte un par de botellas de vino xD