cs_kholiyos
Messages postés7Date d'inscriptionlundi 23 novembre 2009StatutMembreDernière intervention26 mai 2010
-
18 déc. 2009 à 20:18
cs_kholiyos
Messages postés7Date d'inscriptionlundi 23 novembre 2009StatutMembreDernière intervention26 mai 2010
-
20 déc. 2009 à 15:32
kholiyos
je suis en train de faire un programme en c qui fait allumer un diode liée au port b0 du pic si seulement si la bouton liée au port d0 est actionée mais malheureusement ça marche pas aider mois svp voici mon code:
#include <16f877.h>
#fuses HS,NOWDT,NOPROTECT
#use delay(clock=40000000)
#INT_EXT
#use rs232(baud=9600, xmit=PIN_C6, rcv=PIN_C7)
int button_pressed;
void initial()
{
set_tris_b(0);
set_tris_d(255);
}
// main program
void main() {
button_pressed=input_d();
if(button_pressed==0) // if button action and was not pressed
{
cs_6co
Messages postés114Date d'inscriptionlundi 27 janvier 2003StatutMembreDernière intervention 5 avril 20121 19 déc. 2009 à 20:01
salut,
je ne sais pas quel compilo tu utilises... mais ne dois-tu pas appeler initial() depuis main() et executer tes instructions dans une boucle infinie
genre :
void main() {
while (1)
{
button_pressed=input_d();
if(button_pressed==0) // if button action and was not pressed
{
output_high(pin_b0);
}
else // if button action and was pressed
{
output_low(pin_b0);
}
}
sinon ton programme s'exécute dès la mise en route du pic et tu n'as pas le temps d'appuyer sur ton bouton, ni même de voir ta LED s'allumer