本文整理汇总了Python中board.MOSI属性的典型用法代码示例。如果您正苦于以下问题:Python board.MOSI属性的具体用法?Python board.MOSI怎么用?Python board.MOSI使用的例子?那么, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在类board
的用法示例。
在下文中一共展示了board.MOSI属性的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: __init__
# 需要导入模块: import board [as 别名]
# 或者: from board import MOSI [as 别名]
def __init__(self):
Sensor.__init__(self)
self.moisture_min = float(self.config["soil"]["min"])
self.moisture_max = float(self.config["soil"]["max"])
# create SPI bus
spi = busio.SPI(clock=board.SCK, MISO=board.MISO, MOSI=board.MOSI)
# create the cs (chip select)
cs = digitalio.DigitalInOut(board.D8)
# create the mcp object
mcp = MCP.MCP3008(spi, cs)
# create an analog input channel
self.pin = []
self.pin.append(AnalogIn(mcp, MCP.P0))
self.pin.append(AnalogIn(mcp, MCP.P1))
self.pin.append(AnalogIn(mcp, MCP.P2))
self.pin.append(AnalogIn(mcp, MCP.P3))
self.pin.append(AnalogIn(mcp, MCP.P4))
self.pin.append(AnalogIn(mcp, MCP.P5))
self.pin.append(AnalogIn(mcp, MCP.P6))
self.pin.append(AnalogIn(mcp, MCP.P7))
示例2: __init__
# 需要导入模块: import board [as 别名]
# 或者: from board import MOSI [as 别名]
def __init__(self, config: dict, main_thread_running, system_ready):
self.config = config
self.main_thread_running = main_thread_running
self.system_ready = system_ready
self.node_ready = False
spi = busio.SPI(clock=board.SCK, MISO=board.MISO, MOSI=board.MOSI)
cs = digitalio.DigitalInOut(ADCMCP3008Worker.PINS[config['pin']])
self.mcp = MCP.MCP3008(spi, cs)
self.sensors = []
self.init_sensors()
self.node_ready = True
示例3: __init__
# 需要导入模块: import board [as 别名]
# 或者: from board import MOSI [as 别名]
def __init__(self, num_led=8, global_brightness=31,
order='rgb', mosi=10, sclk=11, ce=None, bus_speed_hz=8000000):
"""Initializes the library
:param num_led: Number of LEDs in the strip
:param global_brightness: Overall brightness
:param order: Order in which the colours are addressed (this differs from strip to strip)
:param mosi: Master Out pin. Use 10 for SPI0, 20 for SPI1, any GPIO pin for bitbang.
:param sclk: Clock, use 11 for SPI0, 21 for SPI1, any GPIO pin for bitbang.
:param ce: GPIO to use for Chip select. Can be any free GPIO pin. Warning: This will slow down the bus
significantly. Note: The hardware CE0 and CE1 are not used
:param bus_speed_hz: Speed of the hardware SPI bus. If glitches on the bus are visible, lower the value.
"""
self.num_led = num_led
order = order.lower() # Just in case someone use CAPS here.
self.rgb = RGB_MAP.get(order, RGB_MAP['rgb'])
self.global_brightness = global_brightness
self.use_bitbang = False # Two raw SPI devices exist: Bitbang (software) and hardware SPI.
self.use_ce = False # If true, use the BusDevice abstraction layer on top of the raw SPI device
self.leds = [self.LED_START, 0, 0, 0] * self.num_led # Pixel buffer
if ce is not None:
# If a chip enable value is present, use the Adafruit CircuitPython BusDevice abstraction on top
# of the raw SPI device (hardware or bitbang)
# The next line is just here to prevent an "unused" warning from the IDE
digitalio.DigitalInOut(board.D1)
# Convert the chip enable pin number into an object (reflection à la Python)
ce = eval("digitalio.DigitalInOut(board.D"+str(ce)+")")
self.use_ce = True
# Heuristic: Test for the hardware SPI pins. If found, use hardware SPI, otherwise bitbang SPI
if mosi == 10:
if sclk != 11:
raise ValueError("Illegal MOSI / SCLK combination")
self.spi = busio.SPI(clock=board.SCLK, MOSI=board.MOSI)
elif mosi == 20:
if sclk != 21:
raise ValueError("Illegal MOSI / SCLK combination")
self.spi = busio.SPI(clock=board.SCLK_1, MOSI=board.MOSI_1)
else:
# Use Adafruit CircuitPython BitBangIO, because the pins do not match one of the hardware SPI devices
# Reflection à la Python to get at the digital IO pins
self.spi = bitbangio.SPI(clock=eval("board.D"+str(sclk)), MOSI=eval("board.D"+str(mosi)))
self.use_bitbang = True
# Add the BusDevice on top of the raw SPI
if self.use_ce:
self.spibus = SPIDevice(spi=self.spi, chip_select=ce, baudrate=bus_speed_hz)
else:
# If the BusDevice is not used, the bus speed is set here instead
while not self.spi.try_lock():
pass
self.spi.configure(baudrate=bus_speed_hz)
self.spi.unlock()
# Debug
if self.use_ce:
print("Use software chip enable")
if self.use_bitbang:
print("Use bitbang SPI")
else:
print("Use hardware SPI")