From b423ad4206ef5fda390ed16154c2cd2cfc50f885 Mon Sep 17 00:00:00 2001 From: Vegard Storheil Eriksen Date: Sat, 7 Sep 2013 16:54:58 +0200 Subject: Removed GPIO handling from I2C driver. --- i2c/i2c.cpp | 12 +----------- i2c/i2c.h | 3 +-- 2 files changed, 2 insertions(+), 13 deletions(-) diff --git a/i2c/i2c.cpp b/i2c/i2c.cpp index a395b13..6aa25fc 100644 --- a/i2c/i2c.cpp +++ b/i2c/i2c.cpp @@ -90,17 +90,7 @@ void I2C_t::handle_error() { busy = 0; } -void I2C_t::enable(Pin& scl, Pin& sda) { - RCC.enable(RCC.I2C1); - asm volatile("nop"); - - scl.set_af(4); - sda.set_af(4); - scl.set_type(Pin::OpenDrain); - sda.set_type(Pin::OpenDrain); - scl.set_mode(Pin::AF); - sda.set_mode(Pin::AF); - +void I2C_t::enable() { reg.CR1 = 0x8000; reg.CR1 = 0; diff --git a/i2c/i2c.h b/i2c/i2c.h index f4d6949..ed72aa3 100644 --- a/i2c/i2c.h +++ b/i2c/i2c.h @@ -3,7 +3,6 @@ #include #include -#include struct I2C_reg_t { volatile uint32_t CR1; @@ -42,7 +41,7 @@ class I2C_t { void handle_error(); - void enable(Pin& scl, Pin& sda); + void enable(); void write_reg(uint8_t addr_, uint8_t reg_, uint8_t data); void read_reg(uint8_t addr_, uint8_t reg_, uint8_t len, uint8_t* buf); -- cgit v1.2.3