X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=drv%2Ftwi.c;h=76d4a82f463c28c305c23913d6e45ef9c6922ac4;hb=8e431405692569d59b74509919eaec2f23df407f;hp=ff52b68af5c5fc6e956bf2e827856e78b5f9c71a;hpb=17f6b83057f60aae39ed0124f8015fc4c8d578b6;p=bertos.git diff --git a/drv/twi.c b/drv/twi.c index ff52b68a..76d4a82f 100755 --- a/drv/twi.c +++ b/drv/twi.c @@ -2,7 +2,7 @@ * \file * * * \brief Driver for the AVR ATMega TWI (implementation) @@ -15,18 +15,32 @@ /*#* *#* $Log$ + *#* Revision 1.5 2005/11/27 23:33:40 bernie + *#* Use appconfig.h instead of cfg/config.h. + *#* + *#* Revision 1.4 2005/04/11 19:10:28 bernie + *#* Include top-level headers from cfg/ subdir. + *#* + *#* Revision 1.3 2005/03/01 23:26:00 bernie + *#* Header fix. + *#* + *#* Revision 1.2 2005/01/25 08:36:56 bernie + *#* CONFIG_TWI_FREQ: New config param. + *#* *#* Revision 1.1 2005/01/06 16:09:40 aleph *#* Split twi/eeprom functions from eeprom module in separate twi module *#* *#*/ #include "twi.h" -#include "config.h" -#include + +#include +#include +#include // BV() #include -#include +#include -#include +#include /* Wait for TWINT flag set: bus is ready */ @@ -223,10 +237,13 @@ void twi_init(void) * Set speed: * F = CLOCK_FREQ / (16 + 2*TWBR * 4^TWPS) */ - #define TWI_FREQ 300000L /* ~300 kHz */ + #ifndef CONFIG_TWI_FREQ + #warning Using default value of 300000L for CONFIG_TWI_FREQ + #define CONFIG_TWI_FREQ 300000L /* ~300 kHz */ + #endif #define TWI_PRESC 1 /* 4 ^ TWPS */ - TWBR = (CLOCK_FREQ / (2 * TWI_FREQ * TWI_PRESC)) - (8 / TWI_PRESC); + TWBR = (CLOCK_FREQ / (2 * CONFIG_TWI_FREQ * TWI_PRESC)) - (8 / TWI_PRESC); TWSR = 0; TWCR = BV(TWEN); );