Stap 3: Vaststelling van kanalen voor communicatie - vervolg
Het eerste ding dat we moeten is het adres van de slaaf. Deze zeven bits nummer identificeert een bepaald apparaat zodat de meester wat het nodig heeft om te communiceren weet met slaaf.
Vanuit het gegevensblad van de SSD1306 , kan het adres van de slaaf voor dit stuurprogramma worden "0111100" of "0111101" afhankelijk van SA0 (of het nu hoog of laag). De standaardwaarde is hoog, maar als u wenst om de slave-adres te wijzigen, u kunt draad SA0 tot en met eventuele digitale pin in de Arduino en stel deze in op nul. In deze tutorial hebben we besloten niet te veranderen SA0, het adres van onze slaaf is dus 0x3D. Omdat de OLED zal altijd worden in schrijfmodus, de R / W # bit (lezen/schrijven bits) is ingesteld op "0."
Het volgende ding dat we moeten is de controle byte. Dit wordt gedefinieerd door Co (voortzetting bits) en D / C# (opdracht gegevens/selectie bit), gevolgd door zes "0s." Co bepaalt of de volgende byte is gonna be één byte, of een stroom bytes, terwijl D / C# bepaalt als de byte is gonna worden behandeld als gegevens of een opdracht. Dus, we eindigen met vier mogelijke controle bytes:
- 0x40: data stream
- 0xC0: enkele gegevensbyte
- 0x80: één opdracht byte
- 0x00: opdracht Stream
U vindt een lijst met opdrachten in tabel 9-1 in het gegevensblad van de SSD1306.