bonjour a tous alor je veux programmer un pic 16f688 de chez microchip voir la data cheet:
j'ai fais le programme avec des mots français j'aimerai que quelqu'un me le traduise en C.

3 entrée: dataout = qui peut etre égale à 0 ou 1
cmot = .............................à 0 ou 1
bp = .............................. .....0 ou 1

2 sortie: clock = horloge venant d'un quartz 0 ou 1
S/L = 0 ou 1
le résultat sera envoyer par une interface serie sur une rs232(vers un pc)

2 variable auxilaire : X = nombre entier strictement positif qui peut être très grand(ici il représente un nombre de capteur actif à l'état bas)
S = nombre entier positif type char(qui représente une surface en mêtre carré)

programme principale


cmot= S/L
dès que S/L = 0 je part dans un sous programme appelé ACQ
sinon RIEN le P.principal tourne en boucle

S.prog ACQ
si dataout = 1 pendant 400 front montant de clock alors je retourne au P.principal
si dataout = 0 avant 400 front de clock alors je vais dans un autre sous prog appelé COMPT

S.prog COMPT
tant que dataout n'est pas = à 1 durant 400 frant montant de clock j'incrémente une variable appelé X de 1 à chaque fois que dataout = 0 sur un front montant de clock
dès que dataout= 1durant 400 front montant de clock alors il faut faire 2 chose:

1) il faut faire le calcul

S = X*0.00025
convertir le résultat pour quelle puisse être envoyer par l'interface série donc au conecteur RS232 et traitable par le pc(qui aura un peti prog je pence pour le faire)

2) il faut tout remetre à 0 des que S est envoyer au pc

Intéruption possible

si bp = 1 à n'importe quel moment du prog il doit permettre de faire une pause sans rien effacer
dès qu'il repasse à 0 le programme reprend là ou il en était.



si il faut des détail chui là bon courage merci de votre aide