Question

Je ne parviens pas à lire les données série du microcontrôleur ARM LPC2378. Devrai-je utiliser UART ou tout autre port GPIO peut être utilisé? ayone at-il le code c pour cela ??

Était-ce utile?

La solution

Il est techniquement possible d'utiliser un port GPIO, mais votre logiciel est alors responsable du minutage des bits, du cadrage, de la vérification des erreurs, etc. Il est souvent appelé " bit-banging " , car votre code doit en faire tout le temps et nécessite donc beaucoup de ressources de calcul. Pour des débits de données inférieurs, vous pouvez l’exécuter à partir d’une interruption de la minuterie.

L’utilisation d’un UART est beaucoup plus simple: l’UART effectue le travail difficile en ce qui concerne la synchronisation des bits, le cadrage, la vérification des erreurs, etc.

Selon la la fiche technique LPC2378 , le microcontrôleur comporte 4 UART. Donc, utiliser un UART est la voie à suivre. Sur quelle broche vos données de série vont-elles arriver? Les données série doivent être connectées à une broche pouvant être connectée à l'un des 4 UART. Vous devrez configurer certains registres sur le microcontrôleur pour le configurer pour une utilisation UART:

  • Activer l'UART et ses paramètres (de nombreux paramètres sont disponibles)
  • Définissez quelle broche est l'entrée pour l'UART (peut-être)
  • Quelques autres paramètres de broches

Dans un premier temps, vous pouvez essayer d’interroger l’UART - lisez son "octet RX disponible". jusqu'à ce qu'il soit indiqué "il y a un octet disponible", puis lisez l'octet dans le registre d'octets reçu. Lisez également le registre d'indicateurs d'erreur RX pour voir s'il y a des erreurs.

Une fois que cela fonctionne, vous pouvez faire en sorte que les interruptions RX fonctionnent. Une interruption de réception est générée pour traiter les données entrantes.

Ce genre de chose nécessite un peu de temps de lecture dans la manuel de l'utilisateur et fiche technique . Profitez!

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top