From 3fb7cae1a71c87c719894d220bd4a0651a9402e7 Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Wed, 6 Feb 2013 22:00:08 +0000 Subject: entire code now uses stdin and stdout (no stdio any more) git-svn-id: https://svn.spreadspace.org/avr/trunk@137 aa12f405-d877-488e-9caf-2d797e2a1cc7 --- usb-i2c-sl018/sl018.c | 44 +++++++++++++++++++++++--------------------- 1 file changed, 23 insertions(+), 21 deletions(-) (limited to 'usb-i2c-sl018/sl018.c') diff --git a/usb-i2c-sl018/sl018.c b/usb-i2c-sl018/sl018.c index 7127f12..68d8745 100644 --- a/usb-i2c-sl018/sl018.c +++ b/usb-i2c-sl018/sl018.c @@ -20,8 +20,10 @@ * You should have received a copy of the GNU General Public License * along with spreadspace avr utils. If not, see . */ + #include "sl018.h" #include "LUFA/Drivers/Peripheral/TWI.h" +#include #define SL018_TWI_ADDR 0xA0 #define SL018_TAG_STA_PIN PIND @@ -149,78 +151,78 @@ uint8_t sl018_cmd_raw(const uint8_t* twi_send_buf, bool wait_for_answer) return 0; } -uint8_t sl018_reset(FILE * stdio) +uint8_t sl018_reset(void) { if(sl018_cmd_raw(SL018_CMD_ComReset, 0)) { - fprintf(stdio, "I2C error\n\r"); + printf("I2C error\n\r"); return 1; } return 0; } -uint8_t sl018_cmd(const uint8_t* twi_send_buf, FILE * stdio) +uint8_t sl018_cmd(const uint8_t* twi_send_buf) { if(sl018_cmd_raw(twi_send_buf, 1)) { - fprintf(stdio, "I2C error\n\r"); + printf("I2C error\n\r"); return 1; } else { if(twi_recv_msg->len < 2) { - fprintf(stdio,"SL018 Cmd,Error: short message received\n\r"); + printf("SL018 Cmd,Error: short message received\n\r"); 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)); + printf("SL018 Cmd,Error: '%s','%s'\n\r",SL018_cmd_tostring(twi_recv_msg->command),SL018_status_tostring(twi_recv_msg->status)); 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); + printf("SL018 Cmd,Error: mismatch of sent and received command code: %02X,%02X\n\r",twi_send_msg->command,twi_recv_msg->command); } } return 0; } -void sl018_read_card_uid(uid_t * uid, FILE * stdio) +void sl018_read_card_uid(uid_t * uid) { uid->length=0; uid->buffer=NULL; - fprintf(stdio, "CARD IN: "); - if(!sl018_cmd(SL018_CMD_ComSelectCard,stdio)) + printf( "CARD IN: "); + 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 > MAX_UID_LEN) { - fprintf(stdio," received UID length (%d) is to big for keystore \n\r", uid_len); + printf(" received UID length (%d) is to big for keystore \n\r", uid_len); return; } uint8_t type = twi_recv_msg->data[uid_len]; uint8_t expected_uid_len = SL018_tagtype_to_uidlen(type); if(expected_uid_len != uid_len) { - fprintf(stdio," Invalid uid length (%d) for tag type: %s\n\r", uid_len, SL018_tagtype_tostring(type)); + printf(" Invalid uid length (%d) for tag type: %s\n\r", uid_len, SL018_tagtype_tostring(type)); return; } for (uint8_t pos=0; posdata[uid_len-pos-1]); - fprintf(stdio, ", %s\n\r", SL018_tagtype_tostring(type)); + printf("%02X",twi_recv_msg->data[uid_len-pos-1]); + printf( ", %s\n\r", SL018_tagtype_tostring(type)); if (0 < type && type < 7) { uid->length= uid_len; uid->buffer=twi_recv_msg->data; } else { - fprintf(stdio,"Ignoring unknown card type %02x\n\r",type); + printf("Ignoring unknown card type %02x\n\r",type); } } } -void sl018_set_led(uint8_t on,FILE * stdio) +void sl018_set_led(uint8_t on) { if(on) - sl018_cmd(SL018_CMD_ComRedLedOn,stdio); + sl018_cmd(SL018_CMD_ComRedLedOn); else - sl018_cmd(SL018_CMD_ComRedLedOff,stdio); + sl018_cmd(SL018_CMD_ComRedLedOff); } -uint8_t sl018_check_for_new_card(FILE * stdio) +uint8_t sl018_check_for_new_card(void) { static uint8_t card_status = 0; if(CARD_PRESENT != card_status) { @@ -231,9 +233,9 @@ uint8_t sl018_check_for_new_card(FILE * stdio) return 0; } -unsigned char * sl018_get_firmware_version(FILE * stdio) +unsigned char * sl018_get_firmware_version(void) { - if(!sl018_cmd(SL018_CMD_ComGetFirmwareVersion,stdio)) { + if(!sl018_cmd(SL018_CMD_ComGetFirmwareVersion)) { twi_recv_msg->data[sizeof(twi_recv_msg->data) - 1] = 0; return twi_recv_msg->data; } else { -- cgit v1.2.3