Skip to content

Commit b55613c

Browse files
committed
Merge remote-tracking branch 'origin/fix-annotations-mcp-sram.py' into fix-annotations-epd.py
2 parents af8ef7f + 3f7e3d7 commit b55613c

File tree

1 file changed

+21
-12
lines changed

1 file changed

+21
-12
lines changed

adafruit_epd/mcp_sram.py

+21-12
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,15 @@
1212
from micropython import const
1313
from adafruit_bus_device import spi_device
1414

15+
16+
try:
17+
"""Needed for type annotations"""
18+
from typing import Any, List
19+
from digitalio import DigitalInOut
20+
from busio import SPI
21+
except ImportError:
22+
pass
23+
1524
__version__ = "0.0.0+auto.0"
1625
__repo__ = "https://github.com/adafruit/Adafruit_CircuitPython_EPD.git"
1726

@@ -21,15 +30,15 @@
2130
class Adafruit_MCP_SRAM_View:
2231
"""An interface class that turns an SRAM chip into something like a memoryview"""
2332

24-
def __init__(self, sram, offset):
33+
def __init__(self, sram: int, offset: int) -> None:
2534
self._sram = sram
2635
self._offset = offset
2736
self._buf = [0]
2837

29-
def __getitem__(self, i):
38+
def __getitem__(self, i: int) -> Any:
3039
return self._sram.read(self._offset + i, 1)[0]
3140

32-
def __setitem__(self, i, val):
41+
def __setitem__(self, i: int, val: Any) -> None:
3342
self._buf[0] = val
3443
self._sram.write(self._offset + i, self._buf)
3544

@@ -43,7 +52,7 @@ class Adafruit_MCP_SRAM:
4352
SRAM_RDSR = 0x05
4453
SRAM_WRSR = 0x01
4554

46-
def __init__(self, cs_pin, spi):
55+
def __init__(self, cs_pin: DigitalInOut, spi: SPI):
4756
# Handle hardware SPI
4857
self._spi = spi_device.SPIDevice(spi, cs_pin, baudrate=8000000)
4958
self.spi_device = spi
@@ -54,11 +63,11 @@ def __init__(self, cs_pin, spi):
5463
with self._spi as spidev:
5564
spidev.write(self._buf, end=2) # pylint: disable=no-member
5665

57-
def get_view(self, offset):
66+
def get_view(self, offset: int) -> Adafruit_MCP_SRAM_View:
5867
"""Create an object that can be used as a memoryview, with a given offset"""
5968
return Adafruit_MCP_SRAM_View(self, offset)
6069

61-
def write(self, addr, buf, reg=SRAM_WRITE):
70+
def write(self, addr: int, buf: List, reg=SRAM_WRITE):
6271
"""write the passed buffer to the passed address"""
6372
self._buf[0] = reg
6473
self._buf[1] = (addr >> 8) & 0xFF
@@ -68,7 +77,7 @@ def write(self, addr, buf, reg=SRAM_WRITE):
6877
spi.write(self._buf, end=3) # pylint: disable=no-member
6978
spi.write(bytearray(buf)) # pylint: disable=no-member
7079

71-
def read(self, addr, length, reg=SRAM_READ):
80+
def read(self, addr: int, length: int, reg: int = SRAM_READ):
7281
"""read passed number of bytes at the passed address"""
7382
self._buf[0] = reg
7483
self._buf[1] = (addr >> 8) & 0xFF
@@ -80,24 +89,24 @@ def read(self, addr, length, reg=SRAM_READ):
8089
spi.readinto(buf) # pylint: disable=no-member
8190
return buf
8291

83-
def read8(self, addr, reg=SRAM_READ):
92+
def read8(self, addr: int, reg: int = SRAM_READ):
8493
"""read a single byte at the passed address"""
8594
return self.read(addr, 1, reg)[0]
8695

87-
def read16(self, addr, reg=SRAM_READ):
96+
def read16(self, addr: int, reg: int = SRAM_READ):
8897
"""read 2 bytes at the passed address"""
8998
buf = self.read(addr, 2, reg)
9099
return buf[0] << 8 | buf[1]
91100

92-
def write8(self, addr, value, reg=SRAM_WRITE):
101+
def write8(self, addr: int, value: int, reg: int = SRAM_WRITE):
93102
"""write a single byte at the passed address"""
94103
self.write(addr, [value], reg)
95104

96-
def write16(self, addr, value, reg=SRAM_WRITE):
105+
def write16(self, addr: int, value: int, reg: int = SRAM_WRITE):
97106
"""write 2 bytes at the passed address"""
98107
self.write(addr, [value >> 8, value], reg)
99108

100-
def erase(self, addr, length, value):
109+
def erase(self, addr: int, length: int, value: Any):
101110
"""erase the passed number of bytes starting at the passed address"""
102111
self._buf[0] = Adafruit_MCP_SRAM.SRAM_WRITE
103112
self._buf[1] = (addr >> 8) & 0xFF

0 commit comments

Comments
 (0)