summaryrefslogtreecommitdiff
path: root/usb-i2c-sl018
diff options
context:
space:
mode:
authorChristian Pointner <equinox@spreadspace.org>2013-01-30 02:58:31 +0000
committerChristian Pointner <equinox@spreadspace.org>2013-01-30 02:58:31 +0000
commit692291e71659daa49d9b3254583a6c53a7fc75dc (patch)
tree11db88f3e95a08646659314ff922af7d9efdbe76 /usb-i2c-sl018
parentfurther cleanup (diff)
some more refactoring
git-svn-id: https://svn.spreadspace.org/avr/trunk@105 aa12f405-d877-488e-9caf-2d797e2a1cc7
Diffstat (limited to 'usb-i2c-sl018')
-rw-r--r--usb-i2c-sl018/tuer-rfid.c38
1 files changed, 19 insertions, 19 deletions
diff --git a/usb-i2c-sl018/tuer-rfid.c b/usb-i2c-sl018/tuer-rfid.c
index 65d4a3d..1f11a93 100644
--- a/usb-i2c-sl018/tuer-rfid.c
+++ b/usb-i2c-sl018/tuer-rfid.c
@@ -82,11 +82,11 @@ const char* SL018_status_tostring(const uint8_t status)
}
}
-const uint8_t SL018_CMD_ComSelectCard[] ={1,0x01};
-const uint8_t SL018_CMD_ComRedLedOn[] ={2,0x40,1};
-const uint8_t SL018_CMD_ComRedLedOff[] ={2,0x40,0};
-const uint8_t SL018_CMD_ComGetFirmwareVersion[] ={1,0xF0};
-const uint8_t SL018_CMD_ComReset[] ={1,0xFF};
+const uint8_t SL018_CMD_ComSelectCard[] = {1,0x01};
+const uint8_t SL018_CMD_ComRedLedOn[] = {2,0x40,1};
+const uint8_t SL018_CMD_ComRedLedOff[] = {2,0x40,0};
+const uint8_t SL018_CMD_ComGetFirmwareVersion[] = {1,0xF0};
+const uint8_t SL018_CMD_ComReset[] = {1,0xFF};
uint8_t twi_recv_buf[256];
typedef struct __attribute__((__packed__))
@@ -171,7 +171,7 @@ int16_t stdio_bytes_received(void)
return (int16_t)Serial_IsCharReceived();
}
-bool sl018_cmd_raw(const uint8_t* twi_send_buf, bool wait_for_answer)
+uint8_t sl018_cmd_raw(const uint8_t* twi_send_buf, bool wait_for_answer)
{
uint8_t pos = 0;
@@ -205,35 +205,35 @@ bool sl018_cmd_raw(const uint8_t* twi_send_buf, bool wait_for_answer)
return 0;
}
-bool sl018_reset(void)
+uint8_t sl018_reset(void)
{
if(sl018_cmd_raw(SL018_CMD_ComReset, 0)) {
fprintf(stdio, "I2C error\n\r");
- return 0;
+ return 1;
}
- return 1;
+ return 0;
}
-bool sl018_cmd(const uint8_t* twi_send_buf)
+uint8_t sl018_cmd(const uint8_t* twi_send_buf)
{
if(sl018_cmd_raw(twi_send_buf, 1)) {
fprintf(stdio, "I2C error\n\r");
- return 0;
+ return 1;
} else {
if(twi_recv_msg->len < 2) {
fprintf(stdio,"SL018 Cmd,Error: short message received\n\r");
- return 0;
+ return 1;
}
if(twi_recv_msg->status) {
fprintf(stdio,"SL018 Cmd,Error: '%s','%s'\n\r",SL018_cmd_tostring(twi_recv_msg->command),SL018_status_tostring(twi_recv_msg->status));
- return 0;
+ return 1;
}
sl018_message_t * twi_send_msg = (sl018_message_t *)twi_send_buf;
if(twi_send_msg->command != twi_recv_msg->command) {
fprintf(stdio,"SL018 Cmd,Error: mismatch of sent and received command code: %02X,%02X\n\r",twi_send_msg->command,twi_recv_msg->command);
}
}
- return 1;
+ return 0;
}
@@ -288,19 +288,19 @@ void handle_stdio(uint8_t cmd)
reset2bootloader();
break;
case '0':
- if(sl018_reset())
+ if(!sl018_reset())
fprintf(stdio, "ok\n\r");
break;
case 'f': //get cardreader firmware version
- if(sl018_cmd(SL018_CMD_ComGetFirmwareVersion))
+ if(!sl018_cmd(SL018_CMD_ComGetFirmwareVersion))
fprintf(stdio, "%s\n\r",twi_recv_msg->data);
break;
case '4': //turn cardreader led off
- if(sl018_cmd(SL018_CMD_ComRedLedOff))
+ if(!sl018_cmd(SL018_CMD_ComRedLedOff))
fprintf(stdio, "ok\n\r");
break;
case '5': //turn cardreader led on
- if(sl018_cmd(SL018_CMD_ComRedLedOn))
+ if(!sl018_cmd(SL018_CMD_ComRedLedOn))
fprintf(stdio, "ok\n\r");
break;
case 'e': //flash eeprom
@@ -356,7 +356,7 @@ void handle_card(void)
{
uint8_t pos;
fprintf(stdio, "CARD IN: ");
- if(sl018_cmd(SL018_CMD_ComSelectCard))
+ if(!sl018_cmd(SL018_CMD_ComSelectCard))
{
uint8_t uid_len = twi_recv_msg->len - sizeof(twi_recv_msg->command) - sizeof(twi_recv_msg->status) - 1;
if(uid_len == 255 || uid_len > sizeof(keyslot_t) - 1) {