Étape 3: Comment une Tréfilerie
Les images vous montrent les timings et les niveaux que vous devez respecter pour être en mesure de communiquer. Définissant une épingle sur une entrée s’effectue en définissant les TRIS coresponding sur « 1 », transformant en moyens de production un « 0 » à cette position de bit.
Mettre un « 0 » sur la broche se fait en disant simplement GPx = 0 ; où x est le nombre de broches GPIO vous connecté à la prise de votre.
Afin de rendre cette instructable qu'aussi complet que possible, je vais vous donner le code complet (même si je n’aime pas vraiment l’idée de ne pas donner dans l’ensemble pour faire les choses à fonctionner). Je ne suis pas sensible à toute personne qui utilise ce code pour réaliser ses projets, vous (ou pas) où le code est venu est à vous de décider.
Le code lui-même est explicite, les timings ont été faites avec minuterie 1, en mode d’interrogation. Je ne voulais overcomplicate le projet avec les routines de service d’interruption. J’ai juste effacer l’indicateur mis en place la minuterie pour me donner le bon timing et attendez que l’indicateur est défini à nouveau. Cela se produit lorsque TMR1 qui se détourne de 65535 à 0.
Plus la valeur dedans, plus il faudra pour l’indicateur défini. C’est tout là est à lui !
Des durées plus courtes ne pas vraiment la peine d’être fait de cette façon, j’ai utilisé inline asm commandes du pour faire. Une opération unique nop prend exactement une seule instruction achèvement du programme, qui - dans notre cas - est 1 microseconde.
Les macros ont été utilisés pour nettoyer le code.