TotalPhase-Blog-Erlebniswelten

Envoyer de grandes transactions de données avec l'adaptateur hôte Aardvark

Question du client

Comment puis-je envoyer de grandes transactions de données de plus de 64 kBytes avec l'adaptateur hôte Aardvark I2C / SPI ?

Pour un scénario de communication, l'API du logiciel Aardvark est utilisée pour les transactions de données. Voici l'appel : aa_i2c_write (handle, deviceAddress, AA_I "C_NO_FLAGS, numbytes, pufferin).

Maintenant, si numbytes=300 est défini, il y a une restriction lors de l'envoi de données en raison de la taille du tampon. 

Réponse

Sur l'adaptateur hôte Aardvark, la taille de la mémoire tampon est de 64 octets. Par conséquent, la réponse maximale de l'esclave est également de 64 octets. Cependant, les transactions peuvent être beaucoup plus grandes. 

La taille des tampons I2C et SPI est de 16 kBytes chacun, ils peuvent contenir plusieurs transactions séparées. Ces tampons ne sont utilisés que lorsqu'un appel à l'API Aardvark est impliqué. Cette taille de tampon est adaptée à l'utilisation dans ce cas, car la limite totale pour les messages asynchrones dépend de la taille de tampon interne du système d'exploitation. L'adaptateur Aardvark peut envoyer et recevoir de manière fiable des transactions de 4 kByte maximum en tant que maître ou esclave I2C/SPI. Cela est dû à des problèmes de système d'exploitation et aux caractéristiques de duplex intégral de la signalisation SPI. 

Lorsque l'adaptateur Aardvark est configuré pour des opérations d'écriture maître, la taille maximale des messages, en utilisant l'adressage 7 bits, est de 64 kBytes (65535) et, en utilisant l'adressage 10 bits, de 64 kBytes (65534). Cela représente la taille maximale des données d'une transaction, si la taille des données est plus grande, il faut faire plusieurs transactions séparées. 

Tu trouveras plus d'informations dans l'article Adressage esclave I2C 7 bits, 8 bits et 10 bits.

Note que le nombre d'octets qui peuvent être écrits dans l'appel API aa_i2c_write est de 65535.

Outils de programmation et de débogage I2C

Adaptateur hôte I2C/SPI AardvarkAdaptateur hôte I2C/SPI Aardvark
Adaptateur hôte I2C/SPI Aardvark
TP240141
L'adaptateur hôte Aardvark I2C/SPI est un outil innovant pour l'utilisation avec les systèmes de bus I2C & SPI.

309,00 €*
Beagle I2C/SPI Protokoll Analyzer - Total Phase
Analyseur de protocole I2C/SPI Beagle
TP320121
L'analyseur de protocole I2C/SPI Beagle est un adaptateur hôte de bus I2C et SPI rapide et puissant via USB

369,00 €*
Plateforme universelle Promira I2C/ SPI/ eSPI
TP500110-S
La plateforme universelle Promira I2C/SPI/eSPI peut être utilisée pour une multitude d'applications

Variantes de 900,00 €*
1 060,00 €*