Peut être il veut faire ça comme nous c'est à dire en C avec AVR et sans bibliothèques supplémentaire?
Auquel cas pour ma part j'ai presque fini une bibliothèque objet ultra minimaliste qui utilise seulement AVR, donc plus facile à décortiquer j'imagine que des bibliothèques arduino plus grosses et multifonctions, ça pourrait peut être l'aider?
C'est vrai que le sujet est un peu en standby mais je suis sûr que chacun avance dans son coin et on va arriver à montrer des choses pas mal à un moment.
Y a un truc dont je voulais vous parler, sur internet on peut lire que les interruptions par exemple ne fonctionnent pas en C++, d’ailleurs le fichier interrupt d'arduino est un fichier C, donc je pensais vraiment que ce n'était pas possible en objet... Effectivement c'était pas évident de trouver les bonnes macros AVR, mais à force de passer du temps on trouve, et ça fonctionne parfaitement bien en langage objet pour le coup
Sa détecte même les rebonds si ont ne met pas un condensateur dans le circuit des interruptions pour lisser un peu le courant, c'est quand même précis.
Pour mon cas j'aurais besoin plus tard des interruptions pour mon détecteur de radioactivité, en plus de prendre en compte le temps mort du tube geiger ce qui complique un peu les choses d’ailleurs car ces tubes fonctionnent en saturation à cause des avalanches d'électrons, c'est le temps mort, et ce temps mort est variable certainement suivant les trajectoires des particules dans le gaz, des niveaux d'énergie, de la probabilité d'ionisation, de collisions, etc...
La chose un peu bébête c'est que cette situation fait que l'augmentation de l'exposition à la radioactivité augmente le nombre d'interruptions en un temps donné, ça d’accord, mais à un moment si on continue dans cette courbe d'augmentation, le nombre d’interruptions passe à zéro parce que le tube est en saturation, c'est arrêté sur le dernier front montant juste avant la saturation et basta.
Ou bien sinon la solution, il faut que je détecte sur une même pin les interruptions en front montant, et la tension à tout instant, et faire un test, si la tension est toujours de 5v au delà d'un délai, cela signifie que le tube est en saturation.
Ou sinon j'ai pensé un système avec 2 tubes
Bon après je me complique sans doute pour rien car la saturation d'un tube comme le SBM20 ne doit s'obtenir peut être que proche d'une source de radioactivité assez intense...
Bref, que de projets
J'ai une question, pendant une interruption mon programme il fait quoi? L'interruption exécute la fonction que je souhaite, ça d’accord, mais une fois cette fonction exécutée il reprend la ou il en était dans le reste du programme? Ou bien on perd ce qu'on était en train de faire? Bref, est ce qu'une interruption déglingue le reste?
La semaine prochaine je vais programmer quelques fonctions pwm pour faire fonctionner des servos pour ceux qui aiment les robots et le modélisme. Et pourquoi pas ensuite coder une fonction I2C pour recevoir les valeurs de gyro comme le MPU6050 utilisé un peu partout.
Je vous tiens informé de l'avancement de tout ça.
Personnellement vous pensez que je fais erreur à programmer un AVR en C++ ou bien ça ne change pas grand chose à part le fait que ce soit peut être un peu plus lourd?
-----