Hi, Habe zwei Max 7221 an einen Mega 128. der 2.Max ist am Dout des ersten Verbunden. CS sind untereinander verbunden. Nun meine Frage. im datenblatt steht drin das man x No-Ops senden muß für den jeweiligen nachkaskadierten MAX. zb bei drei MAX den dritten ansprechen muß ich 2x no-op senden. wie mache ich das. Es steht drinn das man erst die 16bit senden soll und gefolgt von den jeweiligen no-ops. Nei mir wäre es ja immer nur ein no-op(0x00). so siehts nei mir aus void write_7219(unsigned char adresse,unsigned char data,unsigned short int drv) { if(drv==0) { //led_cs_low(); SPI_led_on(); SEG_cs_low(); Write_SPI(adresse); Write_SPI(data); SEG_cs_high(); SPI_led_OFF(); } if(drv==1) { //led_cs_low(); SPI_led_on(); SEG_cs_high(); Write_SPI(adresse); Write_SPI(data); Write_SPI(0x00);//no op für ersten MAX SEG_cs_high(); SPI_led_OFF(); } } es geht aber immer nur der erste MAX Danke für eure Hilfe
genau so ist es. Wenn du den 2.ansprechen willst sendest die die ersten 16 Bit und dann einen No OP für den 1. MAX ( alles vom uC aus egsehen) du schiebst also 32 Bit raus.
Ja, nach genauern studieren im DB stehts ja auch drinn. The no-op register is used when cascading MAX7219s or MAX7221s. Connect all devices’ LOAD/CS inputs together and connect DOUT to DIN on adjacent devices. DOUT is a CMOS logic-level output that easily drives DIN of successively cascaded parts. (Refer to the Serial Addressing Modes section for detailed information on serial input/output timing.) For example, if four MAX7219s are cascaded, then to write to the fourth chip, sent the desired 16-bit word, followed by three no-op codes (hex 0xXX0X, see Table 2). When LOAD/CS goes high, data is latched in all devices. The first three chips receive no-op commands, and the fourth receives the intended data. ich muß bei 2 Max den ersten der ja als letztes gesendet und als erstes ausgewertet wird ein 0x00 und ein 0x00 senden. So jetzt gehts Vielen Dank Man muß nur lesen und verstehen können.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.