Zitat Zitat von SlyD
Schau Dir mal

void task_commandProcessor(void)

an.
Da einfach nen neues Kommando hinzufügen (neuen case) in dem halt irgendwas gemacht wird active = param1 z.B.
Der Aufruf geht dann genauso wie bei CMD_SETLEDS.

MfG,
SlyD

Hallöle genau daran scheiter ich grad.
Evtl hab ich was übersehen.

Ich hab zwei neue CMD's definiert

#define CMD_REMOTE_ON 13
#define CMD_REMOTE_OFF 14

sowohl im M32 als auch in der Base.

im task_commandProcessor der Base (gibt es ja nur da) hab ich au noch 2 neue Fälle eingebaut:

Code:
			case CMD_REMOTE_ON:
                remote_control=true;
                break;
            case CMD_REMOTE_OFF:
                remote_control=false;
                break;
die Variable remote_control hab ich au noch definiert.

Im Hauptprogramm des M32 setze ich diese Varible dann mit

Code:
I2CTWI_transmitByte(I2C_RP6_BASE_ADR, CMD_REMOTE_ON);
bzw
I2CTWI_transmitByte(I2C_RP6_BASE_ADR, CMD_REMOTE_OFF);
und in der Base wird die mittels einer if-abfrage
if ( ( remote_control == false) ) {}
else {}
verwendet.

Nur irgendwie klappt das nicht so wie es soll.
Er rennt immer in die if-Abfrage rein als ob remote_control immer auf false wär.

Die I2C Adresse der Base ist auch in beiden Programmen gleich.