Files
DSView-decoders/1-BISS/__pycache__/pd.cpython-36.pyc
T

55 lines
6.6 KiB
Plaintext
Raw Normal View History

3
ðv/d#,ã @stddlZdddgdddgddd gd
d d gd
ddgdddgdddgdddgdddgdddgdœ
ZGd d!„d!ejƒZdS)"éNÚStartÚSéz Start repeatÚSréÚStopÚPéÚACKÚAéÚNACKÚNéZBitÚBéz Address readÚARéz
Address writeÚAWéz Data readÚDRé z
Data writeÚDW)
ÚSTARTz START REPEATÚSTOPr
r
ZBITz ADDRESS READz
ADDRESS WRITEz DATA READz
DATA WRITEc
@sÔeZdZdZdZdZdZdZdZdgZ dgZ
d gZ d
d d d
ddœddddddœfZ ddddcddœfZ
doZdvZd{ZdJdK„ZdLdM„ZdNdO„ZdPdQ„ZdRdS„ZdTdU„ZdVdW„ZdXdY„ZdZd[„Zd\d]„Zd^d_„Zd`da„ZdbS)|ÚDecoderr z1:i2cu1:I²CzInter-Integrated Circuitz#Two-wire, multi-master, serial bus.zgplv2+ÚlogicÚi2czEmbedded/industrialÚsclrÚSCLzSerial clock lineZdec_1i2c_chan_scl)ÚidÚtypeÚnameÚdescÚidnÚsdaélÚSDAzSerial data lineZdec_1i2c_chan_sdaÚaddress_formatzDisplayed slave address formatÚ unshiftedÚshiftedZdec_1i2c_opt_addr)r r#ÚdefaultÚvaluesr$Ú7ÚstartúStart conditionÚ6ú repeat-startúRepeat start conditionÚ1ÚstopúStop conditionÚ5Úackr
Ú0Únackr
Ú208ÚbitúData/address bitÚ112ú address-readú Address readÚ111ú
address-writeú
Address writeÚ110ú data-readú Data readÚ109ú
data-writeú
Data writeÚ1000ÚwarningsúHuman-readable warningsÚbitsÚBitsrú addr-dataú Address/Datarrrr rrrÚWarningsé
cCs |jƒdS)N)Úreset)Úself©rTú,C:/Program Files/DSView/decoders\1-i2c\pd.pyÚ__init__lszDecoder.__init__cCsLd|_d|_|_|_d|_d|_d|_d|_d|_d|_ d|_
g|_ dS)Nrrz
FIND STARTéÿÿÿÿrW) Ú
samplerateÚssÚesÚss_byteÚbitcountÚdatabyteÚwrÚis_repeat_startÚstateÚ pdu_startÚpdu_bitsrL)rSrTrTrUrRosz
Decoder.resetcCs|tjkr||_dS)N)ÚsrdÚSRD_CONF_SAMPLERATErX)rSÚkeyÚvaluerTrTrUÚmetadata{s
zDecoder.metadatacCsF|jtjƒ|_|jtjƒ|_|jtjƒ|_|jtjt ddfd�|_
dS)NZBitratez"Bitrate from Start bit to Stop bit)Úmeta) ÚregisterrcÚ
OUTPUT_PYTHONÚ
out_pythonÚ
OUTPUT_ANNÚout_annÚ
OUTPUT_BINARYÚ
out_binaryÚ OUTPUT_METAÚintÚ out_bitrate)rSrTrTrUr.s
z
Decoder.startcCs|j|j|j|j|ƒdS)N)ÚputrYrZrm)rSÚdatarTrTrUÚputx†sz Decoder.putxcCs|j|j|j|j|ƒdS)N)rsrYrZrk)rSrtrTrTrUÚputp‰sz Decoder.putpcCs|j|j|j|j|ƒdS)N)rsrYrZro)rSrtrTrTrUÚputbŒsz Decoder.putbcCsŠ|j|j|_|_|j|_d|_|jdkr.dnd}|j|dgƒ|jt|dt|dd…gƒd|_ d|_
|_ d|_d|_ g|_
dS)Nrrz START REPEATrz FIND ADDRESSrW)Ú samplenumrYrZrarbr_rvruÚprotor`r\r]r^rL)rSÚcmdrTrTrUÚ handle_start�s" zDecoder.handle_startc CsÈ|jd7_|jdK_|j|O_|jdkr<|j|_|jjd||j|jgƒ|jdkrn|j|jdd<|jdkr®|jdd|jdd|_|jdd|j7<|jdkrÊ|jd7_dS|j}|jdk�r|jd@rêdnd|_ |j
ddk�r|d?}d}|jdk�r.|j dk�r.d}d}nd|jdk�rP|j dk�rPd }d}nB|jd
k�rr|j dk�rrd }d }n |jd
k�r’|j dk�r’d
}d}|j|j|j|_ |_ |j
d|jgƒ|j
||gƒ|j|t|gƒgƒx8|jD].}|j|d|d|jdd|dggƒ�qäW|jdƒ�rv|j|j|j|_ |_ |j �rLdddgndddg}|jd|gƒ|j|j|_ |_ |jt|ddt|ddt|dd|ggƒd|_|_g|_d|_dS)Nrrrrz FIND ADDRESSr(r*z
ADDRESS WRITEz ADDRESS READz FIND DATAz
DATA WRITEr z DATA READZBITSrz%dÚADDRESSÚWriteÚWrÚWÚReadÚRdÚRz%s: {$}z{$}zFIND ACKrW)rbr]r\rxr[rLÚinsertÚbitwidthr`r^ÚoptionsrYrZrvrwÚbytesrsrmÚ
startswithrury)rSrr%ÚdÚ bin_classrzr;ÚwrTrTrUÚhandle_address_or_data�s^



  . 6 zDecoder.handle_address_or_datacCsb|j|j|j|_|_|dkr$dnd}|j|dgƒ|jt|dt|dd…gƒd|_dS)Nrr
r
rz FIND DATA)rxr„rYrZrvruryr`)rSrr%rzrTrTrUÚget_ackâs
"zDecoder.get_ackcCs®|jrLdt|jƒ|j|jd}td||jƒ}|j|j|j|j|ƒd}|j|j|_ |_