Étape 11 : RX
Nous sommes enfin passés les fonctions de configuration, nous obtenons pour les fonctions qui nous intéresse vraiment. Il s’agit de la rx(). Elle est appelée lorsque vous voulez obtenir l’utilisateur dans la zone tampon de RX. Il y a deux tampons, soit dit en passant. Il y a le tampon sur le FTDI, qui détient 20 caractères (je crois). Mais il y a le tampon sur votre PC, qui est en grande partie limitée à la quantité de mémoire de votre ordinateur a.
RX la fonction nous sont enfin passés les fonctions d’installation ! Maintenant, pour les fonctions, nous sommes vraiment intéressés. Il s’agit de la rx(). Elle est appelée lorsque vous voulez utilisateur dans la zone tampon de RX. Il y a deux tampons RX, soit dit en passant. Il y a le tampon sur le FTDI, qui détient 20 caractères (je crois). Mais, il y a le tampon sur votre PC, qui est largement limitée à la quantité de mémoire de que votre ordinateur. Et n’oubliez pas, il s’agit de C. Si vous définissez RxBuffer de votre PC d’être limité à 256 caractères et vous obtenez le caractère 257, il ne va pas se plaindre. Au contraire, vous aurez simplement un dépassement de mémoire tampon et l’enfer en train pour le déboguer. Une fois que la fonction D2XX FT_Read a été appelée, le tampon de PC est désactivé. Par conséquent, obtenir les données souhaitées se résume à rx() appelant le moment venu.
La plupart de nos variables déclarées à l’appui de ce module est utilisée dans les fonctions rx() et tx().
- RxBytes contient le nombre d’octets est en attente d’être lu.
- RawRXBuffer est le buffer de RX ordinateur réel. Encore une fois, nous avons mis ce tampon de 2 048 caractères, mais si vous recevez le nombre de caractères 2049 il ne va pas se plaindre. Vous aurez simplement à un dépassement de mémoire tampon. Musique sinistre CUE.
- BytesReceived , c’est combien d’octets ont été reçus pour être lu.
- 3: la fonction rx() a d ' option de l’écran. Ce qui signifie, si nous obtenons des données et appeler la fonction rx() en lui passant une valeur true, puis elle s’imprimera les données reçues à l’écran.
- 6: nous obtenons le statut des périphériques. Cela nous dira combien d’octets est en attente d’être lu (RxBytes).
- 8: a est un moyen simple de convertir nos données reçues en une chaîne, pour l’analyse facile.
- 10 : si nous avons eu effectivement quelques octets, permet de faire quelque chose avec eux.
- 13 : effectivement charge les données reçues dans notre RawRxBuffer. Il obtient également combien d’octets ont été lus depuis la dernière FT_GetStatus appeler.
- 15 : si nous avons obtenu quelques octets, et nous voulions imprimer, Eh bien, alors nous allons imprimer.
- 19 : il s’agit d’un endroit important. Voici où vous voulez mettre le code pour copier les données de le RawRxBuffer, dans un foyer permanent.
- 20 : si nous avons obtenu des données, puis retourner la valeur true.
- 27 : si nous n’avons pas toutes les données, elle retourne false
Vous devez appeler la fonction rx() comme suit,
rx(true);
Cela serait imprimer quelque données se trouvent dans la mémoire tampon de rx à l’écran.