Files
controller-wisetopdataserver/python/biopro/impl/__pycache__/gpio.cpython-37.opt-2.pyc
T

145 lines
13 KiB
Plaintext
Raw Normal View History

2021-12-20 14:52:55 +08:00
B
2021-12-22 14:29:56 +08:00
ò0ÀaZ6ã@ddlZddlmZddlmZmZmZmZdZGdddƒZ GdddƒZ
2021-12-20 14:52:55 +08:00
e
j d kr^d
e
_ ne
j d krnd e
_ Gd
ddƒZ
GdddejdZGdddeƒZGdddeƒZGdddeƒZesÞddZedkrÞeeƒƒdS)éN)Úsleep)ÚOptionalÚListÚUnionÚCallableFc@s„eZdZdZdZdZdZdZdZdZ dZ
d Z d
Z d Z
d Zd
ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZ dS) ÚP3Pinéééé
é é
2021-12-22 14:29:56 +08:00
ééé ééééééé!ééé(é&é$é#é%ééé )éé)éé)éé ééé"é'©N)!Ú__name__Ú
2021-12-20 14:52:55 +08:00
__module__Ú __qualname__ZI2C_SDAZI2C_SCLZUART_TXDZUART_RXDZMEM_RSTZMEM_REQZMEM_BZYZMEM_SELZ
UPS_ENABLEZ
UPS_DETECTÚRESETZSPI_MOSIZSPI_MISOZSPI_CLKZSPI_CS0ÚUART_A0ÚUART_A1ÚUART_A2ÚMEM_A0ÚMEM_A1ÚMEM_A2ZLED_SDAZLED_SCLZ
EEPROM_SDAZ
EEPROM_SCLZ EEPROM_WCZV33ZV50ZGNDÚ __slots__r,r,r,ú5/home/pi/wisetopdataserver/python/biopro/impl/gpio.pyr s<rc@seZdZdZdZdS)ÚCC2650ÚMAr,N)r-r.r/ÚUSEr7r,r,r,r8r9Rsr9ZLPa{
**CC2650 launch pad pin table**
=== ==============
dio func
=== ==============
2 UART_RXD
3 UART_TXD
4 DEBUG_1
5 DEBUG_2
6 LED_R
7 LED_G
8 spi_mosi
9 spi_miso
10 mem_rst
11 mem_bzy
12 mem_req
13 spi_clk
14 spi_cs
15 mem_sel
21 DEBUG_3
22 DEBUG_4
=== ==============
r:a
**CC2650 moda pin table**
=== === ==================
pin dio func
=== === ==================
1 GND
2 NC
3 GND
4 0 uart_tx
5 1 uart_rx
6 2 I2C_SCL
7 3 I2C_SDA
8 4 mem_rst
9 J_TMS
10 J_TCK
11 5 J_TDO
12 6 J_TDI
13 nRST
14 7
15 8 mem_sel
16 9 spi_cs
17 10 spi_clk
18 11 spi_mosi
19 12 spi_miso
20 13 mem_bzy
21 14 mem_req
22 Vdd
23 Vdd
24 NC
25 GND
26 EGP(GND)
27 EGP(GND)
28 EGP(GND)
29 EGP(GND)
=== === ==================
BoosterPack connector
=========== == == = =========== == == ===========
func J1 J1 | func J2 J2 func
=========== == == = =========== == == ===========
3.3V x | x GND
7 x | x 8 mem_sel
uart_tx 0 x | x 9 spi_cs
uart_rx 1 x | x x
2 x | x LP_RST
3 x | N_RST 11 spi_mosi
spi_clk 10 x | x 12 spi_miso
mem_rst 4 x | x 13 mem_bzy
5 x | x 14 mem_req
6 x | x LEGACY_RST
=========== == == = =========== == == ===========
c@s eZdZdZdZdZdZdZdZdZ dZ
d Z d
Z d Z
d Zd
ZdZdZdZdZdZdZeddƒZeddœddƒZed8eeeedœddƒZeeedœddƒZeeedœd d!„ƒZed9edee efd"œd#d$„ƒZ!eeee efeee efd%œd&d'„ƒZ"ed:eeee#ed(œd)d*„ƒZ$ed;eee%egdfd+œd,d-„ƒZ&eed.œd/d0„ƒZ'eeedœd1d2„ƒZ(ed<ee%egdfd3œd4d5„ƒZ)eeedœd6d7„ƒZ*dS)=ÚGPIOFTr r érrrr!rrr"ré)é*é+éÿÿÿÿNr,c CsZy&ddlm}| d¡| |j¡Wn(ttfk
rNddl}|jj}YnX||_ dS)NrF)
ZRPi.GPIOr<Z setwarningsZsetmodeÚBOARDÚ RuntimeErrorÚ ImportErrorÚfake_rpiZRPiÚINSTANCE)ÚclsZ_GPIOrEr,r,r8Ú
_gpio_initòs 
zGPIO._gpio_init)ÚreturncCs|jdkr| ¡|jS)N)rFrH)rGr,r,r8Ú get_instances
zGPIO.get_instance)ÚchannelÚ directionÚinitialÚ pull_up_downcCs8||jkr | ¡j|||dn| ¡j|||ddS)N)rN)rM)ÚINrJÚsetup)rGrKrLrMrNr,r,r8rP s
z
GPIO.setup)rKÚ frequencycCs| ¡ ||¡S)N)rJÚPWM)rGrKrQr,r,r8rRszGPIO.PWM)rKrIcCs| ¡ |¡S)N)rJÚinput)rGrKr,r,r8rSsz
GPIO.input)Úpincsrˆdkr | ¡ ¡tj ¡nN| ¡ ˆ¡tˆtƒrTttfddtjƒƒt_nttfddtjƒƒt_dS)Ncs
|jˆkS)N)Ú
pin_number)Úp)rTr,r8Ú<lambda>!ózGPIO.cleanup.<locals>.<lambda>cs
|jˆkS)N)rU)rV)rTr,r8rW#rX) rJÚcleanupÚPinÚALLÚclearÚ
isinstanceÚintÚlistÚfilter)rGrTr,)rTr8rYs  
z GPIO.cleanup)rKÚstatecCs| ¡ ||¡dS)N)rJÚoutput)rGrKrar,r,r8rb%sz GPIO.output)rKÚedgeÚtimeoutrIcCs| ¡j||||dS)N)rdÚ
bouncetime)rJÚ
wait_for_edge)rGrKrcrdrer,r,r8rf)szGPIO.wait_for_edge)rKrcÚcallbackcCs6|dkr| ¡j|||dn| ¡ ||||¡dS)N)re)rJÚadd_event_detect)rGrKrcrgrer,r,r8rh-szGPIO.add_event_detect)rKcCs| ¡ |¡dS)N)rJÚremove_event_detect)rGrKr,r,r8ri8szGPIO.remove_event_detectcCs| ¡ |¡S)N)rJÚevent_detected)rGrKr,r,r8rj<szGPIO.event_detected)rKrgcCs| ¡ |||¡dS)N)rJÚadd_event_callback)rGrKrgrer,r,r8rk@szGPIO.add_event_callbackcCs| ¡ |¡S)N)rJÚ
gpio_function)rGrKr,r,r8rlDszGPIO.gpio_function)NN)N)Nr")Nr")r)+r-r.r/ÚLOWÚHIGHZBCMrBZPUD_OFFÚPUD_DOWNÚPUD_UPZRISINGZFALLINGZBOTHÚOUTrOZSERIALZSPIZI2CZHARD_PWMÚUNKNOWNrFr7Ú classmethodrHrJr^rPÚfloatrRÚboolrSrrrYrbrrfrrhrirjrkrlr,r,r,r8r<¬sZ(  * r<c@speZdZUgZeded<dZedœddZe edœddƒZ
edœd d
Z d d Z e
eedd
œddƒZdS)rZr[)Ú _pin_number)rUcCs||_|j |¡dS)N)rvr[Úappend)ÚselfrUr,r,r8Ú__init__Ssz Pin.__init__)rIcCs|jS)N)rv)rxr,r,r8rUXszPin.pin_numbercCs t |j¡S)N)r<rlrv)rxr,r,r8rl\szPin.gpio_functioncCst |j¡dS)N)r<rYrv)rxr,r,r8Úclose_sz Pin.close)rUrIcCs"x|jD]}|j|kr|SqWdS)N)r[rv)rGrUrVr,r,r8Úget_usedbs 
z Pin.get_usedN)r-r.r/r[rÚ__annotations__r7r^ryÚpropertyrUrlrzrsrr{r,r,r,r8rZNs
rZ)Ú metaclasscsteZdZdZdedœfdd
ZddZdd „Zed
œd d Z de
dœddZ ddZ e
deddœddƒZZS)Ú OutputPin)Ú_stateF)rUcs0tƒ |¡tj|tj|rdnddd|_dS)Nr"r)rMF)Úsuperryr<rPrqr€)rxrUrM)Ú __class__r,r8ryrs zOutputPin.__init__cCs|jS)N)r€)rxr,r,r8Ú__bool__yszOutputPin.__bool__cCs|jr
dSdS)Nr"r)r€)rxr,r,r8Ú__int__|szOutputPin.__int__)ÚvaluecCs0||_|rt |jtj¡nt |jtj¡dS)N)r€r<rbrvrnrm)rxr…r,r,r8rbszOutputPin.outputr)Ú
sleep_timecCs6t |j|j ¡|dkr"t|ƒt |j|j¡dS)Nr)r<rbrvr€r)rxr†r,r,r8Úpulse†szOutputPin.pulsecCs| |j ¡dS)N)rbr€)rxr,r,r8Ú
output_switchŒszOutputPin.output_switch)rUrIcCs6t |¡}|dk r(t|tƒs$tdƒ|St||ƒSdS)Nzpin has set as output)rZr{r]rrC)rGrUrMrTr,r,r8r{s 

zOutputPin.get_used)F)r)F)r-r.r/r7r^ryr„rurbrtr‡rˆrsr{Ú
__classcell__r,r,)rr8rksrceZdZdZdedœfdd
ZddZdd „Zed
œd d Zd eee dœddZ
d!ee egd
fdœddZ ddZ
e d
œddZe egd
fdœddZed"eddœddƒZZS)#ÚInputPinr,F)rUcs.tƒ |¡tj|tj|r tjntjddS)N)rN)rryr<rPrOrpro)rxrUrN)rr,r8ry¤s zInputPin.__init__cCst |j¡dkS)Nr)r<rSrv)rxr,r,r8©szInputPin.__bool__cCs t |j¡S)N)r<rSrv)rxr,r,r8r„¬szInputPin.__int__)rIcCs t |j¡S)N)r<rSrv)rxr,r,r8rS¯szInputPin.inputNr")rcrdrIcCstj|j|||ddk S)N)rdre)r<rfrv)rxrcrdrer,r,r8rf²szInputPin.wait_for_edge)rcrgcCst |j|||¡dS)N)r<rhrv)rxrcrgrer,r,r8rhµszInputPin.add_event_detectcCst |j¡dS)N)r<rirv)rxr,r,r8ri¸szInputPin.remove_event_detectcCs t |j¡S)N)r<rjrv)rxr,r,r8rj»szInputPin.event_detected)rgcCst |j|¡dS)N)r<rkrv)rxrgr,r,r8rk¾szInputPin.add_event_callback)rUrIcCs6t |¡}|dk r(t|tƒs$tdƒ|St||ƒSdS)Nzpin has set as output)rZr{r]rC)rGrUrNrTr,r,r8r{Ás 

zInputPin.get_used)F)Nr")Nr")F)r-r.r/r7r^ryr„rSrurfrrhrirjrkrsr{r‰r,r,)rr8scsˆeZdZdZdeeedœfdd
ZeedœddƒZej ed œd
dƒZeedœd d ƒZ