Bonjour ,
Je programme en Lazarus. peut être devrais je poster sur le forum Lazarus ?
je poste ici car cela peut concerner plus que Lazarus.
J'ai lu dans le Wiki.freePascal :
je souhaite générer sur une sortie Gpio, un signal carré de 2.5Mhz (soit 400nS), d'après le message ci-dessus cela devrait être possible. mais peut-être que vos expériences montre une limite plus basse en frequence que celle du message ?Cette unité (Pigpio.pas[2]) avec 270 lignes de code fournies par Gabor Szollosi, fonctionne très rapidement (par exemple, fréquence de commutation de la broche GPIO 8 MHz).
Pour faire mes essais, j'ai trouvé des procédures de "délais" approchant la nanoseconde .
l'instruction "fpclock_nanosleep" et je suppose aussi la "CLOCK_REALTIME" sont inconnues à mon programme.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 procedure NanoSleep(NanoSeconds: Int64); var Req, Rem: timespec; begin Req.tv_sec := NanoSeconds div 1000000000; Req.tv_nsec := NanoSeconds mod 1000000000; fpclock_nanosleep(CLOCK_REALTIME, 0, @Req, @Rem); end;
Une recherche m'indique qu'elles sont dans "BaseUnix", mais quand je fais une recherche dans l'unité "BaseUnix", elles n'y sont pas.
Savez vous si je dois installer autre chose, pour accéder à ces instructions ?
Avez vous des infos sur cela.
Avez vous d'autres solutions de délais ayant cette précision ?
Merci a vous pour vos aides.
Partager