Pygears как исправить интерфейс к некоторому значению?

#python #pygears

#python #pygears

Вопрос:

Допустим, у меня есть это устройство

 @gear
def test(a: Uint, b: Uint):
    return a   b
  

Я хотел бы создать экземпляр этого модуля и подключить порт «a» к некоторому интерфейсу, но я также хочу привязать порт «b» к некоторому значению. Как это сделать правильно?

Ответ №1:

В принципе, вы можете указать желаемое значение напрямую при вызове test() механизма. Допустим, я хочу указать фиксированное значение 0 для порта a и какой-либо другой интерфейс, скажем b_intf , для порта b

 test(Uint[8](0), b_intf)
  

Под капотом PyGears автоматически определит const() механизм (из pygears.lib , поэтому приведенный выше код эквивалентен этому:

 test(const(val=Uint[8](0)), b_intf)
  

PyGears также поддерживает частичное применение механизмов, поэтому вы также можете a сначала исправить порт, а затем предоставить интерфейс b_intf :

 test_0 = test(Uint[8](0))

b_intf | test_0