From: Andy Date: Wed, 27 Feb 2019 01:00:36 +0000 (-0800) Subject: added i2c X-Git-Tag: 1.2.5^2~5 X-Git-Url: https://git.ayoreis.com/Adafruit_Blinka-hackapet.git/commitdiff_plain/830fcdc5594f2ee5a191c96a643766e3232eeecb?ds=sidebyside added i2c --- diff --git a/src/adafruit_blinka/board/jetson_pin.py b/src/adafruit_blinka/board/jetson_pin.py index f380ea6..87d7c59 100644 --- a/src/adafruit_blinka/board/jetson_pin.py +++ b/src/adafruit_blinka/board/jetson_pin.py @@ -5,8 +5,10 @@ from adafruit_blinka.microcontroller.tegra import pin D1 = pin.D1 D2 = pin.D2 D3 = pin.D3 +SDA = pin.D3 D4 = pin.D4 D5 = pin.D5 +SCL = pin.D5 D6 = pin.D6 D7 = pin.D7 D8 = pin.D8 @@ -29,7 +31,9 @@ D24 = pin.D24 D25 = pin.D25 D26 = pin.D26 D27 = pin.D27 +SDA_1 = pin.D27 D28 = pin.D28 +SCL_1 = pin.D28 D29 = pin.D29 D30 = pin.D30 D31 = pin.D31 @@ -41,4 +45,4 @@ D36 = pin.D36 D37 = pin.D37 D38 = pin.D38 D39 = pin.D39 -D40 = pin.D40 \ No newline at end of file +D40 = pin.D40 diff --git a/src/adafruit_blinka/microcontroller/tegra/pin.py b/src/adafruit_blinka/microcontroller/tegra/pin.py index 6c27096..fa535ce 100644 --- a/src/adafruit_blinka/microcontroller/tegra/pin.py +++ b/src/adafruit_blinka/microcontroller/tegra/pin.py @@ -1,10 +1,22 @@ import sys +import Jetson.GPIO as GPIO sys.path.append("/opt/nvidia/jetson-gpio/lib/python") sys.path.append("/opt/nvidia/jetson-gpio/lib/python/Jetson/GPIO") -import Jetson.GPIO as GPIO GPIO.setmode(GPIO.BCM) GPIO.setwarnings(False) # shh! +# Each Jetson model uses different I2C busses +JETSON_I2C_BUS_DEFS = { + "JETSON_TX1": [0, 1], + "JETSON_TX2": [1, 0], + "JETSON_XAVIER": [8, 1], + "JETSON_TXX": [1, 0] +} + +model = GPIO.get_model() +I2C_BUS = JETSON_I2C_BUS_DEFS[model][0] +I2C_BUS_1 = JETSON_I2C_BUS_DEFS[model][1] + # Pins dont exist in CPython so...lets make our own! class Pin: IN = 0 @@ -72,8 +84,10 @@ class Pin: D1 = Pin(1) D2 = Pin(2) D3 = Pin(3) +SDA = Pin(3) D4 = Pin(4) D5 = Pin(5) +SCL = Pin(5) D6 = Pin(6) D7 = Pin(7) D8 = Pin(8) @@ -96,7 +110,9 @@ D24 = Pin(24) D25 = Pin(25) D26 = Pin(26) D27 = Pin(27) +SDA_1 = Pin(27) D28 = Pin(28) +SCL_1 = Pin(28) D29 = Pin(29) D30 = Pin(30) D31 = Pin(31) @@ -109,3 +125,8 @@ D37 = Pin(37) D38 = Pin(38) D39 = Pin(39) D40 = Pin(40) + +i2cPorts = ( + (I2C_BUS, SCL, SDA), (I2C_BUS_1, SCL_1, SDA_1), +) + diff --git a/src/digitalio.py b/src/digitalio.py index c017a0a..44034f9 100755 --- a/src/digitalio.py +++ b/src/digitalio.py @@ -54,6 +54,7 @@ Pull.DOWN = Pull() #Pull.NONE = Pull() + class DigitalInOut(ContextManaged): _pin = None diff --git a/src/microcontroller/__init__.py b/src/microcontroller/__init__.py index 9247101..812178b 100755 --- a/src/microcontroller/__init__.py +++ b/src/microcontroller/__init__.py @@ -36,5 +36,7 @@ elif chip_id == ap_chip.SUN8I: from adafruit_blinka.microcontroller.allwinner_h3 import * elif chip_id == ap_chip.SAMA5: from adafruit_blinka.microcontroller.sama5 import * +elif chip_id == ap_chip.TEGRAXXX: + from adafruit_blinka.microcontroller.tegra import * else: raise NotImplementedError("Microcontroller not supported:", chip_id)