aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--testhal/STM32F1xx/I2C/Makefile2
-rw-r--r--testhal/STM32F1xx/I2C/main.c4
-rw-r--r--testhal/STM32F4xx/I2C/main.c14
3 files changed, 17 insertions, 3 deletions
diff --git a/testhal/STM32F1xx/I2C/Makefile b/testhal/STM32F1xx/I2C/Makefile
index a118fb9a7..24cebda3b 100644
--- a/testhal/STM32F1xx/I2C/Makefile
+++ b/testhal/STM32F1xx/I2C/Makefile
@@ -31,7 +31,7 @@ endif
# Enable this if you want to see the full log while compiling.
ifeq ($(USE_VERBOSE_COMPILE),)
- USE_VERBOSE_COMPILE = yes
+ USE_VERBOSE_COMPILE = no
endif
#
diff --git a/testhal/STM32F1xx/I2C/main.c b/testhal/STM32F1xx/I2C/main.c
index b779ae0b7..5af860e05 100644
--- a/testhal/STM32F1xx/I2C/main.c
+++ b/testhal/STM32F1xx/I2C/main.c
@@ -17,6 +17,10 @@
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
+/*
+ Concepts and parts of this file have been contributed by Uladzimir Pylinsky
+ aka barthess.
+ */
#include <stdlib.h>
diff --git a/testhal/STM32F4xx/I2C/main.c b/testhal/STM32F4xx/I2C/main.c
index 5cb616e8c..10042fee9 100644
--- a/testhal/STM32F4xx/I2C/main.c
+++ b/testhal/STM32F4xx/I2C/main.c
@@ -22,6 +22,10 @@
aka barthess.
*/
+/**
+ * This demo acquire data from accelerometer and prints it in shell.
+ */
+
#include <stdlib.h>
#include "ch.h"
@@ -103,6 +107,7 @@ int16_t complement2signed(uint8_t msb, uint8_t lsb){
*/
int main(void) {
msg_t status = RDY_OK;
+ systime_t tmo = MS2ST(4);
/*
* System initializations.
@@ -135,18 +140,23 @@ int main(void) {
txbuf[0] = ACCEL_CTRL_REG1; /* register address */
txbuf[1] = 0x1;
i2cAcquireBus(&I2CD2);
- i2cMasterTransmitTimeout(&I2CD2, mma8451_addr, txbuf, 2, rxbuf, 0, TIME_INFINITE);
+ status = i2cMasterTransmitTimeout(&I2CD2, mma8451_addr, txbuf, 2, rxbuf, 0, tmo);
i2cReleaseBus(&I2CD2);
+ if (status != RDY_OK){
+ errors = i2cGetErrors(&I2CD2);
+ }
+
/*
* Normal main() thread activity, nothing in this test.
*/
while (TRUE) {
+ palTogglePad(GPIOB, GPIOB_LED_B);
chThdSleepMilliseconds(100);
txbuf[0] = ACCEL_OUT_DATA; /* register address */
i2cAcquireBus(&I2CD2);
- status = i2cMasterTransmitTimeout(&I2CD2, mma8451_addr, txbuf, 1, rxbuf, 6, TIME_INFINITE);
+ status = i2cMasterTransmitTimeout(&I2CD2, mma8451_addr, txbuf, 1, rxbuf, 6, tmo);
i2cReleaseBus(&I2CD2);
if (status != RDY_OK){