From b8badd62af2562ef669175acae38da9ec5e87ddc Mon Sep 17 00:00:00 2001 From: Melissa LeBlanc-Williams Date: Fri, 24 Jan 2020 15:00:30 -0800 Subject: [PATCH 1/2] Fixed set_digit_raw to match Python library --- adafruit_ht16k33/segments.py | 4 ++-- examples/ht16k33_segments_simpletest.py | 13 +++++++------ 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/adafruit_ht16k33/segments.py b/adafruit_ht16k33/segments.py index 1b2bb91..7951b3d 100755 --- a/adafruit_ht16k33/segments.py +++ b/adafruit_ht16k33/segments.py @@ -240,8 +240,8 @@ def set_digit_raw(self, index, bitmask): bitmask = bitmask[0] << 8 | bitmask[1] # Set the digit bitmask value at the appropriate position. - self._set_buffer(index * 2, (bitmask >> 8) & 0xFF) - self._set_buffer(index * 2 + 1, bitmask & 0xFF) + self._set_buffer(index * 2, bitmask & 0xFF) + self._set_buffer(index * 2 + 1, (bitmask >> 8) & 0xFF) if self._auto_write: self.show() diff --git a/examples/ht16k33_segments_simpletest.py b/examples/ht16k33_segments_simpletest.py index a12d703..23cbed3 100644 --- a/examples/ht16k33_segments_simpletest.py +++ b/examples/ht16k33_segments_simpletest.py @@ -17,9 +17,9 @@ # Create the LED segment class. # This creates a 7 segment 4 character display: -display = segments.Seg7x4(i2c) +#display = segments.Seg7x4(i2c) # Or this creates a 14 segment alphanumeric 4 character display: -#display = segments.Seg14x4(i2c) +display = segments.Seg14x4(i2c) # Finally you can optionally specify a custom I2C address of the HT16k33 like: #display = segments.Seg7x4(i2c, address=0x70) @@ -54,10 +54,11 @@ display.set_digit_raw(3, 0b01111001) else: # 14-segment raw digits - display.set_digit_raw(0, 0x3F2D) - display.set_digit_raw(1, 0b0011111100101101) - display.set_digit_raw(2, (0b00111111, 0b00101101)) - display.set_digit_raw(3, [0b00111111, 0b00101101]) + display.set_digit_raw(0, 0x2D3F) + display.set_digit_raw(1, 0b0010110100111111) + display.set_digit_raw(2, (0b00101101, 0b00111111)) + display.set_digit_raw(3, [0x2D, 0x3F]) +time.sleep(2) #Show a looping marquee display.marquee('Deadbeef 192.168.100.102... ', 0.2) From 66c0b04f2796744ac7d175c6a6d842deddbab13c Mon Sep 17 00:00:00 2001 From: Melissa LeBlanc-Williams Date: Fri, 24 Jan 2020 15:03:05 -0800 Subject: [PATCH 2/2] Set 7-segment to be default display --- examples/ht16k33_segments_simpletest.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/ht16k33_segments_simpletest.py b/examples/ht16k33_segments_simpletest.py index 23cbed3..528e88f 100644 --- a/examples/ht16k33_segments_simpletest.py +++ b/examples/ht16k33_segments_simpletest.py @@ -17,9 +17,9 @@ # Create the LED segment class. # This creates a 7 segment 4 character display: -#display = segments.Seg7x4(i2c) +display = segments.Seg7x4(i2c) # Or this creates a 14 segment alphanumeric 4 character display: -display = segments.Seg14x4(i2c) +#display = segments.Seg14x4(i2c) # Finally you can optionally specify a custom I2C address of the HT16k33 like: #display = segments.Seg7x4(i2c, address=0x70)