Bonjour
Mon projet est faire l'affichage sur un véhicule pour le concours ECO SHELL, sur l'affichage on doit afficher, la vitesse moyenne, la vitesse instantané moteur et véhicule, la vitesse basse (vitesse de mise en route du moteur) et la vitesse Haute (vitesse d'extinction du moteur).
comme matériels un pic 16F876 ou un PIC 16F877, je préviligie le 16F876, mais si vous préféré l'autre je ss preneur. le programme et en PICBASIC ( log PIC BASIC PLUS 2.00) et pour la simulation Proteus. l'écran LCD 2lignes. et la fréquence et de 4MHz
pour le moment j'aimerais afficher le temps en comptant l'overflow la remise a zéro du timer.
voici mon programme
DEVICE 16F876
xtal=4
'declaration lcd
DECLARE LCD_TYPE 0
DECLARE LCD_DTPIN PORTC.4
DECLARE LCD_ENPIN PORTC.3
DECLARE LCD_RSPIN PORTC.2
DECLARE LCD_INTERFACE 4
DECLARE LCD_LINES 2
'declaration variables
dim tour_moteur as float
dim tour_moteur_affiche as DWORD
dim toto as bit
dim nb_tour_timer as WORD
dim Tomer as WORD
dim Tomer1 as WORD
dim Tomer2 as WORD
symbol timer = TMR1L.WORD
'initialisation
Tomer=0
Tomer1=0
Tomer2=0
timer=0
nb_tour_timer=0
T1CON = %10000001 'on autorise le timer
PIE1 = %00000001 'autorise les interruptions en cas d'overflow sur le timer
PIR1 = %00000001
cls
boucle_principale:
if nb_tour_timer=0 then
Tomer1=timer
Tomer=Tomer2
Tomer2=Tomer1+Tomer
endif
if nb_tour_timer>=1 then
Tomer1=timer
Tomer=Tomer2
Tomer2=65535+Tomer1+Tomer
endif
PRINT at 1,1, DEC Tomer
goto boucle_principale
interruption:
'nb de tour du timer
if PIR1.0=1 then
nb_tour_timer=nb_tour_timer+1
PIR1.0=0
endif
merci d'avance
-----