Source code for jitxexamples.essentials.pin_assignment_extras

# Counter-examples and extras for the pin assignment docs
import jitx

from jitx.net import provide
from jitx.common import GPIO

from .pin_assignment import STM32H7


[docs] class MCU(jitx.Circuit): """STM32H7 Microcontroller Wrapper Circuit""" U = STM32H7() @provide.all_of(GPIO) def PA_GPIO(self, b: GPIO): return [{b.gpio: p} for p in self.U.PA] @provide(GPIO) def PB_GPIO(self, b: GPIO): return [{b.gpio: p} for p in self.U.PB] @provide(GPIO) def PC_GPIO(self, b: GPIO): return [{b.gpio: p} for p in self.U.PC]
[docs] class HighPowerExample(jitx.Circuit): """STM32H7 Microcontroller Wrapper Circuit""" U = STM32H7() @provide.subset_of(GPIO, 28) def P_GPIO(self, b: GPIO): ports = [self.U.PA, self.U.PB, self.U.PC, self.U.PD, self.U.PE] allGPIOs = [x for port in ports for x in port] return [{b.gpio: p} for p in allGPIOs]