Série de protocoles de communication d'implémentation d'UART FPGA Vol1 | Ofer Keren | Skillshare

Vitesse de lecture


1.0x


  • 0.5x
  • 0.75x
  • 1 x (normale)
  • 1.25x
  • 1.5x
  • 1.75x
  • 2x

Série de protocoles de communication d'implémentation d'UART FPGA Vol1

teacher avatar Ofer Keren

Regardez ce cours et des milliers d'autres

Bénéficiez d'un accès illimité à tous les cours
Suivez des cours enseignés par des leaders de l'industrie et des professionnels
Explorez divers sujets comme l'illustration, le graphisme, la photographie et bien d'autres

Regardez ce cours et des milliers d'autres

Bénéficiez d'un accès illimité à tous les cours
Suivez des cours enseignés par des leaders de l'industrie et des professionnels
Explorez divers sujets comme l'illustration, le graphisme, la photographie et bien d'autres

Leçons de ce cours

    • 1.

      Introduction

      1:00

    • 2.

      Qu'est-ce que UART

      7:03

    • 3.

      UART et sa couche physique

      2:35

    • 4.

      Comment le paquet de données UART ressemble

      10:29

    • 5.

      Comment échantillonner le paquet de données UART

      10:20

    • 6.

      Notre structure UART

      25:48

    • 7.

      Transmetteur UART

      15:39

    • 8.

      Récepteur UART

      12:15

    • 9.

      Simulation de récepteur

      18:21

    • 10.

      Simulation d'un émetteur

      16:05

    • 11.

      Conférence bonus

      2:30

  • --
  • Niveau débutant
  • Niveau intermédiaire
  • Niveau avancé
  • Tous niveaux

Généré par la communauté

Le niveau est déterminé par l'opinion majoritaire des apprenants qui ont évalué ce cours. La recommandation de l'enseignant est affichée jusqu'à ce qu'au moins 5 réponses d'apprenants soient collectées.

43

apprenants

--

À propos de ce cours

Ce cours a été réalisé par un ingénieur électronique professionnel spécialisé dans la FPGA !

Ce cours est le premier d'une série de cours sur les protocoles de communication.

Dans ce cours, vous apprendrez tout ce que vous devez savoir sur l'UART

  • Aucune connaissance préalable du protocole de communication n'est nécessaire - J'enseignerai tout sur la communication en série et la façon de l'échantillonner, et sur les problèmes que nous pourrions rencontrer à l'intérieur de la FPGA lorsque vous essayez d'échantillonner un signal du monde extérieur.

  • Vous apprendrez à concevoir un UART - Je vous apprendrai pas à pas sur mon design UART et vous expliquerai comment concevoir un meilleur look.

  • Je vais parcourir les bases de la communication UART et l'expliquer - Je vous apprendrai ce qu'est l'UART et au sujet du protocole UART, plus que cela je vais parler de la couche physique de RS232.

  • J'expliquerai mon code UART VHDL et nous allons même le simuler ensemble - nous allons simuler le récepteur et l'émetteur

À la fin de ce cours, vous aurez votre propre UART en langue VHDL ! ! !

Dans ce cours, j'enseignerai également les protocoles de communication en série en général et la façon d'utiliser notre horloge rapide afin d'échantillonner le signal lent du monde extérieur.

Ce cours a été conçu pour tous les niveaux par un ingénieur électronique et informatique professionnel. Avec une vaste expérience avec les FPGA de toutes les entreprises sur le marché.

Rencontrez votre enseignant·e

Teacher Profile Image

Ofer Keren

Enseignant·e

Compétences associées

Design Design UI/UX Prototypage
Level: All Levels

Notes attribuées au cours

Les attentes sont-elles satisfaites ?
    Dépassées !
  • 0%
  • Oui
  • 0%
  • En partie
  • 0%
  • Pas vraiment
  • 0%

Pourquoi s'inscrire à Skillshare ?

Suivez des cours Skillshare Original primés

Chaque cours comprend de courtes leçons et des travaux pratiques

Votre abonnement soutient les enseignants Skillshare

Apprenez, où que vous soyez

Suivez des cours où que vous soyez avec l'application Skillshare. Suivez-les en streaming ou téléchargez-les pour les regarder dans l'avion, dans le métro ou tout autre endroit où vous aimez apprendre.

Transcription

1. Introduction: Salut, bienvenue à mon cours de communication. Si vous voulez en savoir plus sur votre transmission à partir de 0 et écrire un code VHDL. Et je vais vous expliquer ma conception et tout ce se trouve dans ce document sur la couche physique d'un uart, sur les paquets et tout ce que vous devez savoir pour communiquer avec uart avec votre FPGA. Je vais partager avec vous mon design pour l'émetteur UR et nous allons passer par votre émetteur et votre récepteur. Nous allons également simuler la conception, bien sûr, et je vais vous montrer tout ce que vous devez savoir et vous expliquer sur la communication en série. Et plus particulièrement dans ce cours sur la neurotransmission, dans ce cours de trois cours sur les communications en série. Donc, vous êtes invités à rejoindre mon cours et commencer à superposer à partir de 0, comment écrire dans votre contrôleur d'art à partir de 0. Donc, vous êtes invités à participer à mon cours et commencer à écrire votre URL, code VHDL, le formulaire 0. 2. Qu'est-ce que UART: Salut, bienvenue à la prochaine conférence. Dans cette conférence, nous allons parler de ce qui est un nouvel art. Avant de commencer, vous avez ce document. Vous pouvez le télécharger. D'accord. J' ai écrit quelques choses ici, d'accord. Et si je veux ajouter plus, je vais juste le télécharger dans cette conférence, accord, pour que vous puissiez le télécharger ici. Ok, alors commençons et vous êtes au récepteur asynchrone universel, ok ? C' est une communication en série, très ancienne, OK. Maintenant, le protocole est utilisé pour échanger des données entre deux appareils, ok ? Il n'a utilisé que deux fils, TX et RX pour chaque direction. Et ce que cela signifie en fait, c'est que pour envoyer des données du récepteur à l'émetteur, en fait, pour les faire communiquer entre eux, nous n'avons besoin que de deux fils, un dans chaque direction. Et uart est jusqu'à la transmission duplex intégral. Cela signifie qu'il peut être en mode simplex, ce qui signifie que dans la transmission d'un côté peut envoyer des données de l'autre côté. D' accord ? Demi-duplex. Il n'y a que deux côtés qui peuvent parler, mais seulement un à la fois. Et le duplex intégral veut dire ça. Et c'est ce que vous supportez. Le duplex intégral signifie que les deux côtés peuvent envoyer des données en même temps. D' accord ? Donc si tu penses à un uart, gay, ça ressemble à ce gars. Je reviendrai sur ce second cas. Et le format des données est un cadre, quel ensemble de règles ? Nous en parlerons lors des prochaines conférences. Maintenant, si, Si nous allons parler de, si nous pensons à l'UR à k, nous avons un décalage libéré pour transmettre les données et nous avons un registre de décalage pour recevoir les données. C' est pourquoi, pourquoi mange une transmission duplex intégral. Ok, et regardons, ok, donc c'est comme ça qu'il est connecté entre deux composants. Encore une fois, si on ne pense pas à la salle de la FPGA, d'accord. Nous avons deux composants. Ils peuvent parler les uns avec les autres dans un cas uart portico, communication en série. Ok, donc ici, j'ai encore écrit un protocole série utilisé, d'accord ? La plupart du temps, il a été utilisé dans votre PC, dans vos ports de communication, dans un modems RS232 et plus encore. D' accord. Oui, on a déjà dit que c'était un test de communication des cornes. Mais donc, d'accord. L' émetteur et le récepteur ne partagent pas une horloge commune. D' accord ? Et quand je dis qu'ils n'ont pas d'horloge commune. D' accord. Ça ne veut pas dire qu'ils n'ont pas de fréquence. Ok. Donc la fréquence entre les chantiers doit être réglée, ok, préréglée. Chaque battement a son propre temps k. Nous avons donc besoin de savoir quelle est la phase temporelle du bit. Nous en parlerons plus tard. D' accord ? Maintenant, la plupart des communications uart ou simplement en utilisant un RX et TX signaux, parfois nous allons voir RTS et CTS intégrés dans votre chipset. Et CTS signifie clair à envoyer. Un RTS signifie Prêt, prêt à envoyer. Et ces signaux sont utilisés pour contrôler la transmission elle-même. Et ça veut juste dire que parfois tu veux avoir un peu de contrôle sur le protocole Uart, gay. Alors pensez à deux pièces, par exemple, puce connectée à puce. Donc, si vous avez le RTS et CTS, vous voudrez que vous le dites à l'autre, je suis prêt à envoyer. Ok, donc ce que ça veut dire, en fait, si nous avons lien direct pas cher, trop bon marché, ok ? Ok, Donc si ce uart veut dire à cette URL à gay qu'il est prêt à recevoir des données. Il va céder, prêt à envoyer, et celui-ci sera là clair pour envoyer de l'essence. Donc, cela signifie que la route maritime disant à l'autre uart suis prêt à recevoir des données. D' accord. Donc juste contrôle, pas si communément utilisé Gay. Ok, dans ce cours, bien sûr, nous ne connecterons que les arcs aux tiques. C' est la communication la plus communiste pour aujourd'hui. Ici, nous pouvons voir une connexion régulière entre deux ordinateurs k. Maintenant, c'est là que nous arrivons à la couche physique. La couche physique sera sur la nôtre à 32. Et cela signifie juste que votre communication est correcte, la tension est transmise à différents types de tensions, ok ? Donc la communication Uart elle-même n'est qu'un protocole pour la communication, d'accord ? Comment le cadre défini, comment les fréquences et les limites et tout. Il n'inclut pas ce que les tensions que nous allons utiliser un, comment la, comment les données vont changer en fonction de notre carte fermée où même été sur. Ok, donc si vous voulez jusqu'à 85 mètres de câble par exemple, vous pouvez utiliser le RS-232, ok ? Donc, il n'est pas si couramment utilisé pour se connecter pointe trop bon marché diriger lien URL direct, ok ? La plupart du temps, il va passer par le tampon de ligne RS232 ou à un port COM Gay. D' accord. Ce sont l'air commun au sujet des tarifs. D' accord. Les taux standard de bauds vont se situer entre ces chiffres. D' accord ? Donc c'est juste, vous pouvez voir qu'il saute. Si vous êtes familier avec ces chiffres, vous pouvez le voir dans votre PC, dans vos comports gay. Lorsque vous configurez la vitesse en bauds, parfois k. Vous pouvez voir cela si vous avez utilisé Arduino, ok, Par exemple, vous pouvez voir ces chiffres. Je pense que celui-ci est le plus utilisé dans Arduino et ces 12, ok ? Ok, et c'est pour cette conférence, et je verrai sur la prochaine conférence, et c'est pour l'instant. Et merci. 3. UART et sa couche physique: Salut, bienvenue à la prochaine conférence. Dans cette conférence, nous allons parler de la couche physique uart. Ok, donc S pour l'UR, le York est en fait une norme de protocole pour un protocole pour le protocole de communication. Et à propos de la couche physique. n'y a pas de telle chose. Couche physique ou pour votre, ok , en fait, cela signifie que le, votre protocole lui-même n'inclut pas les tensions qui doivent être envoyées, ok ? Ça veut dire qu'on a besoin de tampons, ok ? Tout comme je t'ai montré ici, OK, on a besoin de tampons. En fait, connectez-vous entre deux mètres. Bien sûr, nous pouvons connecter pointe à pointe. Ce sera TTL ou cmos, mais nous voulons utiliser à 32. Et en ce qui concerne le protocole ici, d'accord. Donc, afin de connecter l'URL à un neuf BC peigne canine été com, gay , par exemple, nous devons utiliser les flèches à 32 tampon pour convertir les tensions à la signalisation polaire. D'accord ? Cela signifie juste que si vous voulez vous connecter entre deux morceaux et que vous avez une planche, ok, que vous avez créée. Vous aurez besoin d'utiliser quelque chose comme cette affaire, tampon comme celui-ci, d'accord ? Et il suffit de connecter le TX et RX de l'UR que nous allons créer directement dans le connecteur EPC D19, qui est en fait ce connecteur. Et ici, vous pouvez voir que ce seront les signaux. On va juste utiliser le RX dy et DX DY étant 2 et 3. Et bien sûr, nous allons utiliser le sol, d'accord, et c'est ainsi que nous allons le connecter à la broche 32 et au sol. D' accord ? Donc, si vous allez créer votre propre conseil, si vous êtes développeur ennuyé. D' accord ? C' est ce que vous devriez utiliser. Bien sûr, il y a beaucoup d'autres composants sur le marché qui convertissent entre la communication série de l'uart, deux types différents de communications, comme RS 485, ok, quatre à deux. Et vous pouvez utiliser ce que vous voulez porte. Et en fait c'est tout pour cette conférence. Et je te verrai dans la prochaine conférence et la réflexion. 4. Comment le paquet de données UART: Salut, bienvenue à la prochaine conférence. Dans cette conférence, nous allons parler du paquet de cour. Ok, donc pour New York Beckett, on peut voir qu'un paquet est construit à partir d'un temps de départ, ok ? Cinq à neuf bits de données, 0 à un bit de partie et un à deux bits d'arrêt. Ce sera notre jeu de dataframe. plus couramment utilisés sont sept battements pour les nombres ascii en huit bits, qui est un octet. Petit truc à propos des numéros d'ascii, d'accord ? Il numéros ascii sont nos numéros de clavier. Ok, donc notre clavier, dans notre PC étant représenté par sept bits de données, ok ? Donc, chaque touche H que vous appuyez, par exemple, 0 sera une charité en hexadécimal, ok, ce sera 7 bits de données. Maintenant, parlons du paquet lui-même, d'accord ? Ok, donc les battements de stock ont donné pour le paquet qui reconnaît réellement le début d'un paquet dans le récepteur sera 0. D' accord ? Donc, chaque fois que le récepteur reconnaît un 0, cela signifie que le paquet, le paquet arrive juste après. D'accord ? Bien sûr, le récepteur et l'émetteur doivent savoir, doivent être au même nom de données, d'accord ? Il doit donc savoir combien de bits nous avons à l'intérieur des données. Ok, donc il ne savait pas combien, trop simple. Et puis il nous savons quand la fête vient, s'il y a une parodie ou non, combien de bits d'arrêt nous avons. Ok, donc tout ça doit être exactement le même dans le récepteur et l'émetteur. D' accord ? Donc le débat sombre, comme nous l'avons dit, cinq à neuf bits de données et les bits de parité, 0 ou un, un bits de parité. Disons maintenant que nous avons un peu de parité. Parlons des bits de parité. Qu' est-ce que ça veut dire, le bit de parité, d'accord ? Nous avons donc deux types de bits de parité. Nous avons des bits de parité et un peu de parité impair. Et cela signifie juste que dans un bit de parité égale que le nombre de 1 doit être égal. D' accord ? Maintenant, quand on dit le nombre d'un, cela signifie que le dataframe et la parité doivent être égales, d'accord, donc le nombre d'entre eux dans le dataframe et la fête elle-même doit être même gay quand on parle d'une parité étrange, Bien sûr, le nombre de 1 doit être impair. Et j'ai écrit, tu entends ça ? Si vous voulez définir votre bit de parité lorsque vous envoyez un cadre, par exemple, vous voulez stocker toutes les perles et, et ce sera votre partie mais battement que vous allez envoyer. Si vous calculez le XOR de tous les bits, vous verrez que vous venez de terminer, comme il se doit pour même la parité. Et pour un peu de parité impair, nous devons stocker tous les temps et inverser. Ok, ce qu'on a. Donc ce n'est pas x4, payez tous les bits. Ce sera la valeur des bits de parité. Maintenant, parlons, donnons un exemple. Ok, donc nous comprendrons plus. Donc, l'exemple de parité, quand on dit le nombre d'un, cela signifie, d'accord, à tous les bits, y compris les données dans le parti comme je vous l'ai dit. Donc, par exemple, nous avons ces données, ok ? Donc, ce sera 36 en hex, 0, 0, 1, 1, 0, 1, 0, 1, 1, 0, ok ? C' est 36. Maintenant, même pour la parité, le nombre d'entre eux ici est déjà égal, ok ? On en a quatre, ok ? Donc c'est déjà égal. Donc, le bit de parité sera 0 parce que nous voulons une parité égale, vous un nombre pair de ceux. Maintenant, pour une parité impair, le nombre d'un est pair et nous voulons une partie impair, un nombre impair de cas 1s. Donc le bit de parité sera aussi un, ok ? Et de cette façon, on aura un nombre impair de gay dans le cadre. Et maintenant, la valeur du bit de parité est toujours SAW ou non x4 des bits de données k. Ainsi, par exemple, même nombre de 1s nous donnera 0. D' accord ? Alors revenons ici. Donc, si vous explorez ces chiffres, nous en avons un nombre pair. Cela nous donnera 0. Chaque fois que vous allez à X4 0 avec 0, vous obtiendrez un autre 0. Donc, quand nous résolvons un nombre pair de fonds obtiendra 0. D'accord ? Donc, pour la parité égale, la parité peut être juste XOR des battements et XOR de nombre impair de 1 nous donnera 1. D' accord ? Jusqu' à présent, notre exemple de pauvreté égale va juste voir tous les bits et obtenir 0, et ce sera notre parti, ok, pour la parité étrange, sera AX4 les battements et obtenir 0. Mais nous devons inverser la fête pour qu'elle soit une. Par conséquent, il sera juste vu, ok ? Et la réponse de la valeur de la pauvreté, qui est en fait une, ok ? Donc, la parité, les bits de parité lui-même k. Vous devez savoir qu'il ne peut prendre qu' un seul gain de bit de flotte parce que nous explorons les données. Maintenant, nous pouvons le comprendre. Seulement si un bit est retourné, k il peut détecter. Maintenant pense à ça. Pourquoi ? Pourquoi on a dit qu'un seul morceau retourné ? Parce que nous sommes, par exemple, ici, nous explorons et nous avons un nombre pair de 1 si deux battements ont été retournés, par exemple, ces deux, par exemple, OK ? Nous dirons que le parti est la même parité, donc nous ne pouvons pas le reconnaître, d'accord ? Maintenant, si seulement un ici vient de retourner, nous allons obtenir de la XOR ici 0. Maintenant, cela signifie juste que le récepteur, quand le récepteur reçoit les données, il doit stocker tous les bits, ok ? Et pour le comparer à la fête, bien sûr, si c'est un événement, il sera XSOAR, si c'est étrange, il exercera un inverti et ensuite comparer. D'accord ? Donc, ce que nous allons faire avec les données, nous allons stocker tous les bits, ok ? Et en fait, il suffit de vérifier avec la fête. Maintenant, c'est à ça que ressemble la transmission elle-même. Ok, c'est une transmission sur un fil, ok ? Donc à chaque fois que c'est inactif, on n'a rien à transmettre. La ligne sera un, ok, ou haut, ou cinq volts ou n'importe quelle zone physique va utiliser. Et quand on a 0, c'est le début, ok ? Juste après ça, on a le premier bit jusqu'au dernier bit, ça va passer de cinq à neuf, ok. Et en commençant par ALS bit premier. Et bien sûr, c'est ce que je voulais dire quand je vous ai dit avant que nous nous en sortions bien, que nous avons le temps. Ok, donc c'est le moment des bits, ok ? C' est un divisé par le taux de bauds, ok ? Par exemple, 9 600. Et ici, on n'a pas de parité, d'accord ? Si nous avions la priorité, ce sera comme un autre battement ici. Et après ça, nous avons un arrêt. Et arrêtez. Ça veut juste dire qu'on va en faire un, ok. Retour à l'un ou l'autre. Ok, donc dans ce cours, on va faire ça. Vous transmettez sans pauvreté quand un seul, avec un arrêt, un premier bits et huit bits de données. Et bien sûr, nous allons passer à travers, ce sera ce code, ok ? Ok, que j'ai écrit. On va passer par ce code. C' est l'émetteur, le récepteur. D' accord ? Et en ce qui concerne un autre code, ok, avec la parité, avec des trucs plus génériques, ok, ici vous pouvez voir que je n'ai que des constantes ici. Et ici, j'ai un autre guide de code que j'ai écrit. J' ai l'option du générique, d'accord ? Maintenant, générique signifie que vous pouvez, vous pouvez choisir, vous pouvez choisir votre type de parti, pair ou impair. Si vous avez ou non la parité du tout. Nombre de sujets, K, 012, ok. Cela peut être, vous pouvez changer de cinq à 15, bien que ce soit cinq à neuf, ok ? Et le nombre d'octets. Vous pouvez envoyer des paquets après des paquets de données, d'accord ? Ainsi, vous pouvez envoyer, vous pouvez transmettre beaucoup, beaucoup, beaucoup de données une après une. D' accord ? Ok, et ce code peut être trouvé dans la dernière conférence. Je vais l'ajouter. Tu peux avoir tous les oses. Vous pouvez y arriver. Et nous allons passer par ce code simple, d'accord, lors de la prochaine conférence à venir. Et c'est tout pour l'instant, gay. Et je vous verrai dans la prochaine conférence et ensuite Q 5. Échantillonnage du paquet de données UART: Salut, bienvenue à la prochaine conférence. Dans cette conférence, nous allons parler de la façon de simplifier la transmission uart. D' abord, tout ce que je vais dire, c'est d'assembler la neurotransmission et chaque communication. Transmission. D' accord. Le métal est le même. Maintenant, si vous avez regardé mon cours VHDL, je parle de la façon de simples données qui viennent du monde extérieur. D' accord ? Si ce n'est pas le cas, je serai heureux que vous rejoigniez mon cours VHDL. Ok, maintenant, commençons et réfléchissons à ça. Tout d'abord, nous avons une transmission entre deux homos de York ou à FPGA pour, ou d'un mon FPGA vers un PC, ou de mon FPGA vers une autre URL vers K. Donc nous pouvons penser est que nous avons le gars Uart juste ici. Ce seront les tiques vont dans le RX et vice versa. D' accord. Ce serait comme, Désolé, soumettre le RX et soumis prend, ouais. Maintenant, quand nous envoyons des données à l'Uart, par exemple, nous devons les échantillonner avec une horloge, ok ? Donc c'est, par exemple, c'est l'uart et nous avons ici une horloge rapide, ok ? Dans notre projet, je vais utiliser 25 mégahertz, ok ? Parce que notre FPGA peut utiliser une horloge vraiment rapide, et nous avons besoin d'une horloge plus rapide. Puis la transmission elle-même. La transmission elle-même, comme nous l'avons dit, il a un taux de bauds vraiment faible, autour de centaines d'hertz à 100 milliers de cellules capillaires. D' accord ? Donc, le taux limite est vraiment faible. D' accord ? Ceci, votre transmission est vraiment faible à propos des droits, gay. C' est, c'est, c'est un protocole de communication lente rapide. Maintenant, pour simple dans son k droit, nous devons penser au monde extérieur, ok, qu'est-il arrivé au signal extérieur ? D' accord ? Maintenant, le signal peut être quelque chose comme ça. Comme vous y pensez, habituellement dira que c'est essentiellement juste regarder quelque chose comme ça, ok, monter, descendre. Mais en réalité, ce n'est pas le cas, d'accord ? Donc c'est faux de penser comme ce K, votre signal ressemble toujours à quelque chose comme ce cas. Il y a donc un temps qui monte, d'accord ? La plupart du temps, le temps de chute sera plus rapide. D' accord. Et encore une fois, deux se pose temps et un temps de chute. Et le fait est que je, si je vais goûter celui-là est gay par exemple, propos d'un vrai que tu es gay. Donc, chaque jour, vous allez être inactif et ensuite quelque part au moment où il va tomber à 0, k. Donc ce serait notre départ, ok, bit de départ. Et puis ça va monter. Par exemple, c'est le cas de données peut monter, il va rester faible. D'accord ? Et disons un peu togolais, d'accord ? Donc, je peux dire que ce n'est pas un 012 et ainsi de suite. Jusqu' à ce que nous arrivions à l'arrêt un peu, ce sera l'arrêt. Ce sera le début. Et ce qui se passe ici, c'est que je l'échantillonne K. Donc à chaque fois que j'échantillonne les données, accord, avec cette horloge rapide. Et je veux voir quand je vais avoir ce premier départ, d'accord ? Maintenant, ce que je veux faire dans un, dans un couple d'URL sur le marché. D' accord ? Nous allons travailler dans un très facile à comprendre. Tu l'es, d'accord. Et je vous expliquerai pas à pas pour reconnaître ce 0. Par exemple, si nous avons une horloge rapide, je vais d'abord beaucoup, plusieurs fois k. Maintenant, par exemple, si je, si j'ai échantillonné ici, quelque part par ici, je ne sais pas si c'est 0 ou un. D' accord ? Et ici, ce ne sera que des zéros, d'accord ? Chaque fois que je vais échantillonner le FPGA, nous le reconnaissons comme un 0. Et ici, je ne sais pas, c'est dans cette zone. Je ne sais pas si ça va être 0 ou 1, ok ? Maintenant, une autre chose qui peut arriver aussi est que le signal ira comme ça. D' accord ? Ou plus comme ça, d'accord ? Et la plupart du temps, c'est arrivé avec le bord montant, vous verrez que E peut voir quelque chose comme ça. Ok, donc si vous voulez regarder la portée, et que ça arrive quand vous recevez, d'accord. Données sur la ligne de transmission. D' accord ? Ceci, c'est quelque chose avec une ligne de transmission. Donc encore une fois, si vous voulez échantillonner ici, cela peut vraiment détruire tout ce que nous faisons. Tout d'abord, nous voulons le faire, nous savons que, nous connaissons le taux de bauds de ce type. Donc la première chose que vous pouvez faire, si vous échantillonnez le premier 0, vous savez que si vous comptez, ok. Au revoir, d'accord, au revoir la limite de vous pouvez dire combien vous devez compter. Vous savez, nous sommes là où goûter ici. D' accord. Donc vous savez comment goûter ici si vous avez un compteur, d'accord ? Disons que je reconnais le premier 0 ici, d'accord ? Donc, je peux mettre un compteur et ensuite je vais simplement écrire ici. Et puis je vais à nouveau avoir le même compteur et simple ici. D' accord ? C' est pourquoi les deux Etats-Unis ont besoin de connaître le même lien, n'est-ce pas ? D' accord ? Donc ils sauront l'heure de chaque battement, ok ? Pour qu'ils sachent le temps libre à chaque instant. Une méthode différente pour cela. Et il ne s'agit pas d'une minuterie. C' est à propos du moment où démarrer la minuterie. Si on veut se débarrasser de ces choses ici, d'accord ? Si on ne veut pas, on ne veut pas commencer ici, d'accord ? Ce sera mauvais pour nous. Donc ici, nous pouvons reconnaître 0. Et si nous commençons ici, le compteur, nous continuerons et simple blanc ici. Donc, nous pouvons simplement 0 au lieu d'un simple. D' accord ? Donc ce que nous voulons faire, et ce sera seulement dans mon pro uart k. Ce que je vais faire, et c'est un truc que nous faisons à chaque fois. D' accord ? On peut avoir un registre. D'accord ? Je vais utiliser le registre ou 4 bits. Aussi longtemps que ce registre B, k, meilleure est votre reconnaissance des données. Mais vous devez aussi vous rappeler que si l'horloge n'est pas si rapide, vous avez besoin, vous devez mettre plus petit registre, ok ? Parce que si vous n'assemblez que deux fois, vous pouvez mettre le registre 4 bits. Ce sera, il sera simple ici, ici. Et puis nous faisons simple ces deux-là. Ok, donc si nous avons une horloge très rapide que l'échantillonnage plusieurs fois mai, disons 100 fois ici. Donc on est doués avec les quatre bits. Maintenant, qu'est-ce que ça fait ? Est-ce qu'on va juste dire que si ce vecteur doit être tous les zéros ou tous, d'accord ? Nous allons définir, nous allons, nous pouvons dire que le rythme est 0 ou un. Par exemple, que s'est-il passé ici ? Si on a ça, si on devait utiliser ça, d'accord ? Donc, si nous allons utiliser ça, et que nous sommes là, ok, c'est un bel exemple ici. Donc nous le sommes, si nous devons avoir quatre fois que nous sommes en train d'assembler. Et on veut en faire goûter celui-là, d'accord ? Donc, nous aurons, par exemple, comme un seul. Et puis il reconnaîtra 0, 1, 1, 1, 1, 0, 1, 1. Et je ne peux pas dire que je suis sur un seul logo. D' accord. Je ne peux pas dire que j'ai eu celui que je voulais. D' accord. Tant que ce registre sera correct, nous aurons plus d'échantillons. Si nous avons plus d'échantillons, nous pouvons reconnaître plus de cet espace que nous avons ici. Un problème, d'accord ? Donc nous voulons que ce soit un long Guan Gei, mais nous ne voulons pas que ce soit trop long, ok ? Et aussi tu dois penser qu' on parle de FPGA, d'accord ? Donc, dans les FPGA, si vous faites un très gros registre, vous allez juste prendre beaucoup de charges et vous ne voulez pas, vous ne voulez pas que votre uart devienne, vous savez, un énorme ok. Design parce que vous êtes à côté d'être un léger et bon marché. D' accord. Quand nous parlons l'espace et du temps que vous mettez dans votre, vous concevez. Ok. Et c'est en fait pour cette conférence. Et je te verrai à la prochaine conférence. 6. Notre conception de structures UART: Salut, bienvenue à la prochaine conférence. Dans cette conférence, je vais parler de notre conception structurée uart. D' accord, donc tout d'abord, chaque uart se compose d'un récepteur et d'un émetteur. Et ici, nous avons notre réinitialisation et l'horloge. D' accord ? Donc, chaque fois que vous créez un composant ou quoi que ce soit d'autre, il aurait été une réinitialisation et une horloge. D' accord. Et j'appelle cet uart un émetteur-récepteur, qui est émetteur, récepteur. D' accord ? Donc nous avons les deux choses dans notre cour, ok, nous voulons qu'il envoie des données et reçoive des données. Maintenant parce que je vous ai dit que nous allons faire un design très facile, GA4GH vous l'êtes, ok juste pour que vous compreniez la méthode. Plus tard, vous pourrez changer notre design à tout ce dont vous avez besoin. Vous pouvez ajouter plus d'état dans les machines d'état, par exemple, si vous voulez échantillonner la priorité aussi, ok ? Ou vous pouvez juste aller à la dernière conférence et trouver mon autre design, ok, qui est un design plus compliqué pour un an ou deux. Et vous aurez là tout le générique dit que je vous l'ai dit dans les conférences précédentes. Qu' est-ce qu'on peut voir ici dans l'émetteur-récepteur ? Nous allons commencer par l'émetteur, ok, lors des prochaines conférences, nous parlerons d'abord sur l'émetteur et plus tard sur le récepteur. Donc, comme vous pouvez le voir juste ici depuis l'émetteur-récepteur à côté de l'horloge de réinitialisation, ok, juste ici dans cet émetteur, nous avons la saisie des données, ok ? Donc toutes les données ont été entrées simultanément, ok ? Donc ça va être une entrée parallèle avec huit bits, ok ? Et nous avons la bonne entrée de données, ce qui permet réellement le bon. Ok, donc chaque fois que je le suis, je vais juste définir les données et ensuite affirmer les bonnes données dans. D' accord ? Et nous aurons, vous savez, la transmission sur ces sorties en série, d'accord ? Et bien sûr, nous prendrons les œufs. Donc ceux-ci à l'état prêt est juste un beau à avoir vu. Ok, je ne vais pas l'utiliser sur le monde extérieur. Et vous le verrez dans les simulations. D' accord ? Maintenant à propos de la r x aura une entrée série Arctic, ok ? Et ils ont lu la sortie, ok, donc à propos de la 3D là-bas, continuez et je vais supprimer ceci. Ok, donc ici vous pouvez voir tous les signaux, ce qu'ils font réellement. Ok, donc chaque fois qu'on a de nouvelles données, d'accord, celle-ci est les anciennes données dans de nouvelles données, ok, sur le D sorti, ok ? Et vous avez des données parallèles du récepteur, d'accord ? Ils ne sont pas sortis. Nouveau, sera affirmé à 11 horloge, ok ? Et les données sur où la volonté sera affirmée tout leur temps jusqu'à ce que nous allons affirmer la lecture de la sortie. D'accord. Quand nous, quand nous allons affirmer la lecture sur le prochain bord levant, l'extérieurement sera l'affirmation. Maintenant, ça arrive parce que nous ne savions pas si quelqu'un ici était vraiment dans les données. Donc si vous lisez beaucoup d'entre vous devrez réinitialiser la 3D, d'accord ? Sinon, vous n'êtes pas vraiment dans les données. Chaque fois que de nouvelles données arrivent, ces pools vont sauter. Celui-ci restera affirmé jusqu'à ce que vous lisez ces données et l'assermenté, ceci l'extérieur prêt. D' accord ? Donc c'est juste une overkill pour notre récepteur, ok ? Et vous pouvez utiliser ces bits. Ce n'est pas une chose de masse à faire. Vous pouvez simplement regarder le Delta nu, voir quand il y a de nouvelles données et le lire. Maintenant, parce que nous utilisons des FPGA et ce n'est pas un CPU. Ok, donc tu n'y vas pas, tu n'as pas toujours d'autre processus à faire. Alors. Ce n'est pas comme un processeur, d'accord, parce que nous travaillons de manière parallèle. Mais parfois même dans FPGA, le FPGA, quelque chose derrière sur le backend n'est pas encore prêt, ok, Donc, vous avez tous les signaux. Tu peux les utiliser, d'accord ? Maintenant, je veux aller et commencer par l'émetteur. D' accord ? Donc, l'émetteur sera beaucoup plus facile à comprendre. D' accord ? Donc vous verrez à l'intérieur de ce document nous avons les blocs d'émetteur, gay, et maintenant tout est connecté. Ok, c'est ce que vous verrez à l'intérieur du code. Nous allons passer par cela lors des prochaines conférences. Et là, vous aurez en fait la machine d'état de l'émetteur, d'accord ? Ok, et plus de ces constantes, ok, donc nous allons utiliser ces constantes, ok, ça va être 2500 hertz. D'accord ? Ces taux de bauds, ok. 115200. Et vous aurez ce compte T1. D' accord ? Je vous expliquerai ça dans une seconde. D' accord. Allons à la vapeur avant même d'aller à côté du récepteur et d'expliquer à ce sujet. Maintenant, ici, vous pouvez voir que nous avons les données dans. Nous avons toutes les entrées et sorties que nous avons vues ici sur l'émetteur. D' accord ? Donc, nous avons l'horloge et les risques bien sûr, qui viennent tous les deux, chaque composant fait et écrire des données et nous avons les données dans et écrire des données dans. Ok, donc ici, on va, vous savez, affirmer les huit battements de l'entrée de données. Et nous avons un registre des quarts de travail. Et le registre des quarts de travail déplaçant les données de la DSL à l'ESM. D' accord ? Donc, si vous voulez changer ces petits NDM pour commencer la fin, vous pouvez changer les données dans, dans le code pour être sept et alors vous serez d'accord. Ok, donc n'oublie pas bien sûr, de changer le registre des quarts de travail. Ok, donc ça se déplace dans un sens. Vous voulez commencer à passer à l'autre sens. Ok, donc de cette façon, nous allons activer les bonnes données dans. Et comme vous pouvez le voir, nous avons une porte d'extrémité ici, donc la machine d'état contrôlant réellement la transmission, ok, donc il contrôlera quand nous activons cette fin en définissant activer la charge 1. Et en fait, il nous dira que la transmission est prête. En outre, nous avons tous ces signaux de commande pour contrôler ce flip-flop pour la transmission hors. D' accord ? Une autre chose que nous avons ici, c'est cette minuterie, d'accord ? Maintenant, cette erreur de temps, je dois expliquer vos corps ou donc nous avons, vous vous souvenez que je vous l'ai dit lors des conférences précédentes. Nous avons chaque battement a son propre temps. D' accord ? Donc, ici, vous verrez que T1 compte égal à 217. Maintenant, quel est ce numéro ? Ok, je veux aller sur ce numéro. Expliquez-vous ceci. Donc, comme je l'ai écrit là-bas, on travaille dans un mégahertz de 25 mégahertz. D' accord ? C'est notre horloge, d'accord ? Et à propos de la vitesse de transmission elle-même va être celle-ci, d'accord ? C' est bien sûr avec Hertz, ok ? Donc, le compteur T1 va être égal à l'horloge k divisée par l'inclinaison. Attendez. Ok, qu'est-ce que ça nous donne ? Ok, alors pensons que nous avons notre taux baissé, d'accord ? Par exemple, c'est notre horloge lente, d'accord ? La phase de changement temporel. Ok, donc on n'a pas d'horloge, mais dans tous les Ok. Désolé, dans chaque temps. D' accord. On l'appellera « t baisé ». Chaque fois que ce temps, les données changent, d'accord ? Donc nous n'avons pas cette horloge dans le système réel. Mais ici, nous verrons cette transmission. Donc, par exemple, nous sommes au ralenti et ensuite nous avons le bit de départ, ok ? Et puis disons que je vais à 11 K, par exemple, 0. D' accord ? Désolé. Et ce sera comme ça. Donc c'est le moment, d'accord ? C' est l'heure de la journée. C'est un battement. C' est le point de départ. Il s'agit de données 0 et que U1 et ainsi de suite. D' accord ? C' est l'article K et soit je t'ai dit que ça allait être un, ok ? Maintenant, si on échantillonne avec cette cape, d'accord ? Maintenant, ce bloc va être très rapide. A, disons comme ça. Ça va être comme ça, très rapide, très rapide. Ok, même plus que ça. Ok, donc nous sommes en train de rassembler beaucoup de temps K. Maintenant, disons ça ici, dans cet endroit, parce que je t'ai dit que les données ne ressemblaient pas vraiment à ça. D' accord ? Ainsi, les données peuvent être comme ceci, par exemple. D' accord ? Le Sud, les données vont regarder dans le mot réel, ok ? Disons que d'accord, que, disons ça juste ici. Ok, effacons celui-là. D' accord. Disons ça. En ce moment, Ok, j'ai trouvé mon battement de départ a trouvé mon 0. D' accord ? Je veux attendre. D' accord. Je veux peser ce temps, d'accord ? Par exemple, je veux pondérer ce temps parce que je peux le dire dans ce laps de temps. D' accord. Je l'appellerai T 1, d'accord. Je serai exactement au bon endroit, d'accord ? Pour simple le D, d'accord ? Et si je vais attendre à nouveau, T1 sera exactement au bon endroit pour le simple D1, ok ? Juste parce que je reconnais le 0 ici. Maintenant c'est le capot du Met de ce code, d'accord ? Et comme je vous l'ai dit dans le code de la prochaine conférence, à la dernière conférence, désolé. Je vais y avoir non seulement un simple, je vais échantillonner 4 fois k. Donc chaque fois que je suis simple en quatre fois, je vais attendre et puis je vais simple à nouveau quatre fois, ok ? Donc je ne peux pas vraiment compter sur cet écart entre les battements. Donc là, je suis juste, je compte juste sur cet écart entre les bits. Maintenant, cela va nous donner 217. C' est dire que je vais être simple ici à un 117 fois, d'accord ? Et j'aurai une horloge qui compte deux à 117 et quand j'arriverai à 217, ok, je sais que je suis arrivé à cet endroit. D' accord ? Donc, c'est la méthode de division ici. Bien sûr, si vous voulez, Evan horloge différente ou un taux de bauds différent, ce nombre sera différent. D' accord ? Maintenant, revenons ici. Donc c'est à propos de cette minuterie, accord, donc c'est simple. A chaque fois que les battements sont, nous l'avons montré ici dans la machine d'état en une seconde. D' accord ? Ok, et ici, on a le décompte, accord, que le décompte est fixé à sept. Il suffit de déplacer les données nous dit combien de données il reste. Et c'est à sept, mais nous avons huit bits K. N'oubliez pas. Maintenant, si vous avez besoin des neuf battements, bien sûr, vous devez mettre vos huit, d'accord ? Donc c'est juste le nombre de bits que vous voulez déplacer un moins1, ok ? Ce serait la valeur k de cette valeur dans le code. Ok, alors parlons de la machine d'état de l'émetteur. D' accord ? Donc ici, on commence par le ralenti, ok ? Et juste ici sur le côté droit, vous verrez que c'est le déclencheur et en dessous, c'est le réel, ok, donc en cas d'inactivité, écrire des données d'entrée. Quand on veut écrire des données, on doit les mettre en un, d'accord ? Chaque fois qu'il est 0, on reste ici, d'accord ? Parce que 0 et qu'il est inversé, ça va être un. Et quand y dot.me que nous voulons écrire des données, d'accord ? Ici, nous envoyons le bit de départ, d'accord ? Après avoir envoyé le bit de départ, on doit attendre T1, ok, comme je vous l'ai dit, on attend un écart de temps, ok ? Et après cela, quand nous arriverons à T1, nous allons effacer cette minuterie T1 et revenir en arrière et envoyer les données. Ok, donc juste ici, ce cercle, juste envoyer les données, attendre un écart de temps, d'accord, attendre T1 et déplacer les données. Encore une fois, envoyer les données et changer, changer de compte, désolé, nous déplaçons la réduction de compte, ok, donc nous comptons le nombre de bits que nous envoyons réellement. D' accord ? Et ça se poursuivra jusqu'à ce qu'on arrive ici le 7. Et c'est, doit arriver à sept parce que quand on a eu l'état, on envoie déjà une donnée, donc c'est un plus sept, c'est huit bits, ok, comme je vous l'ai dit ici, c'est sept, mais ça envoie huit bits. Et ici, à la fin, nous mettons fin au comte. D' accord ? Eoc, c'est la fin du compte. Et nous envoyons le bit d'arrêt en attendant T1, ok, donc nous aurons une largeur de bit d'arrêt avec un blé T01, ok. Et puis revenez à ralenti et réinitialisez toutes les choses que nous avons besoin de réinitialiser. Ok, c'est l'émetteur. Maintenant, bien sûr, c'est le, c'est le calcul du 217. Ok, maintenant, parlons du récepteur. Ok, donc le récepteur, nous allons recevoir les données du monde extérieur. Nous ne savons pas d'où il vient, donc nous voulons synchroniser les données. Ok. Encore une fois. C' est un synchroniseur vraiment simple. Ok, dans notre, dans, dans le code que je vous ai dit que c'est plus pour les experts. Je vais synchroniser quatre battements. Donc ça va être quatre tongs D. Gay et moi allons vérifier ce registre qui est égal à tous les zéros ou ceux. Ok, donc c'est une meilleure synchronisation. Maintenant, vous pouvez également l'ajouter à ce code ici. D' accord ? Ce n'est pas un problème de synchroniser avec plus de tongs D, d'accord ? Maintenant, ici, nous avons la machine d'Etat. Et tout est pareil, d'accord ? Comme l'émetteur. Ok, donc on reçoit les données ici dans le registre des quarts de travail, ok ? Donc à chaque fois qu'on reçoit un peu, on va le sauver ici, d'accord ? Et quand on aura fini, on va tout mettre à l'extérieur. Guy, les huit bits pour les données. Et bien sûr, nous avons ici l'activation de changement. Nous allons changer chaque fois que T1 va nous dire de changer. Nous verrons cela plus tard. Et Y2, on a une autre équipe qui a appelé T 2, ok ? Et je vais vous montrer ça dans la machine d'Etat et nous en parlerons. D' accord ? On continue et on regarde la machine d'état. Cela rend tout plus clair. D' accord ? Ok, donc le T2 a K. ça va rendre la synchronisation plus fine, ok, si je peux le dire. Maintenant, regarde ça. Nous allons être inactifs lors de la réception d'un bit de départ. Ok, on va attendre t2, ok. On va attendre le temps de T2. Je vais te dire exactement ce que c'est T2 dans une seconde, d'accord ? Ensuite, nous avons la vérification de départ, qui va être là où nous vérifions que nous sommes toujours au début. D' accord ? On a toujours 0, ok, donc on a vérifié deux fois, une ici, une ici. On a aussi pondéré le temps T2, ok ? Et puis nous allons pondérer les données. D' accord ? Donc en vérifiant ici, il va juste le poids des données ici, désolé, le poids des données ici attend t1. Qu' est-ce qui s'est passé ici ? D' accord ? Donc je vous ai dit il y a une seconde que si j'ai ces données qui entrent, désolé, ça arrive comme ça, ok, c'est le début, ok , ok, par exemple, disons que ce sont mes données d'une manière ou d'une autre et que ça va vouloir, ok, donc c'est vrai ici, c'est le point de départ. Psaume va vérifier si cela va être 0 et puis attend T2, T2. C' est la valeur de T 2, d'accord ? La valeur de t2 est la moitié de T1, ok ? Maintenant, qu'est-ce que ça veut dire ? Ça veut juste dire que je vais attendre. Ok, au lieu d'attendre, ok, donc ça va être T1, par exemple. En fait, cela va être t1 est le temps d'un battement. D' accord ? Alors au lieu d'attendre d'ici à ici, ok ? Je veux être plus dans le milieu, donc je vais attendre la moitié du rythme quelque part juste ici. Ok, donc c'est comme la moitié du rythme. Ça va être deux. Et à partir d'ici, commencez à sauter d1 à chaque fois. D' accord ? Donc je vais goûter ici, simple ici, Symbian ici. Maintenant, les données dans la vraie vie ressemblent à ceci, c'est, vous ne savez pas vraiment où est le 0, où est D1 ? D' accord ? Je peux te dire si je pouvais mettre un marqueur sur T1. Donc ça va être T1. Par exemple. Ça va être à nouveau, l'un. D' accord ? Donc, si j'attends ici, la moitié des battements, d'accord, je vole les morceaux de départ. Désolé, la partie de départ. Et puis je vais attendre T1. D'accord ? Donc il y a quelque chose que vous devez savoir sur l'échantillonnage, ok. Et à propos de certaines organisations et d'autres choses. Je parle de la scène, mon VHDL apprend du cours de début, ok ? Disons que nous avons un signal du monde extérieur. D'accord ? Dans l'électronique, il y a quelque chose qui s'appelle la cale. Désolé, la, vous verrez ceux-ci dans la fiche technique. Le T tient dans la configuration, ok, ok, ok. Donc ce qu'on veut faire, d'accord, d'un côté, ce sera le T. Hall. D'accord. Ça va être les T sont dans la configuration. D' accord. Et puis vous aurez le T. Hall. Maintenant, la plupart du temps que la configuration, les feuilles de données de tous les composants inconnus vous diront que vous devez attendre beaucoup de temps sur la configuration de tee. Et puis que le tout n'a pas vraiment d'importance. Ça va être dans le coin, même autour de 0. D' accord ? Donc tu dois juste perdre quelque part ici, d'accord ? Maintenant, c'est juste dû au fait que d'accord, les signaux deviennent fous au début, ok ? Ils peuvent être comme ça. D' accord ? La plupart du temps, ils ressemblent à ça. Et le vent va changer, ok. La chute va être très lisse et ressemble à ceci. Ok, désolé, plus, plus pareille. D' accord ? Donc ce qui suit va être très rapide, ok ? Mais la montée du temps va être folle. Donc, vous avez des problèmes simples ici. Vous voudrez toujours goûter ici, d'accord ? C' est comme une zone sûre à simple. D' accord ? Donc ici, si nous reconnaissons le début par ici, et ensuite nous pondéons T2, T2 gay par exemple. On va être quelque part avant la fin du rythme, d'accord ? Parce que ce que nous avons échantillonné K quelque part ici. Et puis nous pondéons T2 temps k, C'est la moitié de T1, T2. Et puis on va goûter ici. Donc, nous sommes comme dans ces zones de sécurité. Maintenant pourquoi je ne le fais pas, je pense que cette désynchronisation a est moins meilleure. D' accord. Alors les experts d'Osea, d'accord, quand vous comptez avec le registre à cause de ça, ok. Cela ne prend pas en compte dans ce design, ok ? Maintenant, si vous êtes un bon concepteur de conseil ou vous savez, vous voulez avoir ce problème, d'accord ? Mais par exemple, si vous avez ce problème, ok, et vous avez échantillonné, ok, le vôtre, Disons que vous devez simples ces zéros, par exemple, ou quoi que ce soit d'autre. Disons que vous avez un simple Dwight ici, d'accord ? Disons que vous avez simple votre, ok, ça va être un. Donc j'ai échantillonné ici, je dis, oh, super, j'en ai un, mais vous êtes là, vous venez de commencer. Ok, juste, c'était juste un delta qui sautait ici. Donc d'ici à là, vous aurez T2 et puis vous n'êtes pas tellement dans la zone de sécurité, ok, Donc c'est moins mieux, mais c'est faire le travail. D' accord. Donc nous n'avons aucun problème avec ça. D'accord ? Donc juste ici après avoir vérifié le début, ok, on attend les données ici, ça reçoit les données. D' accord ? Nous recevons les données à chaque fois ici. Gay, et bien sûr, un changement dans elle. D' accord. Donc vous pouvez le voir ici. Nous recevons juste les données et le quart de travail activé, juste en déplaçant les données, ok. Quand on finira le comptage, des données, on va s'arrêter. D' accord, attendre un peu d'arrêt. Maintenant, si vous voulez un peu de parité, c'est là que vous devez mettre l'état, ok ? Juste entre attendre un chemin d'arrêt pour aller, vous devez attendre un peu de parité. Et avant de le faire, avant même de sauter ici, vous aurez à chaque fois ici deux XOR tous les bits et ensuite le comparer. D' accord ? Donc, ici, on va directement à l'arrêt, ok, on n'a pas un peu de pauvreté. Ok, donc on s'arrête et on vérifie. Si le bit stop est valide. Je vais tout le chemin dehors. Si ce n'est pas le cas, je casse. D' accord. Et c'est la machine d'état du récepteur. Vous le verrez dans mon code. On va passer par mon code d'accord, aux prochaines conférences. D' accord ? Et c'est pour l'instant. Ok, je te verrai à la prochaine conférence et je te remercie. 7. Transmitter UART: Salut, bienvenue à la prochaine conférence. Dans cette conférence, nous allons parler de l'émetteur. D' abord, j' ai téléchargé ce code, allez à cette conférence. Et comme je vous l'ai dit, si vous voulez le code professionnel, comme je l'ai dit dans une conférence précédente, allez à la dernière conférence. D' accord ? Vous pouvez voir, vous pouvez voir là-dedans, ok, vous pouvez aller vous abonner et obtenir le code complet du code professionnel. D' accord ? Donc on va parler de ce code facile, d'accord ? Donc ça peut être plus facile pour toi de comprendre la méthode, d'accord ? Ok, donc nous allons réellement créer ce design, ok, donc j'ai, j'ai créé ce design ici à l'intérieur de ce code. Et comme vous pouvez le voir ici dans l'entité, nous avons toutes les entrées et les sorties comme ici, ok ? C' est l'e1, qui est huit bits, ok ? Si vous voulez qu'il soit plus grand ou plus petit, vous pouvez changer celui-ci. Comme je vous l'ai dit, nous en avons déjà parlé. Vous le verrez ici dans le code. D' accord ? Ici, vous pouvez voir le composant ici. Vous êtes à notre x. donc c'est le récepteur. D' accord ? Je l'ai utilisé pour simuler la porte de l'émetteur. Ignorez ça, mec, vous pouvez l'ignorer. moment, dans cette conférence. Et quand on simulera l'émetteur, on utilisera le récepteur pour simuler l'émetteur, ok ? Ok, donc la prochaine chose que vous allez voir dans le code est un distinct, on en a déjà parlé, cette horloge des heures. Cette horloge doit réellement venir du monde extérieur. D' accord ? Donc votre FPGA, nous recevons ces portes d'horloge ici comme votre horloge système, d'accord ? Et ça va être notre taux de rebond, OK ? Maintenant, toute cette URL, vous verrez qu'on va utiliser gars de l'horloge qui vient juste ici du monde extérieur avec une réinitialisation n, OK ? Maintenant, cette horloge du monde extérieur va être le 25 mégahertz. Cette limite, c'est la limite que nous sommes sur le point d'utiliser. Maintenant, si vous avez une horloge différente et une limite différente que vous voulez, comme 9 600, vous pouvez juste changer, changer ici. Ce seront tous les signaux, et ce sera la machine d'état. Maintenant, cette machine d'état est la machine d'état exacte ici. Ok, voyons les noms. Ok, donc on a l'inactivité, les bonnes données en début. C' est le départ de sable, en fait donné clair CLR minuteur est le minuteur clair. D' accord. Envoyer des données est juste, vrai. Les données de Dean, ok. Ici, nous avons le dépouillement du nombre de quarts de C. Et le bon arrêt Dean, c'est le sens. D' accord. Donc, ceux-ci vont aller machine d'état RB. Maintenant, notez que pour la machine d'état, nous avons 22 signaux qui prennent ce type de machine d'état le jour. Nous avons donc l'état actuel et le prochain état. Et ici, je veux juste ignorer ça, d'accord ? Donc tout ça, toutes ces lignes vont être pour le récepteur Uart, à l'intérieur de l'émetteur. Et ici, j'ai ce processus, d' accord, c'est ce qu'il fait à chaque horloge, d'accord ? Vous chargez simplement l'état suivant à l'état présent. D' accord ? Donc, si vous jetez un oeil ici, vous verrez que ce processus n'est pas un processus chronométré, d'accord ? Donc il n'y a pas d'horloge à l'intérieur, accord, et pas la porte de réinitialisation. Donc, chaque fois que nous allons à l'intérieur de ce processus, vous avez juste besoin de comprendre que toutes ces lignes Suite va arriver. D'accord ? A moins que nous soyons dans cet état, dans l'un de ces cas, dans l'un de ces cas. D' accord. Donc, le dernier est celui qui a pris en compte. Alors, qu'est-ce que je veux dire ? Ok, donc par exemple, si nous avons ici, ils activent le compte et c'est 0, ok ? Mais disons que l'état actuel va se passer ici, le nombre de postes, d'accord ? Donc, ils permettent le décompte. Gay en sera un. D' accord. Donc ce sera la dernière prise en compte, ok. Parce que ça arrive après ça. D'accord. Donc, si vous avez regardé mon VGA apprendre du début cours gay, je vous ai dit que si vous écrivez deux lignes comme. Un après un. D'accord. Celui-ci sera pris en compte d'accord. Parce que ça vient après. D' accord. Donc, je sais que vous devez noter la bonne vapeur. Donc, ici, à l'intérieur de l'état actuel, jetons un coup d'oeil à l'intérieur rapidement. D' accord ? Donc sur l'idole. Et jetez un oeil juste ici. Ok, donc au ralenti, je t'ai dit que c'était le déclencheur, c'est l'action. Ok, donc le déclencheur pour passer de l'état inactif à l'état suivant sera correct. Les données sont dans, ok ? Alors écrivez que n est 0. On reste au ralenti. Si c'est un, on va à l'état suivant. D' accord ? Et puis que s'est-il passé à la prochaine horloge ? Ok, le prochain état charge l'état actuel, d'accord ? Et juste ici, à l'intérieur du Khi Square, en regardant l'état actuel, d'accord. Et quand il se charge sur l'horloge suivante, l'état actuel, nous allons à l'intérieur du processus k. Maintenant, c'est une façon d'écrire un processus avec la machine d'état. J' ai tellement de façons différentes de l'écrire. Tu fais tout ce que tu trouves, plus facile et juste pour que tu comprennes, d'accord ? Ok, donc ici, j'ai ces trois. Ces trois signaux vont bien, que je les ai mis comme, comme je tire. D'accord ? Donc, je veux effacer le nombre de données. Je veux activer la charge et qui prend prêt est 0 parce que nous n'avons pas de données que nous envoyons en ce moment. Ok, maintenant quand on commence à envoyer le départ, on a dit dans le DY DX, prêt ? D' accord ? Celles-ci, jetons un coup d'oeil juste ici. D'accord ? Donc, ce TE, juste en activant la minuterie. D' accord. Donc activer la minuterie. Donc on saura quand, tu sais, quand envoyer le prochain gars. Le prochain juste ici, le prochain morceau. D' accord ? Et jetez un oeil. Donc, en dehors de ce processus, nous avons ce processus, ok. C' est donc l'ère temporelle du compte T. D' accord ? Alors quand, chaque fois qu'on est en train d'activer la minuterie, d'accord ? Ceci, le compte va aller et compter jusqu'à ce qu'il soit égal à ce compte T. Et le compte D1 est de 217 pour ces 25 mégahertz. Et le taux de bauds que nous avons choisi. Chaque fois que ce n'est pas égal à 217, il va continuer à augmenter. Ok, quand, quand c'est égal à ça, ça va s'arrêter, ok ? Maintenant, juste là. D' accord ? Si le seul compte est égal au compte, ok ? Donc, si le seul compte, si désolé, t compte est égal à 217, nous obtiendrons une porte à l'autre. Ce sera 0. Voyons donc ce que fait T1 ici. Donc T1, quand il est 0, on reste ici. Ok, chaque fois que t1 est un, on va effacer la minuterie. Alors faites-vous juste ce processus ici, désolé, cet état juste ici, juste effacer la minuterie et aller envoyer les données tout de suite. D' accord ? Donc il y est resté seulement une horloge de 25 mégahertz. C' est vraiment un peu de temps comparé au taux de bauds, d' accord, donc vous ne remarquerez même pas ça, ok ? Lorsque vous envoyez les données. Donc ici, nous jetons pour écrire des données. Nous avons dit dans ce signal si encore une fois, que les œufs prêts est déjà un. Ici, nous sommes. Nous activons à nouveau le compteur, ok, pour 217, la largeur du bit, et nous activons la transmission. D' accord ? Voyons ce que ça fait. Juste ici. Ok, donc activer le X. Donc après, après que nous soyons ici, désolé. Voyons voir. Je voulais te montrer quelque chose avant de continuer à parler de ça. Je veux donc parler de ces deux processus avant que nous ne poursuivions. D' accord ? Nous avons donc vu cette minuterie. Nous avons le compteur des données. D'accord. Bien sûr, il ne compte que les données quand on les déplace. D' accord. Ici, dans ce processus, d'accord ? Et là, on a ce changement de vitesse, d'accord ? Ok, et c'est en fait le truc dont je veux parler. D' accord ? Donc, ici, sur ce TeX clair, c'est en fait. Ok, le signal qui s'éteint, jetons un coup d'oeil. D' accord ? Donc ça, le x sig va à la transmission. D' accord ? Donc, en fait, si vous voulez prendre tout ça, si vous voulez ignorer quelque chose ici, vous ne devriez pas ignorer celui-ci. D' accord ? Donc, le teck voir ici sur le dx clair est 0 jour parce que c'est le début avec l'ensemble. Le X va être un, je suppose qu'il est juste ici. D' accord ? Donc c'est en cours d'écriture. Donc, ce sont les bits d'arrêt. Alors ça commence par Arrêter ça. Et juste là, sont les données. D' accord ? Maintenant, si vous voulez que ce soit, si vous voulez qu'il soit big-endian donné de l'ESM à LSB. Vous avez juste besoin de changer cette ligne. Et ceci ici, cela doit être sept et vous devez changer la façon dont vous déplacez les données. D' accord ? Donc, vous voulez qu'il se déplace vers la gauche au lieu de passer à droite. D' accord ? Ok, donc en ce moment on est là-dedans, activé le processus Xt. On est là, d'accord, donc on permet la transmission des données, d'accord ? Maintenant, chaque fois que celui arrive à D1, entrez dans un, ok, on a juste fini un peu, 1 bit. Donc nous allons tester Yossi. D' accord. Ce n'est pas une fin de compte, alors nous allons changer. D' accord. Parce que nous ne sommes pas Nous n'avons pas fini, nous n'avons pas mis fin à la phase d'envoi de toutes les données. Donc on va changer le compte. D' accord ? Vous avez une serviette ici. Ok, donc on va changer, on retourne aux données. Ça se passe comme sept fois, puis on y retourne. Ok, alors voyons la fin de tout ça. Donc quand ce sera la fin du compte va être un. Voyons quand. Donc la fin du compte sera un quand le comte sera sept. D' accord ? Et puis on va écrire le K. En fait, c'est l'émetteur, ok ? Ce n'est pas si compliqué. Vous pouvez lire le code. Vous avez juste besoin d'aller étape par étape et d'utiliser cette machine d'état de l'émetteur principalement et une partie de cela. Ok, maintenant vous pouvez voir que j'ai juste, ce que j'ai fait en fait, j'ai juste pris chaque Let's appeler ça un composant et je l'ai fait comme un processus. Ok, je les sépare et je viens de connecter toutes les choses ici. Donc c'est, c'est la façon de prendre un complexe. Tout autre design complexe. Tu n'as pas rendu les choses plus faciles pour toi. Donc, parfois, je fais comme conceptions vraiment difficiles pour DMA avec DDR et c'est juste, c'est juste un gâchis. Donc c'est une façon de concevoir, non ? Donc, si vous travaillez dans une entreprise sérieuse, vous saurez que vous avez deux façons de concevoir des choses. Nous envahissons la zone du haut en bas. Ok, Matt, qui alors tu as le bas vers le haut. Donc ça veut dire que de haut en bas, vous construisez beaucoup de composants et ensuite vous allez à l'intérieur, d'accord ? Ou vous pouvez construire tous les composants, d'accord ? Comme, comme ici, et ensuite connectez-les. D'accord ? Ça dépend. Cela dépend de la complexité du modèle. Juste ici ? Je l'ai fait de bas en haut. La plupart du temps, je fais de haut en bas gars parce qu'il est plus facile de tout comprendre. Donc, je construis juste un gros composant et puis je vais à l'intérieur et une facture plus de composants. D' accord. Donc ici, c'était juste une page, donc je n'ai pas besoin de devenir fou avec ça. Ok, et c'est pour cette conférence, ok, la prochaine conférence, on parlera du receveur et ensuite on simulera tout. D'accord ? Et c'est tout pour l'instant. Et puis Q 8. Récepteur UART: Salut, bienvenue à la prochaine conférence. Dans cette conférence, nous allons parler du récepteur. D' accord ? Donc, comme je vous l'ai dit, comme je vous l'ai montré précédemment dans les conférences précédentes, nous avons ce diagramme et la machine d'état. Ok, maintenant, c'est une très grande échelle en tant que machine d'état. Jetons un coup d'oeil ici. Ok, donc c'est le code de l'euro au destinataire. Maintenant, à côté des entrées et sorties, ainsi que l'émetteur, qui est équivalent à ce diagramme. Ok, donc on peut voir ici la récente et l'heure, notre lecture X. Es-tu prêt ? Ok, c'est les mêmes noms. Données sortantes. Lequel, bien sûr, nous recevons une donnée série et nous voulons la produire dans une donnée parallèle, d'accord ? Donc ce serait une donnée de harnais, d'accord ? Juste ici, huit battements. Encore une fois, si vous voulez recevoir cinq battements ou autrement, vous devez le changer bien et vous devez changer dans le code. Donc vous verrez que le code du récepteur est presque le même que l'émetteur avec de petits changements, ok ? Parce que c'est juste le contraire si vous vous évadez. Donc juste dans le sens inverse. Ok, donc on compte. Encore une fois, nous verrons que nous avons le compteur, C'est le même compteur. On a la minuterie. Nous avons juste votre minuteur 32, que je vous ai déjà expliqué à ce sujet lors des conférences précédentes. Donc vous verrez ici ce compte T2, qui est en fait T1 compte divisé par deux, ok, donc c'est 108. Bien sûr, si vous choisissez, différentes horloges sont différents taux de bauds. Ces chiffres vont être différents. Ici, vous pouvez voir tous les signaux dont nous avons besoin pour cet York. Et ici, vous pouvez voir la machine d'Etat, qui est, allons un par un juste ici. Ok, jetons un coup d'oeil. Va donc on a le ralenti, le poids de départ, la nana de départ. D' accord ? Alors commencez le poids qu'on attend 0, commençant par Star Trek, c'est juste attendre une horloge de plus, ok ? Pour vérifier que nous sommes toujours sur la largeur de départ, d'accord ? Et puis nous allons pointer le poids. Ok, alors on a une vérification des données. D' accord ? Et encore une fois, c'est la même méthode, comme l'envoi. Ce sera cette réception des données. D' accord ? Maintenant, nous avons ici, Stop, Attendez, arrêtez, vérifiez le poids du stock. Donc, après avoir reçu toutes les données où nous voulons attendre un peu d'arrêt, ok, Maintenant encore une fois, je vous ai dit si vous voulez un peu de parité, vous pouvez ajouter ici plus d'états, vous pouvez jouer avec cela. Ou vous pouvez continuer et télécharger mon autre code, qui est plus générique, plus global. Vous avez là tout ce dont vous avez besoin pour toute transmission d'URL, ok, Donc, il prend juste en charge toutes les options qui sont disponibles sur le marché. Vous pouvez donc aller à ma dernière conférence et le télécharger à partir de là. Ok, donc tu peux le trouver là-bas. Juste, ok, alors continuons. Donc, ça attend ce sommet ici. Il vérifie qu'on est toujours sur le point d'arrêt. D' accord ? Et si ce n'est pas la porte de l'affaire, alors nous allons rompre, si c'est le cas, nous allons juste revenir au ralenti. D' accord ? On va mettre à jour la sortie, d'accord ? La sortie sera les données parallèles. Ok, alors on va dire un, on a une sortie, d'accord ? Donc le nouveau d'Arthur va être activé. Donc vous pouvez voir tout ça ici, ok, encore une fois, nous avons la même chose avec l'état suivant et l'état actuel. Bien sûr, ces deux signaux prendront le type des états, d'accord ? Donc chacun d'entre eux a tous ces états k. Donc chaque horloge de 25 mégahertz ici. L' ensemble suivant sera chargé à l'état actuel. Et ici, à l'intérieur de cette partie de la combinaison , d' accord, on va faire tout ce dont on a besoin. D' accord ? Maintenant, jetons un coup d'oeil ici. Quoi, qu'est-ce qui s'est passé, d'accord ? Que se passe-t-il ? Alors, ici, au ralenti, d'accord ? Quand nous sommes, quand il y a excès, qui est logistique, regardez quel est notre excès ? D' accord ? Donc notre excès, encore une fois, jetons un coup d'oeil ici. Notre excès. L' entrée synchronisée du RX, parce que comme je vous l'ai dit, nous ne savons pas à quoi ressemble la vague. On dirait ici. Je veux être sûr que je suis sur 0 ou un jour. Bien sûr, cela ne résout pas toutes leurs options de synchronisation, comme je vous l'ai dit lors de la conférence précédente. Donc c'est juste synchroniser une fois, d'accord ? La plupart du temps, on veut faire un double assemblage, ok ? Donc deux échantillons. Pour une bonne synchronisation. Si tu fais plus, ça va être mieux. Mais ne faites pas trop, ok, Comme je vous l'ai dit dans les conférences précédentes, si vous faites trop, vous pouvez sortir du rythme à l'heure k et ensuite vous serez dans un autre temps là. Vous continuerez à échantillonner trop. Si tu es trop symphonique, ce n'est pas bon si tu te sépares en deux. Si vous tout simplement moins que, alors ce que vous avez besoin, Ce n'est pas bon non plus. Ok, donc vous voulez goûter une quantité décente de temps, dépend de votre horloge et de vos taux baissés. Ok, alors d'accord. Et oui, c'est à propos de ça. Ok, donc notre excès, c'est juste un processus, d'accord, qui consiste à assembler notre X dans chaque bord montant. Ok, donc on a juste quelque chose de RX et on l'a mis dans notre accès. Et quand j'y accède, on n'a pas commencé. Ok, donc nous tache sur l'idole, Hey, nous attendons le bit étoile quand notre accès sera 0, il ira à l'autre et nous avons commencé avec, nous pouvons commencer à compter t2, ok, donc ça va activer le compteur. Encore une fois. Nous avons le T0, T0 permettant où les deux compteurs, ok, donc il va activer. Donc ici, nous nous soucions juste d'activer dans ce compteur. Donc nous avons ici un T2, ok, donc les deux vont courir quand t est un, mais nous ne faisons qu'une boucle, nous allons jeter un oeil juste ici et commencer Waitangi sur T2 sur la moitié du bit, comme je vous l'ai dit. D' accord ? Et nous vérifierons si vous êtes toujours sur 0. Si ce n'était pas juste un problème ou juste, vous savez, et du bruit. Ok, donc on continue à chercher des données. D' accord. Donc, si c'était un problème ou quelque chose, vous savez, du bruit qui vient du monde extérieur. Sur la vérification de stock, nous ne verrons pas le système d'arc 0 parce qu'il était juste, vous savez, sauter trop bas et trop haut. Donc on va retourner au ralenti. Donc si on avait 0 ici sur Star Trek, mec juste ici, on sautera pour faire confiance à notre chèque. Si nous avons un 0, toujours un 0 et commencé, nous irons attendre les données. Ok, donc encore là, on active ce T2, ok ? Comme je vous l'ai déjà dit, notez que quand nous sommes ici sur le Start, cochez, le T E sera égal à 0. D'accord ? Parce que là, nous sommes sur Star Trek et il n'y a rien d'autre qui surpasse cette valeur. D' accord ? Donc, chaque fois que je veux commencer le poids par exemple, ou commencer le poids, ces valeurs remplacent cette valeur, ok ? Parce qu'ils sont les derniers à être initiés. Et ici, ça n'arrivera pas. Donc T sera 0 et les compteurs seront 0. Et ici, nous allons recommencer à compter. Ok, donc quand T1 k égal à 1, nous voulons vérifier les données. Et encore une fois, si nous avons fait une fin de la comptabilité, d'accord, Nous irons au comte et puis encore attendre le prochain bit, ok ? Quand nous finirons le comte va s'arrêter. Attendez. Encore une fois. Fin du comte. Nous voulons dire que nous avons juste une histoire simple. Nous venons de recevoir, oui, échantillonné sept battements, k plus un temps comme je vous l'ai dit dans les conférences précédentes. D' accord ? Donc ici, vous comptez seulement sept, mais quand nous sommes venus ici, c'est déjà simple, le premier, donc c'est sept plus 1, c'est 8, huit bits ou un octet. Et encore une fois, on va s'arrêter, attendez. Et tu reviens comme cet émetteur-récepteur, ok. D' accord. Donc nous allons ici pour nous arrêter et vérifier que nous avons un peu d'arrêt. Gay. S' il y a un excès est 0, il n'y a pas de bit stop. On veut le faire sortir. Si c'est un, nous mettons à jour la sortie. D' accord ? Donc mettre à jour la sortie est ce gars. Voyons ce qui s'est passé lors de la mise à jour de la sortie. Qu'est-ce qu'il fait ? Ok, Donc ici, cette activation est un, le Shift K de données, ici nous changeons à nouveau si vous voulez, si vous recevez d'accord. Big Endian, d'accord. Si vous changez le récepteur et l'émetteur, désolé, vous devrez changer le récepteur. Et ce R x x viendra ici. Et vous écrirez ici six à 0. Donc ça ressemblera à, donc si tu changes ça en un gros endian, ça ressemblera à ce K, je veux juste te montrer ça, ok, donc ça ressemblerait à six à 0. Donc, juste ici, vous allez tourner vers la gauche. Cela tournera vers la droite. D' accord ? Ok, donc l'Alt Shift juste ici sous l'activation externe le décalage sera égal à l'extérieur et l'extérieur est toujours égal aux données sortant. D' accord ? Donc nous avons quelque chose qui dit, hé, ils ne sont pas sortis est prêt et les données vers l'extérieur, qui a été tourné tout ce temps. D' accord ? Encore une chose. Nous devons dire que la sortie est prête. Donc, le nouveau nous dit que la sortie est prête et que toutes ces choses sont égales à ce cas. Donc ce sera, ce qui va se passer. Et nous le verrons dans la simulation sur les prochaines conférences. D' accord ? Et en fait, c'est tout pour l'instant à propos du récepteur. Vous pouvez passer par ça, ok, je vais télécharger ça à cette conférence. Et c'est pour l'instant. Ok, je te verrai à la prochaine conférence. Et puis Kim. 9. Simulation des récepteurs: Salut, bienvenue à la prochaine conférence. Dans cette conférence, nous allons simuler le récepteur uart. D' abord, nous avons le dossier du récepteur gay appelé le yard sont X-dot VHD. Et j'ai aussi téléchargé à cette conférence, accord, le banc d'essai pour la porte du récepteur Uart. Alors passons par ces banc d'essai, d'accord ? Et après cela, nous allons continuer et ouvrir un produit à l'intérieur modal même et simuler le récepteur. Vous comprendrez donc plus sur votre transmission. Donc d'accord. Ok, alors commençons par ici. Ok, donc à l'intérieur du banc d'essai, bien sûr, on a le composant du récepteur terrestre, gay. Nous avons quelques signaux ici, la réinitialisation, l'horloge, la lecture des données, et ils sont maintenant sur ces sorties. Je les ai laissés ouverts. Nous allons juste jeter un coup d'oeil dans le composant, ok, à l'intérieur du composant, nous n'avons pas besoin de regarder cela. Donc on peut juste regarder la sortie elle-même, d'accord ? Ok, donc ici, on a l'horloge gay pour 25 mégahertz. Ok, et nous avons une porte de réinitialisation qui est active à faible réinitialisation. Ouais, donc à l'intérieur, il y a le banc d'essai lui-même. Donc ici, tu peux régler le taux de bauds, ok ? Si vous voulez un autre, si vous voulez changer le taux de bauds ici et l'horloge, bien sûr, vous devez le changer ici, ok ? L' horloge et le taux de rebond, d'accord ? Une autre chose que vous devez changer ici, si vous voulez le changer en k, le nombre de données que vous avez à l'intérieur du gars du paquet. Ici, c'est un octet. Ok, donc ici vous pouvez voir que toutes les 100 microsecondes que nous allons envoyer au récepteur, différentes données série entrent dans le RX. Donc le truc, c'est qu'on va envoyer avec ces quatre, ok, ces betteraves, ok. Ce sera les premières données. Ce sera la deuxième donnée, et ainsi de suite. Et à l'intérieur de ces 44 nous pouvons voir que nous faisons tourner les données. Nous juste à chaque fois que nous envoyons des bits de 0 à sept. Donc une autre chose, si vous voulez changer d'un petit endien, trop grand, et ainsi de suite. Tu dois changer ces boucles de sept à un 0, d'accord ? Ou retournez simplement les bits. Bien sûr, vous devriez juste changer les boucles for de sept à 0. D' accord ? Alors continuons et voyons comment ça se passe. Et qu'est-ce qu'on obtient quand on envoie ça au destinataire ? Et une autre chose que je voulais dire. Donc juste ici avant qu'on envoie tout ça. Donc, nous réglons le r x sur 1. Donc c'est l'article, c'est le bit de départ, et juste ici c'est le Stop it. D'accord ? Donc, si vous voulez ajouter un bit de parité k au code ici, vous pouvez l'ajouter entre la fin de la boucle au bit stop. Mais aussi vous pouvez continuer et aller à la dernière conférence. D' accord. Je vais aller sur mon site et télécharger le, le récepteur et l'émetteur que j'ai là, qui sont professionnels et vérifiés sur de nombreux, beaucoup de produits. D' accord. Cela a également été vérifié sur les conseils de développement et les projets. Mais encore une fois, l'autre dans juste exagéré. Et c'est vraiment professionnel. D' accord. Donc, ce que nous voulons faire maintenant, allez-y et continuez. Et je l'ai déjà fait. J' ai déjà changé le cas du répertoire. C' est là que je vais travailler sous mon dossier de cours. Ok, je vais créer un nouveau projet. C' est ce qu'on appelle ça marche. D' accord. Appelez ça le REX, n'a pas d'importance. D' accord. Et ajouter des fichiers existants K. Laissez-moi prendre ceci. Oui. Alors, juste ici. Donc, sur les deux obtenir le plus proche. Cela les compile tous. Ok, et je veux aller à la bibliothèque. Et ici, simuler gay. Maintenant, si vous n'avez pas ce Windows, vous pouvez aller ici sur la vue, désolé, sous View. Et là, vous avez la bibliothèque et le projet X. Donc, après l'ouverture, vous verrez ce gars de la fenêtre SIM. C' est le banc d'essai. Ok, laissons nous éditer ici. Appelons ça la télé. Appuyez ici. Créons un autre. Désolé. C' est le récepteur, l'unité de réception. Ajoutons tout, d'accord ? Et faisons-le. Voyons ce qu'on veut, accord, parce que c'est vraiment lent. Allons sur une milliseconde ici. Ok, donc c'est la phase de simulation. Jetons un coup d'oeil et voyons ce que nous avons. D' accord ? Tout d'abord, jetons un oeil sur le premier. D' accord ? Donc ici, nous envoyons c et c k ici, nous envoyons 35. D' accord ? Donc, si, si vous trouvez qu'il est difficile de comprendre comment vous pouvez aller à la calculatrice, vous avez une pression sur Windows juste ici, programmeur aller au binaire. Et juste ici et coller. Et vous pouvez voir celui-ci est CC en hex. Et celui-ci va être, je peux supprimer ceci. Celui-ci va être 35 en hexadécime, ok ? Le dernier sera F et 0, d'accord ? Et ici, vous pouvez voir qu'on a fait ça. J' ai fait un f, une erreur de trame. D' accord. Donc, il a besoin de rompre de cela parce qu'il n'y a pas il ya un cadre sa flèche ici parce que la fin, il n'y a pas de fin. D' accord ? Donc l'ID va être 0. Ok, donc on va avoir une flèche de cadre parce qu'on envoie 0 au lieu d'un rythme de 140. Et blanc ici. Nous venons de mettre dans un court bassin pour les piscines de départ. D' accord ? Donc on a juste vérifié que si les piscines de départ sont vraiment courtes, qu'arrivera-t-il ? D'accord ? Et nous voulons voir ce qui s'est passé dans ces deux-là. Donc on cherche seulement ces deux gars pour CC et 35. Maintenant, si vous regardez cette étape que vous pouvez voir que les données en disant CC et 32 avec les données sur nouveau. Et juste ici. Et ici, rien ne s'est passé. Et ce sera le court départ en rythme, et ce sera l'erreur de trame. Et une autre chose que vous pouvez voir ici, c'est juste là, vous venez de casser. Attends. Ok, sur les autres, il est devenu inactif. Et passons à travers ça et voyons ce qui se passe. Donc je peux zoomer ici. Ok, et je vais t'expliquer le truc avec les t2 et t1, ok ? Donc sous notre x nous obtenons 0. D' abord. Ajoutons un de plus de ceux-ci du plus grossier. Donc, ici, il arrive à 0. Laissez-nous regarder celui-là. D' accord ? Et comme vous pouvez le voir, nous pouvons dire que le prochain changement sera juste ici. D' accord. Voyons voir. Donc, si nous sommes en train de diviser, revenons aux scientifiques épais. Un divisé par 1152 mille et ça va être 8.68, hey, 0.798. D' accord ? Ok, donc ça va être notre, en fait nos battements, k1 battements. Et rejetez un oeil. Prenons un autre, d'accord ? 8.8. D' accord. Donc, parce que nous travaillons avec 25 mégahertz et que vous voulez recevoir 115 à 100. Et on a une petite déviation, d'accord ? Donc, il y a un, vous pouvez réellement créer, acheter vous-même une table de déviation, gay. Ou vous pouvez trouver sur Internet. Donc, dans quel club ils veulent travailler pour recevoir la plus petite déviation K pour un certain uart à propos de droit ? Ok, donc tu peux faire ça India Internet. Tu n'as même pas besoin de moi pour faire ça. Donc, ici, on peut voir. Ok, le premier temps qui arrive, ok, ça va être 0 dans le prochain morceau que nous voulons recevoir ici va être ce 100 et ensuite un, ok ? Donc ça va être 0 et puis un autre 0 d'ici à ici, ok ? Et ici, ça va être 11 ans. D'accord ? Qu' est-ce qui s'est passé ici ? C' est juste quand ça va aller à 0, on a un poids de départ, on va commencer le poids, ok ? Et après ça, on va commencer à vérifier. D' accord. Quand on en aura 22, on va commencer à vérifier. D' accord ? Après qu'un T2 soit arrivé à un, nous attendons à nouveau. Ok, ça t'attend. Nous attendons les données, celle, puis nous voulons échantillonner chaque fois au milieu du rythme. D' accord ? Donc on est à chaque fois que ce type de T1 va sauter en un. On est en fait, comme je vous l'ai dit dans les cours précédents, d'accord ? Donc, nous voulons vraiment être au milieu du BD2K. Donc si c'est le, ça pourrait être 000 001. Ok, donc à chaque fois que T1, parce que nous avons ce décalage de T2 et ensuite nous commençons à compter le T1. D'accord ? Donc, le t, nous allons à simple droit au milieu du rythme. D' accord ? Donc, chaque fois qu'on s'assemble, et quand on s'assemble, quelque chose se passe ici, d'accord ? Et tu devrais jeter un oeil à ça, d'accord ? Ici, le poste de sortie des données est décalé, si je veux ouvrir celui-ci. Et nous allons juste zoomer un peu. Vous pouvez voir qu'il bouge. D' accord ? Donc, il se déplace jusqu'à ce qu'on arrive en C et C. À la fin, on a les données, tout le poids des données. Ok, à la fin nous avons l'arrêt, attendez, attendez l'arrêt. D' accord ? Ensuite, nous vérifions que nous sommes sur le point d'arrêt. Puis mettre à jour les sorties. Ok, nous disons que la sortie est valide. Voyons juste ici. D' accord. Donc les données nouvelles sont valides et rendre que là où l'Israélien, ok. Maintenant parce que nous n'avons personne pour le lire, vous pouvez voir que le point prêt attend tout le temps donc jusqu'à ce que je le lise, ok, si je vais le lire ici, le point sur Verdi ira à un 0. D' accord ? Donc, on peut faire quelque chose. Joli ici. Allons, continuons et, continuons et lisons-le ici. Ok, voyons quand on va vraiment essayer ici. Ok, laisse-moi juste trouver l'heure, le bon moment. Ok, donc on va le lire sur 153 microsecondes et ensuite voir les données en sortie prêtes descendre à 0. D'accord ? Donc, si vous êtes un récepteur, désolé si vous l'êtes, si vous êtes sur le backend du récepteur K côté FPGA. Et vous avez le récepteur. Et vous lisez à partir du back-end, il devrait aller à 0. Ok, alors jetons un coup d'oeil sur ça. Donc je vais juste courir 100, 53 microsecondes, ok ? Et juste ici, continuons et lisons le point, K SOM. Dis-lui que je suis comme, tu sais, en regardant le point dehors. D' accord. Si je suis le backend, d'accord. Et je dis, hé, j'ai été très soignée. D' accord. Omri les besoins. D' accord. Laissez-nous sauter une microseconde. Ok, ça suffit. Et comme vous pouvez le voir, quand j'étais vraiment soignée, ok, les données prêtes vont à 0. Okay, on n'appuie plus sur la force, d'accord ? Donc nous allons revenir à 0. Et maintenant, lorsque nous courons à nouveau, vous verrez que les données prêtes ne monteront que sur les données suivantes qui sont en attente. D'accord ? Donc, si vous voulez travailler correctement avec le backend, quand vous, quand vous lisez ceci, vous pouvez simplement, chaque fois que le point vers l'extérieur ou vous pouvez simplement aller sur et jeter un oeil là-bas que nouveau. Et chaque fois qu'il y a de nouvelles, si vous savez, cela dépend. Si vous savez que votre back-end va être occupé. D' accord ? Et tu ne peux pas vraiment lire ici que tu veux. Vous avez quelque chose que vous faites sur le backend. Je ne sais pas. Tu as un FIFO qu'ils pourraient être pleins, peut-être. D'accord. Si vous avez seul beaucoup de transmission et votre FIFO assez, Ok. Tu ne peux pas lire un tout de suite et tu veux le lire ici, ok ? Pour que tu puisses jeter un oeil sur New. Vous devrez jeter un oeil sur les données, notre 20 et dire Ok, qui est prêt. Ok, je peux lire, Ok, et puis il dira que je lis et sur les prochaines données que mercredi sera encore une fois. D' accord. Mais si votre back-end est LU est, est, est correct et vous n'avez rien qu'ils sont coincés en vous de recevoir les données. Donc, vous pouvez juste jeter un oeil sur les données sur nouveau. Ok, donc chaque fois que c'est un, tu vas juste lire et continuer. D'accord ? Il y a donc deux méthodes de lecture des données ici. Cela dépend de ce que vous voulez faire sur le backend. Ok, donc ici, on peut voir ça. Voyons ce qui s'est passé ici. Donc il faut arrêter, attendre, arrêter, vérifier. Ok, ça vérifie le bit stop, mais les bits stop ici vont être 0, ok, donc ce sujet ne peut pas être 0 et vous cassez juste du poids. Et notez que la sortie a été activée, donc c'est Break weight et disparu, est parti au ralenti. D'accord ? Donc, ça va être inactif. Donc ça va être le cas chaque fois que la ligne va revenir à un gars. Et c'est le mode inactif chaque fois que x est 1, ok ? Et blanc ici, bien sûr, nous avons juste un petit juste ici, nous avons juste un petit saut au poids de départ et puis laissez-nous voir ce qui s'est passé ici. D' accord ? Donc ici ce que j'ai fait ici, ok. Donc, au lieu d'être, vous vous souvenez que c'était 8.8.8. D' accord. Donc c'est deux points, 17 microsecondes, ok ? Il s'agit d'un petit départ dans un peu. Donc T2 comptait, ok ? Et blanc ici, on l'a vérifié, d'accord ? Et nous vérifions que si c'est valide, accord, et ce n'était pas valide, Voyons voir. Ok, donc nous vérifions le début et ce n'était pas valide et nous allons juste revenir en arrière, au ralenti parce que ce n'était pas valide. D'accord ? Ok, et c'est tout pour cette conférence. Ok, à la prochaine conférence, on simulera l'émetteur K et on utilisera le récepteur. Je vais vous expliquer comment nous allons le faire. D' accord ? Et c'est tout pour l'instant. Et 10 Q 10. Simulation de transmetteur: Salut, bienvenue à la prochaine conférence. Dans cette conférence, nous allons simuler l'émetteur de l'uart. Ok, donc d'abord, dans le fichier Uart DEX que vous avez déjà téléchargé et les conférences d'Ampere. Vous pouvez trouver ici que le composant que vous êtes, notre x va être aussi à l'intérieur du code, gay. Et je t'ai dit que tu pouvais l'enlever si tu ne simulais pas. Mais pour l'instant on va simuler, donc tu devras activer ce type. Laisse-le comme ça. Maintenant, la raison pour laquelle nous mettons la Terre REX d'accord, à l'intérieur, je veux vous montrer d'abord. Ce n'est pas un Desmond sur dx, juste une seconde. Donc, c'est, vous avez aussi juste ici sous cette conférence, cet uart prend Testbench k. donc je vais juste vous montrer maintenant ce que nous faisons dans les tiques Uart. Et puis nous allons expliquer ce composant et pourquoi, pourquoi avons-nous réellement édité la Terre, notre x à l'intérieur, ok, alors que faisons-nous réellement ? Nous avons l'uart prend k et nous avons l'entrée de données. Nous voulons charger l'émetteur avec des données parallèles, ok, un octet ici, par exemple. Et nous voulons écrire pour activer le droit. Et puis nous voulons voir les sorties de transmission dans la sortie série avec une limite que nous avons dit et tout. Maintenant, le fait est que nous ne pouvons pas vraiment vérifier à nos yeux si la transmission est correcte. Ok, donc ce que nous allons faire ici, avant de le mettre à la sortie à l'intérieur de l'ERT x, regardons. Ok, on a la porte du signal des tiques et le signal de pointe va toujours vers les tiques. Nous allons réellement connecter le dépassement à l'intérieur de l'Uart REX. Et en fait, cela va vérifier notre simulation. Ok, Donc au lieu de, vous savez, juste prendre, regarder de près chaque temps et, vous savez, il sera vraiment difficile pour nous de vérifier et de vérifier que c'est correct, que la communication est correcte. Nous allons simplement connecter les sorties série à l'uart RX et le York RX vérifiera réellement pour nous. Nous verrons à nouveau la transmission dx dans l'uart RAX. Et nous verrons les données ici basculer dans les mêmes données que nous venons d'ajouter. Jetons un coup d'oeil sur le banc d'essai. Donc ici, nous avons, bien sûr la RTX A, nous devons connecter celui-ci. Bien sûr, nous avons l'horloge de la réinitialisation de 25 mégahertz. Et ici, toutes les choses vont se passer, d'accord ? Donc, juste ici à l'intérieur du processus, vous verrez que le premier envoi sera juste ici. D' accord ? Donc nous envoyons 0 et ajoutons juste l'âge. Et qu'est-ce que ça veut dire ? Nous ajoutons les valeurs ascii. Et la valeur ascii du caractère d'âge de notre clavier j sera 48 hex. Comment je le sais ? Vous pouvez aller à Google ? Écrivez juste la table ascii et vous trouverez des pinces de tables ascii, ok ? Et il suffit de jeter un oeil sur cette table et de comprendre, ok , donc l'âge, le caractère dans votre clavier, si vous voulez imprimer à partir de votre FPGA sur votre PC, le caractère d'âge , par exemple, vous devrez écrire sur le PC 4800 hex. Ok, donc si vous jetez un oeil juste ici, vous pouvez voir qu'il y a un nom de colonne, char, caractère gay. Et juste ici, sous l'âge, vous verrez que la valeur décimale est 72. La valeur hexadécimale est 48. D' accord ? Donc c'est en fait ce qui va être envoyé. Ces valeurs sont 48 en hexadécimal ou 72 dans cette OCM. Bien sûr, nous travaillons, nous imposons maintenant. Les gens disent des nombres ascii représentés par sept bits. Ok, c'est vrai. Mais quand nous connectons notre FPGA à notre ordinateur et nous allons parler avec le terme de terreur répondre à eux. On n'a pas traversé ça, mais écrivez-nous ici et je vous montrerai ce que ça veut dire. Vous avez donc deux options pour vous connecter. Ton ouais. Je veux dire, tu as beaucoup d'options, ok. Mais vous avez deux applications principales qui vont communiquer avec la communication série. Et l'un est Tera Term, d'accord ? C' est une source ouverte, bien sûr. Vous pouvez le télécharger. Ça, le terme de terreur, d'accord ? Donc quand tu le téléchargeras, ça ressemblera à ça, ok ? Et vous pouvez choisir une céréale et le port COM sur votre PC. Bien, c'est être connecté à votre. Votre conseil de développement, et vous aurez plus d'options à choisir là-bas. Vous pouvez choisir la limite que vous allez utiliser, et à quoi ressemblent les battements et plus encore. D' accord ? Vous pouvez donc choisir entre cinq à neuf battements. Vous pouvez choisir la pauvreté du blé sans pauvreté, un à deux bouts et ainsi de suite et ainsi de suite. D' accord ? L' autre, qui est vraiment sympa, s'appelle Pucci, ok. Celui-ci est aussi gratuit à télécharger. D' accord. C' est vraiment un outil fort pour, ok, je les aime tous les deux. Je suis la plupart du temps j'utilise le terme de terreur, mais ça n'a pas d'importance. Les deux garçons. Vraiment bien. D' accord. Donc c'est à propos de cette chose. Ok, donc si vous allez utiliser et que vous voulez imprimer pour vous-même, vous savez, des trucs sur votre PC. Tu peux utiliser huit bits, ok ? Tout dépend de ce que vous allez mettre sur le terme de terreur ou sur le pot. Donc, il sera correct, vous savez, d'écrire huit bits même si vous allez continuer et écrire ascii, par exemple, et vous allez lire à ce sujet. Vous verrez que les nombres ascii vont être représentés par sept battements, ok, c'est un caractère 7 bits, ok ? Ne les ignorez pas, d'accord ? C' est ce que le, je pense que vous devriez faire. Et maintenant, sur la première, on va envoyer l'âge Carter, OK. Et on va faire tout ce dont on a besoin. D' accord ? Donc ici, on charge les données sur l'émetteur. Nous ne faisons pas de basculer le bit de démarrage et d'arrêt. Le neurotransmetteur doit le faire tout seul. Ok, donc on va envoyer le haut. Et puis on le sera, on peut envoyer ça à ok, donc c'est juste un retour de cartouche et ça va aller, c'est comme une entrée, ok ? Donc, si vous voulez comme personne entrer, vous écrivez bateau si sombre se réunissant, un CR et n lf. Donc, vous le verrez comme mettre fin à la transmission et aller sur une ligne. D' accord ? Donc ça s'appelle CRLF. C' est ce qu'on appelle un flux de ligne ? D'accord. Et ce qu'on appelle le retour de cartouche. Ok, donc c'est juste quelque chose que tu dois savoir. Vous n'avez pas à les imprimer tous les deux, mais ça peut être une bonne chose à faire. Ok, et juste ici, dans ce processus, on vérifiera aussi la transmission gay. Donc, ce sera la deuxième façon de vérifier la transmission. Ok, donc on a un moyen juste ici à l'intérieur de l'émetteur. Nous venons d'implémenter le récepteur Uart K. Bien sûr, si vous utilisez le code comme je vous l'ai dit, vous pouvez ignorer ces indices juste pour la simulation. Et nous avons une autre chose qui, juste, je vais vérifier notre émetteur K. Donc c'est juste, encore une fois, qui prend notre x, c'est que le signal de sortie de l'échelle urétérique. C' est en fait la sortie. Donc, ce processus vérifiera simplement que nous avons des bits de début dans la boucle for. Il faudra 11 par un tous les bits à l'entrée D et juste le mettre au jour sur k. Et il nous montrera quelle valeur avons-nous ici. Bien sûr, il vérifie ici l'arrêt et tout. Et c'est un processus très simple. Ok, continuons et commençons à simuler. Ok, donc ici j'ai le dossier, encore une fois, le nouveau produit. Allons au travail. On peut l'appeler le X. Ça n'a pas vraiment d'importance. D' accord. Ajoutez des fichiers existants. Et pourquoi voulez-vous ajouter les trois fichiers ? D' accord ? L' émetteur et l'émetteur, un banc d'essai, d'accord. Et les sombres RX nous vérifieront que tout va bien. Cliquer avec le bouton droit sur Et ici, à l'intérieur de la bibliothèque, on va travailler. Cliquez avec le bouton droit sur le stimulateur Test-Ban. Et tu devrais juste apparaître. Tout devrait apparaître en ce moment. Il suffit de prendre une seconde et d'écrire u. continuons et ajoutons un diviseur. Donc ce sera notre banc d'essai. Écrivez juste ici. C' est quand on est un émetteur et qu'on écrit ici le récepteur à l'intérieur de l'émetteur, ok ? Nos douleurs à l'intérieur de l'échelle de QI. Donc, vous comprendrez ce que c'est ? Donc c'est le banc d'essai. Juste ici. Nous avons l'émetteur. Ils peuvent appuyer ici pour les noms et juste ici avec le récepteur. D' accord. Maintenant, continuons à tout faire. D' accord ? Alors, qu'est-ce qu'on fait ? Qu' est-ce qu'on voit ? Désolé. Donc, ici, on peut voir qu'on a ajouté les données ici, ok ? Ok, donc ce qu'on veut faire ici, on peut choisir une couleur différente. Laisse-moi prendre celui-là. Ok, ici, maintenant, vous pouvez voir ce qui se passe. Ok, pour que je puisse zoomer. Donc nous avons mis dans l'entrée de données K, les 48 dont nous avons parlé, ok, cet âge, Carter, et nous écrivons dans la voiture là-bas dans l'émetteur. Ok, donc juste ici, à l'intérieur des entrées de l'émetteur, vous verrez qu'à l'entrée et à droite est en train de sauter un. D' accord ? Et que se passe-t-il ? Quand on fait ça ? Jetons un coup d'oeil sur la sortie, ok, sur le cas des tiques va à 0. C' est la partie de départ, d'accord ? Et puis ça commence à envoyer quelque chose, quelque chose, je ne sais pas. En fait, ce qu'on peut faire, gay, ce qu'on peut faire. On peut continuer et le calculer. Je peux juste mettre les curseurs. C' est ce que je voulais dire. On ne peut pas dire ce qu'on a envoyé ici. D' accord. Donc, je peux travailler dur et continuer et mettre, vous savez, avec les curseurs au bon endroit. Et nos droits à la fois est autour de 88, cherche à 8,8 microsecondes. D'accord. Nous pouvons donc en ajouter davantage. Ok, pour que je puisse le mettre ici. D'accord. Et si nous regardions de près le T x à nouveau, un peu continuer et changer le quart des vagues. Ok, laisse-nous aller pour cette maison. Ok, donc vous pouvez voir que c'est 0, la date de début et ensuite 000 001, je suppose que c'est 001. Ok, et ainsi de suite et ainsi de suite. D' accord. Et je peux voir le Stop it. Maintenant. Je ne peux pas vraiment dire ce qu'on envoie ici. D' accord. Maintenant, si je veux voir ce qu'on a envoyé à nouveau, c'est pourquoi on a ajouté ici le récepteur. Ok. Donc, les tripes du récepteur à l'intérieur sont la même chose. D' accord ? Vous avez la même transmission. Et puis sur la sortie, vous pouvez voir l'émetteur qui vient d'être ajouté au pieu tous ces parcours pour que le récepteur vient d'obtenir les transmissions de l'émetteur, ok ? Et bien sûr sur la sortie, vous verrez notre 48. Ça veut dire qu'on a vraiment ça. Ok, comme nous le voulions. Et aussi vous pouvez voir sur le banc d'essai lui-même, donc c'est cette partie juste ici. D' accord ? Donc, c'est juste un processus ici. Donc, sur le doute, d'accord. Vous pouvez voir sont les 48. Donc vous avez nous avons deux processus qui vérifient. D' accord. Nous avons ce processus, d'accord. Sur le banc d'essai lui-même et nous avons le récepteur qui vérifie nos transmissions. Donc, vous pouvez vraiment jeter un oeil sur la prochaine chose que nous allons charger l'affaire. Donc ce sera la prochaine chose que nous allons charger, c'est 69. Et encore une fois, je n'ai même pas à me soucier de ça. D' accord. Donc nous venons d'envoyer 69. D' accord. Donc la transmission envoie 69. Et moi encore, vas-y. Désolé. Je peux juste aller au récepteur, à l' intérieur de l'émetteur et voir qu'il envoie effectivement un 69. Il envoie le 0 d k et il envoie le a k. Jetons un coup d'oeil ici. Ok, donc c'est D et A et bien sûr celui-ci était le 69. Maintenant, c'est en fait comme ça que nous allons tester notre émetteur K. Et c'est tout pour cette conférence. N' oubliez pas de télécharger le fichier Testament de son compteur. Et n'oublie pas le besoin des trois dossiers, ok. Et en fait c'est pour cette conférence, ok ? Et je verrai à la prochaine conférence, continuez et vérifiez-le. D' accord. Vérifiez la prochaine conférence si vous voulez. Tu sais, mon meilleur. Votre émetteur-récepteur, code VHDL. Ok, alors allez voir la prochaine conférence, et c'est tout pour l'instant. Je te verrai à la prochaine conférence et je te remercie. 11. Conférence bonus: Salut tout le monde. Merci d'avoir rejoint mon cours et de l'avoir terminé. Si vous voulez mon code, ce code qui est un code générique, ok ? Donc tu peux choisir tout ce que tu veux, d'accord ? Vous pouvez envoyer beaucoup, beaucoup de backends que nous avons fait. Vous pouvez choisir la taille de la morsure, le nombre de bits d'arrêt et la parité. S' il y aura la parité ou non, le type de pauvreté. Si vous voulez ce code, accord, vous avez ces trois fichiers. Il suffit d'aller sur mon site, vous abonner et vous obtiendrez mon code professionnel. Gay. Je travaille vraiment dur pour ce code. Alors s'il vous plaît, si vous voulez ces codes, vous allez, vous pouvez continuer et vous abonner. Avec cet abonnement, tu auras mes autres cours, des coupons deux à trois fois par mois, d'accord ? Et vous recevrez des mises à jour chaque fois que je vais publier un nouveau cours sur tout ce qui concerne l'électronique, les FPGA, le VHDL, l'Arduino, tout ce que je fais, k. Alors allez sur mon site. Vous pouvez vérifier. N' oubliez pas de rejoindre notre groupe de deck Telegram. Et vous pouvez également vous abonner et rejoindre mon groupe Facebook et faire ma chaîne YouTube. Et c'est l'ouvert rejoint le cours. Si vous avez des questions, n'hésitez pas à m'envoyer un message. Et bien sûr, j' apprécierai vraiment si vous passez en revue mon cours ou laissez le commentaire, d'accord ? Et c'est tout pour l'instant, accord, je vais profiter. J' ai apprécié le cours et j'espère vous voir sur mes autres cours. Ok, alors va voir mes autres cours. Donc, je vais publier de nouveaux cours sur d'autres protocoles de communication. Donc, vous pouvez aussi, donc si vous voulez être mis à jour à leur sujet, donc il ya aller et abonnez-vous, OK. Vous recevrez un appareil juste après l'abonnement, d'accord. Donc, partout où vous vous abonnez, nous aurons ces fichiers. Peu importe quand. Et c'est pour l'instant. Je te verrai sur mes prochains cours. Merci d'avoir rejoint ce cours.