Hallo,
ich habe folgenden Code bei meinem HI-Tech PICC-18 Compiler gefunden:
(unter sources/plib/i2c/i2c_writ.c)
1 | * Function Name: WriteI2C *
|
...
1 | unsigned char WriteI2C( unsigned char data_out )
|
2 | {
|
3 | ...
|
4 | if ( WCOL ) // test if write collision occurred
|
5 | return ( -1 ); // if WCOL bit is set return negative #
|
6 | ...
|
7 | if ( ACKSTAT ) // test for ACK condition received
|
8 | return ( -2 );
|
9 | else return ( 0 ); // if WCOL bit is not set return
|
10 | ...
|
11 | }
|
(habe nur ein paar Zeilen gepostet, die wichtig sind für das Problem)
Ich frage mich nun, weil der Compiler auch meckert, wenn ich diese
Funktion einbinde und im Programm den Rückgabewert gegen "-1" teste, ob
hier der Rückgabetyp nicht viel eher "signed char" sein sollte??
Sonst machen auch die "return ( -1 )" bzw. "-2"-Zeilen keinen Sinn,
oder?