Ich habe einige Links besucht und nach einigen Beispielprogrammen für die I2C-Programmierung gesucht. Ich möchte meinen eigenen Code für das I2C-Protokoll schreiben. Angenommen, DS1307 RTC und LCD sind mit 8051 verbunden. Ich benutze die Keil-Software, um ein C-Programm zu schreiben. Es ist sehr schwierig für mich ganzes Programm von I2C zu schreiben, also habe ich versuchte Programm in kleinen Teilen zu brechen:Wie funktioniert das I2C-Protokoll?
- Modul 1: definieren und Stifte für LCD und DS1307 RTC
- Modul 2: Schreiben Sie C-Code für DS1307 (stellen Funktionen für DS1307 wie lesen, schreiben)
- Modul 3: write C-Code für LCD (Daten-, Befehls- initialisieren, usw.)
- Modul 4: Hauptfunktion
ich verstehe Modul 1, aber Ich suche Hilfe, um Modul zu verstehen e 2. Also nochmal ich will Modul 2 in kleinen Teilen zerlegen.
Wie wird das Modul 2 in kleinen Teilen zum leichteren Verständnis unterbrochen? Wie viele Funktionen sollten in Modul2 sein?
Der 8051 selbst enthält keinen I2C-Controller. Es gibt viele Geräte, die einen 8051 zusammen mit anderen Chips auf dem Chip, z.B. ein I2C-Controller. Was ist dein Fall? Wenn Ihr Chip nicht über einen integrierten I2C-Controller verfügt, müssen Sie Bit-Bang mit den nativen 8051-Ports durchführen. Versuchen Sie, das Netz nach etwas wie "8051 bit bang I2C" zu suchen. Es gibt Ihnen mehrere Codebeispiele, z.B. https://www.8051projects.net/wiki/I2C_Implementation_on_8051 Wenn Ihr Chip einen I2C-Controller enthält, wird Ihnen das Datenblatt erklären, wie Sie es verwenden. – 4386427