Re: Pré-étude CDI |
Objet : Re: Pré-étude CDI par jojojo sur 21/06/2009 10:59:57 Allez, pour faire patienter, un peu de code. La noblesse, quoi ! '************************************************** 'CDI SCOUT V1.0 'GT 06/2009 '************************************************** const device=3H 'define µP const cmdigbt=17 'cmd igbt const reluc=24 Dim tour as Integer Dim RPM as Integer Dim FlagAllume as byte Dim Retard as Byte'de 125mS 500trm à 4mS 15000trm Dim Duree as Integer Dim Tempo as Integer Dim T as Integer Dim U as Integer 'temps avant prochaine etincelle fct regime Dim V as Integer Set Picbus High lcdinit CSROFF Locate 0,0 Print "CDI PROGRAMMABLE" Locate 0,1 Print "G.TREELS 2009" Delay 3000 cls CSROFF ici1: 'initialisation If in (24)=0 Then'on attend le pre premier pulse Goto Ici1 End If On INT(24)=1 gosub CalculRPM'C'est parti en int Debut: If FlagAllume=1 Then 'Control autorisation Flagallume=0 Gosub Attends1 'on attend, fst de 'duree' Out 17,1 'on allume bougie Gosub Attends2 'pendant x µs (?) Out 17,0 'on éteint End If goto Debut CalculRPM: If in(24)=1 then Goto CalculRPM End if RPM=Capture(24,0) 'En RPM=4*RPM 'µS et 4=facteur correctif pb3h Retard=RPM RPM=RPM/1000 'mS RPM=60000/RPM 'trs minute Locate 0,0 'position Print Dec(RPM,5,1) 'et affichage Locate 7,0 print "TRM" csroff 'ext curs gosub table FlagAllume=1 Return '*********************************************************** 'pour les tests sans clavier 'Rappel : 1°=1/6*VTM en S Table: If RPM<=1000 Then Duree=Retard 'AV 0° Return End If If RPM<=2000 Then tempo=((1/6*RPM))*15 Duree=Retard-Tempo 'AV 15° Return End If If RPM<=3000 Then Tempo=((1/6*RPM))*20 Duree=Retard-Tempo 'AV 20° Return End If Return '*********************************************************** Attends1: 'Casse pied, pas d'instruction 'd'attente de moins d'1 mS 'donc boucle d'attente "manuelle" '100µS pour 65535 V=Duree/100 'suis obligé, avec ce compil For t=1 to V For u=0 to 65535 Next u Next t return Attends2: 'Durée d'allumage, fixée arbitrairement à 300µS For T=1 To 3 For U=0 To 65535 Next U Next T Return Là. Pour les avances choisies, c'est purement arbitraire, pour l'instant. Leest de bien vérifier à l'oscillo, les timings des signaux. N'empèche, si je pouvais trouver un détecteur de cliquetis, compatible GY6, je serais moins "timoré". Allez, vais manger. A + |