Outils pour utilisateurs

Outils du site


start:arduino:nrf24l01:probleme_courant_nrf24l01

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
start:arduino:nrf24l01:probleme_courant_nrf24l01 [2022/05/23 07:02] gerardadminstart:arduino:nrf24l01:probleme_courant_nrf24l01 [2023/01/27 16:08] (Version actuelle) – modification externe 127.0.0.1
Ligne 13: Ligne 13:
 Émetteurs-récepteurs nRF24L01 : Émetteurs-récepteurs nRF24L01 :
  
--- `RF24::setAddressWidth()` +   -- `RF24::setAddressWidth()` 
--- `RF24::setChannel()` +   -- `RF24::setChannel()` 
--- `RF24::setDataRate()` +   -- `RF24::setDataRate()` 
--- `RF24::setAutoAck()` +   -- `RF24::setAutoAck()` 
--- `RF24::enableDynamicPayloads()` ou `RF24::disableDynamicPayloads()` +   -- `RF24::enableDynamicPayloads()` ou `RF24::disableDynamicPayloads()` 
--- `RF24::enableAckPayload()` ou `RF24::disableAckPayload()` (nécessite auto-ack etfonctionnalités de charges utiles dynamiques) +   -- `RF24::enableAckPayload()` ou `RF24::disableAckPayload()` (nécessite auto-ack etfonctionnalités de charges utiles dynamiques) 
--- `RF24::setPayloadSize()` (uniquement si la fonctionnalité de charges utiles dynamiques est désactivée -- elle est désactivée par défaut) +   -- `RF24::setPayloadSize()` (uniquement la fonctionnalité de charges utiles dynamiques est désactivée -- elle est désactivée par défaut) 
--- `RF24::setCRCLength()` ou `RF24::disableCRC()` (la fonction de confirmation automatique active automatiquement le CRC car il est obligatoire)+   -- `RF24::setCRCLength()` ou `RF24::disableCRC()` (la fonction de confirmation automatique active automatiquement le CRC car il est obligatoire)
  
-En outre, il est utile de considérer une adresse comme un chemin (un itinéraire communément partagé) +En outre, il est utile de considérer une adresse comme un chemin (un itinéraire communément partagé) au lieu d'une destination d'appareil d'identification. Cela signifie que les adresses doivent correspondre pour qu'une charge utile se déplace d'un émetteur-récepteur à un autre.
-au lieu d'une destination d'appareil d'identification. Cela signifie que les adresses +
-doivent correspondre pour qu'une charge utile se déplace d'un émetteur-récepteur à un autre+
-Cependant, les numéros de tuyau attribués avec l'adresse correspondante n'ont pas +
-correspondre. Vous pouvez considérer les tuyaux comme des places de stationnement pour les paquets, tandis que +
-toutes les charges utiles des paquets vivent dans un tampon FIFO TX ou RX. Rappelez-vous que le +
-Les tampons TX FIFO et les tampons RX FIFO ont tous deux une occupation maximale de +
-3 charges utiles (indépendamment de la taille maximale de la charge utile de 32 octets).+
  
-## Utilisation interdite de write*() dans les rappels de la routine de service d'interruption+Cependant, les numéros de tuyau attribués avec l'adresse correspondante n'ont pas correspondre.  
 +Vous pouvez considérer les tuyaux comme des places de stationnement pour les paquets, tandis que toutes les charges utiles des paquets vivent dans un tampon FIFO TX ou RX. Rappelez-vous que le Les tampons TX FIFO et les tampons RX FIFO ont tous deux une occupation maximale de 3 charges utiles (indépendamment de la taille maximale de la charge utile de 32 octets). 
 + 
 + 
 + 
 +==== Utilisation interdite de write*() dans les rappels de la routine de service d'interruption====
  
 Étant donné que la bibliothèque RF24 utilise `millis()` pour implémenter un délai d'attente et `delay()` pour les temps d'attente obligatoires, les fonctions suivantes ne peuvent pas être utilisées dans une méthode de rappel ISR : Étant donné que la bibliothèque RF24 utilise `millis()` pour implémenter un délai d'attente et `delay()` pour les temps d'attente obligatoires, les fonctions suivantes ne peuvent pas être utilisées dans une méthode de rappel ISR :
  
-- `RF24::write()` +    -- `RF24::write()` 
-- `RF24::writeBlocking()` +    -- `RF24::writeBlocking()` 
-- `RF24::writeFast()` +    -- `RF24::writeFast()` 
-- `RF24::startWrite()` +    -- `RF24::startWrite()` 
-- `RF24::txStandBy()` & `RF24::txStandBy(uint32_t, bool)` +    -- `RF24::txStandBy()` & `RF24::txStandBy(uint32_t, bool)` 
-- `RF24::powerUp()` +    -- `RF24::powerUp()` 
-- `RF24::startListening()` +    -- `RF24::startListening()` 
-- `RF24::stopListening()`+    -- `RF24::stopListening()`
  
 @voir la note dans la documentation pour `RF24::available()`. @voir la note dans la documentation pour `RF24::available()`.
  
-Plus d'informations sur les raisons pour lesquelles vous ne pouvez pas appeler `millis()` (ou `delay()`) à partir d'une fonction de rappel ISR sont disponibles sur [the Arduino docs](https://www.google.com/url?sa= t&source=web&rct=j&url=https://www.arduino.cc/reference/en/language/functions/external-interrupts/attachinterrupt/&ved=2ahUKEwjMhtSRl5jzAhVUsp4KHWIPCrIQFnoECAoQAQ&usg=AOvVaw1X9H0058Nz7Hck91VIC3bD).+Plus d'informations sur les raisons pour lesquelles vous ne pouvez pas appeler `millis()` (ou `delay()`) à partir d'une fonction de rappel ISR sont disponibles sur [the Arduino docs] 
 +(https://www.google.com/url?sa= t&source=web&rct=j&url=https://www.arduino.cc/reference/en/language/functions/external-interrupts/attachinterrupt/&ved=2ahUKEwjMhtSRl5jzAhVUsp4KHWIPCrIQFnoECAoQAQ&usg=AOvVaw1X9H0058Nz7Hck91VIC3bD).
  
 ## Voici les problèmes les plus courants et leurs solutions ## Voici les problèmes les plus courants et leurs solutions
/home/chanteri/www/fablab37110/data/attic/start/arduino/nrf24l01/probleme_courant_nrf24l01.1653282154.txt.gz · Dernière modification : 2023/01/27 16:08 (modification externe)