Hauke Petersen
87200c4803
cpu/stm32: removed file guards from periph drivers
2017-11-09 16:27:24 +01:00
smlng
692cf96297
doc: fix doxygen grouping of cpu periph drivers
2017-06-26 14:42:11 +02:00
Kees Bakker
bac5cda1e3
periph/i2c: convert char to uint8_t where applicapable
...
In general, data transferred through I2C are bytes and thus should have
type uint8_t, not char.
Also convert uint8_t ptrs to void ptrs
2016-10-04 20:26:39 +02:00
Hauke Petersen
141f8c9ff6
cpu/stm32f1: adapted GPIO driver
2016-03-17 14:55:30 +01:00
Joakim Nohlgård
7ce5f1b5c0
cpu/stm32f1: i2c: Use {} notation for empty while loops
2016-03-13 08:14:39 +01:00
Victor Arino
b40cb6bebb
stm32f1/i2c: uncrustify untouched code
2016-02-03 17:42:42 +01:00
Victor Arino
57e20941f5
stm32f1/i2c: add support for secondary i2c
2016-02-03 17:42:42 +01:00
Victor Arino
a477d6f81d
stm32f1/i2c: do not block in case of error
...
Due to the errata of some of the stm32f1xx family, the i2c lines need
to be toggled when setting up the peripheral. This however seems to
hang some i2c slaves which do not ack the first message sent after
initialization. This caused the code to be stucked waiting for the
never coming ACK. The same situation could occur when a byte was not
acked due to whatever reason.
The previous implementation of the i2c driver didn't allow recovery
on these situations. Now the driver does not block forever but rather
returns a <0 code to indicate that the transaction was not succesful.
2016-02-03 17:42:42 +01:00
Victor Arino
da5b03df5d
stm32f1/i2c: remove duplicated code
2016-02-03 17:42:42 +01:00
Victor Arino
be3279f9bc
stm32f1/i2c: fix multi byte reading
2016-02-03 17:35:29 +01:00
Hauke Petersen
3d35c33cb2
cpu/stm32f1: fixed i2c driver
...
the _stop() function now blocks until the transfer
is complete. Not waiting can lead to concurrent bus
access and subsequent to bus errors.
2015-11-18 14:57:15 +01:00
Thomas Eichinger
96b6d4b1dd
stm32f1/i2c: Disable I2C module before initialization
...
When initializing multiple drivers connected to the same
I2C bus, the bus should be disabled before pin toggeling
and reinitialization.
2015-11-01 11:51:51 +09:00
Hauke Petersen
82c843a000
cpu: removed init_slave from I2C drivers
2015-10-20 16:57:39 +02:00
Hauke Petersen
af10ab64a7
cpu/stm32f1: simplified pin init in periph drivers
2015-08-12 10:50:17 +02:00
Hauke Petersen
bcb9aebadd
cpu/stm32f1: modernized the GPIO driver
2015-08-06 13:48:25 +02:00
Thomas Eichinger
fe643f7077
periph/i2c: added means to make I2C thread-safe
...
As discussed in #2289 this changes provide means to
use the i2c interface safely within multible threads.
2015-01-19 12:18:03 +01:00
Hauke Petersen
ac2ff23020
cpu/stm32f1: fixes to i2c driver
...
- fixes BUSY on initialization
2014-11-04 21:09:40 +01:00
Hinnerk van Bruinehsen
2103249815
lint: fix unassignedVariable warnings in stm32f1
2014-10-31 01:24:28 +01:00
Thomas Eichinger
ede33a6364
cpu/stm32f1: fix i2c read for N=2 bytes
2014-10-24 14:48:31 +02:00
Thomas Eichinger
414be5257d
cpu/stm32f1: fix i2c master read for N>2 bytes
...
This fixes reading more than 2 bytes from the slave device.
In the current implementation the last byte was not read from
data register and the termination sequence buggy.
2014-10-24 14:08:27 +02:00
Hauke Petersen
0fed9a438c
cpu/stm32f1: added low-level I2C driver
2014-10-15 14:50:14 +02:00