Beste forum gebruikers,
Om met de deur in huis tevallen,zal ik mijn probleem even
uitleggen:
de bedoeling is een I2C bus temaken volgens het master-slave principe.
Ik beschik over 5 onafhankelijke microcontroller gestuurde circuits met keypad en LCD deze zijn de slaves type microcontrollers AT89c4051.
Alle informatie die deze circuits (slaves) moeten door geven,gaan naar een master opgebouwd met een microcontroller (A) type AT89S8252 slave/master op basis van poling
welke eveneens een draadlose communicatie moet leggen met een opafstand geplaatst circuit met eveneens een microcontroller (
van het type AT89S8252 slave/master.
Mijn bedoeling zou zijn,een interupt tedoen via de I2C bus van uit de microcontroller (A) welke hier als master fungeert te communiceren met de 5 slaves welke een verschillend adres hebben .
De reden waarom ik een I2C BUS wil gebruiken is het beperkt aantal ingangs/uigangs pinnen van de AT89c4051 welke momenteel reeds gebruikt zijn voor de LCD en Keypad.
LCD is aangesloten in 4Bit mode ,en het keypad heeft een serial uitgang + interupt voor de controller
Deze slaves staan ongeveer 5 meter van elkaar.
Mijn vragen zijn:
1) heeft iemand hier ervaring mee
2) Code voorbeelden voor master/slave I2C heb reeds verschillende internetsites bekeken o.a.(Philips)
note: ik wens geen extra ic's op de slaves PCB's teplaatsen
enkel twee signalen SDA en SCL voor I2C communicatie.
Wat ik dacht:
De Master(A) stuurt een interupt naar alle slaves (5)op het zelfde moment,de interupt routine in de slaves wordt opgehaald deze wachten 100µs gedurende deze tijd gaat de master een adres verzenden naar de slaves (5) deze zullen op hun beurt het adres opgestuurd door de master in een register "Address?" plaatsen en vergelijken met hun eigen aders komt dit overeen met een van de 5 slaves dan zal de slave met het juiste adres zijn informatie door geven aan
de master (A) alle andere slaves zullen een RTI geven en hun werkzaamheden verder zetten.
vraag:
1) welke geteste code bestaat hier voor?
graag info, werkt nog met assembler code A51
In de hoop u allen een beeld te hebben gegeven
groeten
Marina
Om met de deur in huis tevallen,zal ik mijn probleem even
uitleggen:
de bedoeling is een I2C bus temaken volgens het master-slave principe.
Ik beschik over 5 onafhankelijke microcontroller gestuurde circuits met keypad en LCD deze zijn de slaves type microcontrollers AT89c4051.
Alle informatie die deze circuits (slaves) moeten door geven,gaan naar een master opgebouwd met een microcontroller (A) type AT89S8252 slave/master op basis van poling
welke eveneens een draadlose communicatie moet leggen met een opafstand geplaatst circuit met eveneens een microcontroller (
Mijn bedoeling zou zijn,een interupt tedoen via de I2C bus van uit de microcontroller (A) welke hier als master fungeert te communiceren met de 5 slaves welke een verschillend adres hebben .
De reden waarom ik een I2C BUS wil gebruiken is het beperkt aantal ingangs/uigangs pinnen van de AT89c4051 welke momenteel reeds gebruikt zijn voor de LCD en Keypad.
LCD is aangesloten in 4Bit mode ,en het keypad heeft een serial uitgang + interupt voor de controller
Deze slaves staan ongeveer 5 meter van elkaar.
Mijn vragen zijn:
1) heeft iemand hier ervaring mee
2) Code voorbeelden voor master/slave I2C heb reeds verschillende internetsites bekeken o.a.(Philips)
note: ik wens geen extra ic's op de slaves PCB's teplaatsen
enkel twee signalen SDA en SCL voor I2C communicatie.
Wat ik dacht:
De Master(A) stuurt een interupt naar alle slaves (5)op het zelfde moment,de interupt routine in de slaves wordt opgehaald deze wachten 100µs gedurende deze tijd gaat de master een adres verzenden naar de slaves (5) deze zullen op hun beurt het adres opgestuurd door de master in een register "Address?" plaatsen en vergelijken met hun eigen aders komt dit overeen met een van de 5 slaves dan zal de slave met het juiste adres zijn informatie door geven aan
de master (A) alle andere slaves zullen een RTI geven en hun werkzaamheden verder zetten.
vraag:
1) welke geteste code bestaat hier voor?
graag info, werkt nog met assembler code A51
In de hoop u allen een beeld te hebben gegeven
groeten
Marina
