Re: 32 Digital-Eingänge? Kategorie: CC2-Unit & Appl.Board / CC2-Station (von joe - 8.09.2004 19:27) | ||
Als Antwort auf Re: 32 Digital-Eingänge? von André H. - 6.09.2004 21:00 | ||
| ||
> Hallo joe, Erst mal Dank und Anerkennung an André für die Hilfe und Bereitschaft das Forum zu pflegen. Das mit sbuf[6]=out; sbuf[7]=out shr 8; sbuf[8]=inp; sbuf[9]=inp shr 8 funzt nicht. bekomm immer noch (inp=0 und out=0). mfg joe > > > Wenn ich einen Schalter an P0 ... P7(i2c-max7311-board ) betätige, wird der Portinhalt richtig über > > die Funktion showports angezeigt und richtig über die RS232 übertragen. > > Beim Drücken bzw. Loslassen eines Schalters P8...P15(i2c-max7311-board ) wird > > der PortInhalt RICHTIG angezeigt, > > ABER via RS232 NICHT RICHTIG übertragen, d.h. es kommt immer eine 0 (inp=0 und out=0)rüber. > > Ich verstehs nicht, was mach ich nur falsch. > > ... > > > > byte sbuf[12]; > > int inp, new, out; > > byte flag; > > system.TIME time; > > > > thread main > > { // Initialisierung > > ... > > sbuf[6]=out; > > sbuf[8]=inp ; > > sbuf[10]=13; > > sbuf[11]=10; > >... > > Das ist ja klar, da� dies so nicht funzt. ;-) > Fällt es Dir so auf ? > Du willst out und inp, beides Integer, in sbuf[], ein Byte-Array, schreiben. > Wenn Du das aber so machst, dann werden nur jeweils die unteren 8 Bit > in sbuf[] gespeichert. > Du mu�t dies dann schon so schreiben: > sbuf[6]=out; > sbuf[7]=out shr 8; > sbuf[8]=inp; > sbuf[9]=inp shr 8; > > Dann funzts. ;-) > �brigens, bei der Jahreszahl passiert dasselbe. (sbuf[2]=system.year();) > > Du könntest es aber auch so schreiben, und auf einen Datenrahmen verzichten: > hwcom.put(system.day()); > hwcom.put(system.month()); > hwcom.putint(system.year()); > hwcom.put(time.hour); > hwcom.put(time.minute); > hwcom.put(time.second); > hwcom.putint(out); > hwcom.putint(inp); > hwcom.ret(); > Allerdings mu�t Du hier beachten, da� integer bei hwcom.putint() mit MSB first gesendet werden ! > > > MfG André H. > | ||
Antwort schreiben Antworten: Re: 32 Digital-Eingänge? (von joe - 8.09.2004 21:18) |