Skip to content

tipsI2C

HarryBroeders edited this page Sep 30, 2021 · 3 revisions

Tips bij opdracht 3.2.4 van EMS20

Bij opdracht 3.2.4 ga je de TMP006 temperatuursensor op je CC3220S LaunchPad uitlezen via de I2C-bus. Je maakt daarbij gebruik van de I2C-driver uit de SimpleLink SDK.

Als je deze opdracht lastig vind, dan krijg je hier enkele tips!

  • Lees de datasheet van de sensor [https://media.digikey.com/pdf/Data Sheets/Texas Instruments PDFs/TMP006(B).pdf](https://media.digikey.com/pdf/Data Sheets/Texas Instruments PDFs/TMP006(B).pdf) nog eens goed door! Vooral paragraaf 8.3.8.2 waarin uitgelegd wordt hoe je registers (die zich in de sensor bevinden) kunt lezen via I2C. Want je wil om te beginnen het manifacturer register (zie paragraaf 8.5) uitlezen (daar staat namelijk TI in).

  • Om I2C aan de praat te krijgen kun je https://dev.ti.com/tirex/explore/content/simplelink_cc32xx_sdk_5_20_00_06/docs/drivers/doxygen/html/_i2_c_8h.html nog eens goed bestuderen. Kijk vooral naar: "Opening the I2C Driver" en "Writing two bytes and reading four bytes in a single transaction". In dat laatste stukje zit een fout. Je moet i2cTransaction->status vervangen door i2cTransaction.status. Natuurlijk moet jij het slaveAddress nog aanpassen en andere data (en een andere hoeveelheid bytes) versturen, ook moet je een andere hoeveelheid bytes ontvangen. Maar dat staat uitgelegd in de datasheet van de sensor.

Clone this wiki locally