国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀(guān)看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

概率性出現(xiàn)屏幕顯示閃屏或者滾動(dòng)的現(xiàn)象

電子設(shè)計(jì) ? 來(lái)源:電子設(shè)計(jì) ? 作者:電子設(shè)計(jì) ? 2022-01-19 14:25 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

此文主要針對(duì)利用DS09UB933/34/62/64-Q1等FPD-Link器件搭建的流媒體后視鏡/全景泊車(chē)等應(yīng)用中,由于鏈路設(shè)計(jì)、應(yīng)用環(huán)境干擾、ESD等情況,導(dǎo)致概率性出現(xiàn)屏幕顯示閃屏或者滾動(dòng)的現(xiàn)象。利用解串器中的診斷/中斷功能,再配合上有幀buffer及視頻處理能力的SOC,就可以有效地應(yīng)對(duì)此類(lèi)問(wèn)題。

TIADAS應(yīng)用中的FPD-LINK器件均帶有豐富的診斷功能,包括奇偶校驗(yàn)/反向通道CRC校驗(yàn)/LOCK狀態(tài)/幀水平寬度檢測(cè)/幀垂直寬度檢測(cè)等,利用這些診斷功能我們可以十分便利的知道解串器接收到的數(shù)據(jù)是否有問(wèn)題。同時(shí),我們可以將以上的診斷結(jié)果映射到中斷管腳上,并將中斷腳連接到SOC,如果解串器接收的數(shù)據(jù)檢測(cè)出來(lái)有問(wèn)題的話(huà),可以通過(guò)中斷腳通知SOC去讀取相關(guān)的寄存器,從而知道具體是出現(xiàn)什么故障了。

而對(duì)于接收端帶有幀buffer或者視頻處理能力的SOC的系統(tǒng),在我們知道當(dāng)前幀的數(shù)據(jù)有問(wèn)題的話(huà),可以通過(guò)清除幀buffer將這些有問(wèn)題的視頻數(shù)據(jù)清除,重新接收下一幀畫(huà)面,并凍結(jié)當(dāng)前的顯示畫(huà)面,那這些問(wèn)題就不會(huì)在屏幕上顯示出來(lái)了。

1. 中斷指示腳INTB pin

964/962的中斷指示腳是Pin 6,它為開(kāi)漏輸出腳,所以需要4.7Kohm上拉到VDDIO電平。當(dāng)這個(gè)腳為低電平時(shí),表明有中斷請(qǐng)求。

pYYBAGGKU-2AZMobAACvtqtPuUk367.png


Figure.1 962/964的中斷指示腳

而934的中斷指示腳是Pin 25,其與GPIO_3復(fù)用,同樣也是開(kāi)漏輸出腳,建議4.7Kohm上拉到VDDIO電平。

poYBAGGKU--Ab0jGAAC7hMzeV3I344.png

Figure.2 934的中斷指示腳

2. 962/964中斷功能的使能與配置

2.1 964/962 INTB中斷指示腳的使能

使用INTB中斷指示腳的輸出,需要先將INTERRUPT_CTL 0x23 bit_7的全局中斷使能打開(kāi),然后再打開(kāi)0x23 bit5:0 的中斷源開(kāi)關(guān),中斷源來(lái)自于4個(gè)獨(dú)立的RX,以及兩個(gè)獨(dú)立的TX(962/964可以理解為FPD-Link III接收器即RX,以及MIPI CSI發(fā)送器即TX的組合)的各種中斷。

但是如果全局中斷沒(méi)有使能,符合條件的中斷還是會(huì)在相應(yīng)的中斷狀態(tài)指示寄存器上置位的。例如,要在檢測(cè)到IS_RX0中斷的時(shí)候,INTB輸出中斷,需要使能IE_RX0以及INT_EN。如果只是使能了IE_RX0,但是沒(méi)有使能INT_EN的話(huà),中斷來(lái)了只會(huì)在INTERRUPT_STS 0x24中斷狀態(tài)指示寄存器進(jìn)行指示,而不會(huì)在INTB腳有指示。

而當(dāng)INTB中斷指示腳由于TX或者RX的某種故障狀態(tài)而拉低之后,需要通過(guò)讀取相應(yīng)中斷源的中斷狀態(tài)指示寄存器,來(lái)清除中斷指示腳的中斷狀態(tài)。具體的中斷狀態(tài)寄存器會(huì)在稍后的篇幅中詳細(xì)介紹。

poYBAGGKU_GAJrazAADnn0PPaaw793.png

Figure.3 964/962全局中斷控制寄存器

pYYBAGGKU_KATsCcAAHVtxnaL6Y137.png

Figure.4 964/962 0x24中斷狀態(tài)指示寄存器

示例代碼:

#0x30為964的7bit I2C地址

#使能964的全局中斷,以及TX0_1/RX0_1_2_3中斷源

Write( 0x30, 0x23, 0xBF)

#使能964的全局中斷,以及RX0中斷源

Write( 0x30, 0x23, 0x81)

2.2 964/962 各個(gè)RX Port的獨(dú)立中斷源

964/962的每一個(gè)RX Port都有多個(gè)獨(dú)立中斷源,而這些獨(dú)立中斷源都可以通過(guò)PORT_ICR_HI 0xD8和PORT_ICR_LO 0xD9寄存器進(jìn)行使能。同時(shí),在PORT_ISR_HI 0xDA和PORT_ISR_LO 0xDB中斷狀態(tài)指示寄存器,可以提供相應(yīng)的只讀中斷狀態(tài)指示。

而清除中斷指示腳,以及中斷狀態(tài)指示寄存器的中斷狀態(tài),可以通過(guò)讀RX_PORT_STS1 0x4D和RX_PORT_STS2 0x4E,以及 CSI_RX_STS 0x7A中斷狀態(tài)指示寄存器進(jìn)行清除。因?yàn)镻ORT_ISR_HI/LO的中斷狀態(tài)位是copy 0x4D/0x4E/0x7A中斷狀態(tài)寄存器的,

所以只要清除了 0x4D/0x4E/0x7A這三個(gè)寄存器的中斷狀態(tài)指示,PORT_ISR_HI/LO的中斷狀態(tài)指示位也會(huì)相應(yīng)的清除,同時(shí)0x24的相應(yīng)中斷狀態(tài)也會(huì)清除。

使能某一個(gè)RX Port的獨(dú)立中斷源,并使能INTB中斷指示腳,可以遵循以下步驟:

a) 通過(guò)設(shè)置PORT_ICR_HI 0xD8和PORT_ICR_LO 0xD9,設(shè)定所需要的獨(dú)立中斷源

b) 在INTERRUPT_CTL 0x23 中,將相應(yīng)RX Port的中斷源使能打開(kāi)

c) 在INTERRUPT_CTL 0x23 中,將全局中斷使能打開(kāi)

清除某一個(gè)RX Port以及INTB腳的中斷狀態(tài)指示,可以遵循以下步驟:

a) (可選)通過(guò)INTERRUPT_STS 0x24判斷,是哪個(gè)TX port或者某一個(gè)RX Port出現(xiàn)中斷

b) (可選)通過(guò)PORT_ISR_HI 0xDA和PORT_ISR_LO 0xDB寄存器可以確定具體的中斷源

c) 通過(guò)讀取RX_PORT_STS1 0x4D和RX_PORT_STS2 0x4E狀態(tài)寄存器CSI_RX_STS 0x7A狀態(tài)寄存器,即可以清除中斷標(biāo)志位。

poYBAGGKU_SAU4U1AAIlrUfrr8E577.png

Figure.5 964/962 各RX Port獨(dú)立中斷源

pYYBAGGKU_aAHuwgAAOwqSGYMVs637.png

Figure.6 964/962 各RX Port獨(dú)立中斷狀態(tài)指示寄存器

示例代碼:

#0x30為964的7bit I2C地址

#使能RX_0的獨(dú)立中斷源

Write( 0x30, 0x4C, 0x01)

Write( 0x30, 0xD8, 0x07)

Write( 0x30, 0xD9, 0x77)

#使能964的全局中斷,以及RX0的中斷源

Write( 0x30, 0x23, 0x81)

INTERRUPT_STS = ReadI2C(0x30, 0x24) //讀取0x24,判斷中斷源

if ((INTERRUPT_STS & 0x80) >> 7):

print "# GLOBAL INTERRUPT DETECTED " //如果bit 7為1,則為全局中斷

if ((INTERRUPT_STS & 0x20) >> 5):

print "# IS_CSI_TX1 DETECTED " //如果bit 5為1,則為T(mén)X1中斷

if ((INTERRUPT_STS & 0x10) >> 4):

print "# IS_CSI_TX0 DETECTED " //如果bit 4為1,則為T(mén)X0中斷

if ((INTERRUPT_STS & 0x08) >> 3):

print "# IS_RX3 DETECTED " //如果bit 3為1,則為RX3中斷

if ((INTERRUPT_STS & 0x04) >> 2):

print "# IS_RX2 DETECTED " //如果bit 2為1,則為RX2中斷

if ((INTERRUPT_STS & 0x02) >> 1):

print "# IS_RX1 DETECTED " //如果bit 1為1,則為RX1中斷

if ((INTERRUPT_STS & 0x01) ):

print "# IS_RX0 DETECTED " //如果bit 0為1,則為RX0中斷

#假如RX0中斷,通過(guò)0xDB/0xDA寄存器來(lái)判斷具體的中斷類(lèi)型

Write(0x30, 0x4C,0x01) //選通RX0

PORT_ISR_LO = ReadI2C(0x30, 0xDB) //讀取0xDB狀態(tài)

PORT_ISR_HI = ReadI2C(0x30, 0xDA) //讀取0xDA狀態(tài)

if ((PORT_ISR_LO & 0x40) >> 6):

print "# IS_LINE_LEN_CHG INTERRUPT DETECTED " //如果bit 6為1,則為水平寬度變化故障

if ((PORT_ISR_LO & 0x20) >> 5):

print "# IS_LINE_CNT_CHG DETECTED " //如果bit 5為1,則為垂直寬度變化故障

if ((PORT_ISR_LO & 0x10) >> 4):

print "# IS_BUFFER_ERR DETECTED " //如果bit 4為1,則為RX buffer 溢出故障

if ((PORT_ISR_LO & 0x04) >> 2):

print "# IS_FPD3_PAR_ERR DETECTED "http://如果bit 2為1,則為RX 奇偶校驗(yàn)錯(cuò)誤故障

if ((PORT_ISR_LO & 0x02) >> 1):

print "# IS_PORT_PASS DETECTED " //如果bit 1為1,則為RX Pass Fail 故障

if ((PORT_ISR_LO & 0x01) ) :

print "# IS_LOCK_STS DETECTED " //如果bit 0為1,則為L(zhǎng)OCK狀態(tài)變更故障

if ((PORT_ISR_HI & 0x04) >> 2):

print "# IS_FPD3_ENC_ERR DETECTED "http://如果bit 2為1,則為RX Port 編碼失敗故障

if ((PORT_ISR_HI & 0x02) >> 1):

print "# IS_BCC_SEQ_ERR DETECTED "http://如果bit 1為1,則為BCC時(shí)序錯(cuò)誤故障

if ((PORT_ISR_HI & 0x01) ) :

print "# IS_BCC_CRC_ERR DETECTED " //如果bit 0為1,則為BC CRC校驗(yàn)錯(cuò)誤故障

#通過(guò)讀取0x4D/0x4E/0x7A中斷狀態(tài)指示寄存器,清除中斷狀態(tài)

Write(0x30, 0x4C,0x01) //選通RX0

ReadI2C(0x30, 0x4D)

ReadI2C(0x30, 0x4E)

ReadI2C(0x30, 0x7A)

2.3 964/962 TX Port的獨(dú)立中斷源

964/962的MIPI CSI TX端的獨(dú)立中斷源有五個(gè), 可以在CSI_TX_ICR 0x36中斷源控制寄存器使能,然后在CSI_TX_ISR 0x37中斷狀態(tài)指示寄存器讀取中斷狀態(tài),同時(shí)清除0x36以及INTB相應(yīng)的中斷狀態(tài)。

中斷狀態(tài)寄存器的配置以及清除中斷狀態(tài)的操作,與RX Port類(lèi)似,這里不做贅述。

3. 934中斷功能的使能與配置

3.1. 934 INTB中斷指示腳的使能

與964/962類(lèi)似,使用934的INTB中斷指示腳的輸出,需要先將INTERRUPT_CTL 0x23 bit_7的全局中斷使能打開(kāi),然后再打開(kāi)0x23 bit 1:0 的中斷源開(kāi)關(guān),中斷源來(lái)自于2個(gè)獨(dú)立的RX Port。

相應(yīng)RX Port的中斷狀態(tài)也可以通過(guò)INTERRUPT_STS 0x24中斷狀態(tài)指示寄存器進(jìn)行指示。而當(dāng)INTB中斷指示腳由于RX的某種故障狀態(tài)而拉低之后,需要通過(guò)讀取相應(yīng)中斷源的中斷狀態(tài)指示寄存器,來(lái)清除中斷指示腳的中斷狀態(tài)。

示例代碼:

#0x30 為934 的7bit I2C 地址

#使能934 的全局中斷,以及RX0_1 中斷源

Write( 0x30, 0x23, 0x83)

3.2. 934 各個(gè)RX Port的獨(dú)立中斷源

934 的每一個(gè)RX Port 都有多個(gè)獨(dú)立中斷源,而這些獨(dú)立中斷源都可以通過(guò)PORT_ICR_HI 0xD8 和PORT_ICR_LO 0xD9 寄存器進(jìn)行使能。同時(shí),在PORT_ISR_HI 0xDA 和PORT_ISR_LO 0xDB 中斷狀態(tài)指示寄存器,可以提供相應(yīng)的只讀中斷狀態(tài)指示。

而清除中斷指示腳,以及中斷狀態(tài)指示寄存器的中斷狀態(tài),可以通過(guò)讀RX_PORT_STS1 0x4D 和RX_PORT_STS2 0x4E 中斷狀態(tài)指示寄存器進(jìn)行清除。因?yàn)镻ORT_ISR_HI/LO 的中斷狀態(tài)位是copy 0x4D/0x4E 中斷狀態(tài)寄存器的,所以只要清除了 0x4D/0x4E 這三個(gè)寄存器的中斷狀態(tài)指示,PORT_ISR_HI/LO 的中斷狀態(tài)指示位也會(huì)相應(yīng)的清除,同時(shí)0x24 的相應(yīng)中斷狀態(tài)也會(huì)清除。

示例代碼請(qǐng)參考2.2 章節(jié)中對(duì)964/962 的操作。

4.實(shí)際應(yīng)用配置

如本文開(kāi)關(guān)所述,對(duì)于流媒體后視鏡/全景泊車(chē)等ADAS 應(yīng)用中,由于各種各樣設(shè)計(jì)及外在干擾等因素,有可能會(huì)導(dǎo)致實(shí)際顯示效果因?yàn)殚W屏問(wèn)題的出現(xiàn)而不及預(yù)期。為解決此類(lèi)問(wèn)題,我們可以利用解串器中的診斷/中斷功能,再配合上有幀buffer 及視頻處理能力的SOC,將有問(wèn)題的視頻數(shù)據(jù)過(guò)濾掉。

下文以964/962 為解串器舉例,著重闡述解串器端應(yīng)該是如何進(jìn)行中斷功能的使能及配置,SOC 端的處理方式請(qǐng)咨詢(xún)相應(yīng)SOC 的支持團(tuán)隊(duì),此處不做贅述。而934 的配置方式與964/962 十分類(lèi)似,因?yàn)?64/962 的獨(dú)立中斷源是比934 多的,并且有TX 端的中斷源,我們只需要將多出來(lái)的這部分中斷源不做配置,只配置934 獨(dú)有的中斷源即可,因此934 的配置方式及示例代碼請(qǐng)參考964/962 的配置。

4.1. 964/962 同步模式下中斷相關(guān)的配置

964/962 有三種同步輸出模式,分別是Basic Synchronized/Line-Interleave/Line- Concatenated。在同步模式下,TX Port 會(huì)將各個(gè)RX Port 輸入的視頻數(shù)據(jù),根據(jù)相應(yīng)的模式同步好之后,再進(jìn)行輸出。當(dāng)其中一個(gè)或者多個(gè)RX Port 的視頻數(shù)據(jù)超過(guò)一個(gè)行長(zhǎng)度的時(shí)間還沒(méi)有輸入到buffer 里面的話(huà),即認(rèn)為當(dāng)前packet 數(shù)據(jù)同步失敗,964/962 就會(huì)將buffer 里面其它RX Port 的視頻數(shù)據(jù)清除,并接收下一個(gè)video line 數(shù)據(jù),此時(shí)MIPI CSI 口會(huì)沒(méi)有數(shù)據(jù)輸出。

所以,在同步模式下,因?yàn)?64/962 會(huì)將所有RX Port 的數(shù)據(jù)同步之后再進(jìn)行輸出,建議只用TX 的獨(dú)立中斷源來(lái)檢測(cè)MIPI CSI 數(shù)據(jù)是否有異常,這樣做相對(duì)比較簡(jiǎn)單,軟件處理中斷任務(wù)的時(shí)間及占用的資源相對(duì)較少。另外,因?yàn)槊恳粋€(gè)終端產(chǎn)品的設(shè)計(jì)/線(xiàn)束/應(yīng)用環(huán)境等參數(shù)都有所差異,造成不同的系統(tǒng)可能因不同的原因而對(duì)某種中斷源比較敏感, 所以在獨(dú)立中斷源的使能上也需要因系統(tǒng)而異,根據(jù)調(diào)試結(jié)果逐步減少獨(dú)立中斷源的使能,從而防止中斷重復(fù)上報(bào)而過(guò)多占用系統(tǒng)資源。

示例程序:

#0x30 為964 的7bit I2C 地址

#使能964 TX0_1 的獨(dú)立中斷源

Write( 0x30, 0x32, 0x01) //選通TX0

Write( 0x30, 0x36, 0x1F) //可以根據(jù)測(cè)試效果減少獨(dú)立中斷源

Write( 0x30, 0x32, 0x12) //選通TX1

Write( 0x30, 0x36, 0x1F) //可以根據(jù)測(cè)試效果減少獨(dú)立中斷源

#使能964 的全局中斷,以及TX0_1 中斷源

Write( 0x30, 0x23, 0xB0)

#當(dāng)檢測(cè)到中斷事件后,通過(guò)讀取相關(guān)寄存器判斷中斷源并清除中斷

INTERRUPT_STS = ReadI2C(0x30, 0x24) //讀取0x24,判斷中斷源是來(lái)自哪個(gè)TX port

if ((INTERRUPT_STS & 0x80) >> 7):

print "# GLOBAL INTERRUPT DETECTED "http://如果bit 7 為1,則為全局中斷

if ((INTERRUPT_STS & 0x20) >> 5):

print "# IS_CSI_TX1 DETECTED " //如果bit 5 為1,則為T(mén)X1 中斷

if ((INTERRUPT_STS & 0x10) >> 4):

print "# IS_CSI_TX0 DETECTED " //如果bit 4 為1,則為T(mén)X0 中斷

#如果是來(lái)自與TX1 的中斷,可通過(guò)0x37 判斷中斷類(lèi)型并清除中斷

Write( 0x30, 0x32, 0x12) //選通TX1

CSI_TX_ISR = ReadI2C(0x30, 0x37) //讀取0x37 狀態(tài)并清除中斷

if ((CSI_TX_ISR & 0x10) >> 4):

print "# IS_RX_PORT_INT " //如果bit 4 為1,則為RX 出現(xiàn)中斷故障

if ((CSI_TX_ISR & 0x08) >> 3):

print "# IS_CSI_SYNC_ERROR " //如果bit 3 為1,則為輸入信號(hào)同步錯(cuò)誤故障

if ((CSI_TX_ISR & 0x04) >> 2):

print "# IS_CSI_SYNC " //如果bit 2 為1,則為T(mén)X 同步時(shí)出現(xiàn)錯(cuò)誤故障

if ((CSI_TX_ISR & 0x02) >> 1):

print "# IS_CSI_PASS_ERROR " //如果bit 1 為1,則為RX 數(shù)據(jù)不符合PASS 標(biāo)準(zhǔn)

if ((CSI_TX_ISR & 0x01)):

print "# IS_CSI_PASS " //如果bit 0 為1,則為T(mén)X 數(shù)據(jù)不符合PASS 標(biāo)準(zhǔn)

4.2. 964/962 異步模式下中斷相關(guān)的配置

當(dāng)964/962 的輸出模式配置為best-effort round robin forwarding 時(shí),便工作在異步輸出模式。在該模式下,TX Port 使用標(biāo)準(zhǔn)的CSI-2 格式傳輸視頻流,且各個(gè)攝像頭的視頻數(shù)據(jù)的輸出沒(méi)有特定的順序,當(dāng)RX Port 的數(shù)據(jù)ready 后就進(jìn)行輸出,而不會(huì)等待同步完成后再輸出。而如果同一時(shí)間多個(gè)packet 都ready 的話(huà),TX 的發(fā)送器會(huì)工作在round robin 的循環(huán)模式,逐個(gè)將RX 的數(shù)據(jù)循環(huán)進(jìn)行輸出。

異步模式可以接受RX Port 的數(shù)據(jù)是不同的格式,并且不需要各個(gè)port 之間的數(shù)據(jù)同步, 但是需要接收端的SOC 能根據(jù)VC ID 和data type 來(lái)區(qū)分不同輸入源。

在異步模式下,因?yàn)?62/964 不會(huì)檢測(cè)同步信號(hào),所以為了提高系統(tǒng)處理的效率,可以不使用TX 端的獨(dú)立中斷源來(lái)進(jìn)行故障的判斷,而是使能RX Port 的獨(dú)立中斷源來(lái)進(jìn)行檢測(cè)。同樣的,在對(duì)系統(tǒng)進(jìn)行測(cè)試的時(shí)候,如果發(fā)現(xiàn)964/962 有重復(fù)上報(bào)中斷的話(huà),需要優(yōu)化0x23/0xD8/0xD9 的獨(dú)立中斷源使能,看系統(tǒng)對(duì)哪些中斷源比較敏感,然后關(guān)閉不必要的中斷源,避免重復(fù)上報(bào)中斷導(dǎo)致多幀畫(huà)面被丟棄。

示例程序:

#0x30為964的7bit I2C地址

#使能964 RX0_1_2_3的獨(dú)立中斷源

Write( 0x30, 0x4C, 0x01) //選通RX_0

Write( 0x30, 0xD8, 0x07) //需要根據(jù)測(cè)試效果減少獨(dú)立中斷源

Write( 0x30, 0xD9, 0x77)

Write( 0x30, 0x4C, 0x12) //選通RX_1

Write( 0x30, 0xD8, 0x07) //需要根據(jù)測(cè)試效果減少獨(dú)立中斷源

Write( 0x30, 0xD9, 0x77)

Write( 0x30, 0x4C, 0x24) //選通RX_2

Write( 0x30, 0xD8, 0x07) //需要根據(jù)測(cè)試效果減少獨(dú)立中斷源

Write( 0x30, 0xD9, 0x77)

Write( 0x30, 0x4C, 0x38) //選通RX_3

Write( 0x30, 0xD8, 0x07) //需要根據(jù)測(cè)試效果減少獨(dú)立中斷源

Write( 0x30, 0xD9, 0x77)

#使能964的全局中斷,以及RX0_1_2_3中斷源

Write( 0x30, 0x23, 0x8F)

#當(dāng)檢測(cè)到中斷事件后,通過(guò)讀取相關(guān)寄存器判斷中斷源并清除中斷

INTERRUPT_STS = ReadI2C(0x30, 0x24) //讀取0x24,判斷中斷源是來(lái)自哪個(gè)RX port

if ((INTERRUPT_STS & 0x80) >> 7):

print "# GLOBAL INTERRUPT DETECTED " //如果bit 7為1,則為全局中斷

if ((INTERRUPT_STS & 0x08) >> 3):

print "# IS_RX3 DETECTED " //如果bit 3為1,則為RX3中斷

if ((INTERRUPT_STS & 0x04) >> 2):

print "# IS_RX2 DETECTED " //如果bit 2為1,則為RX2中斷

if ((INTERRUPT_STS & 0x02) >> 1):

print "# IS_RX1 DETECTED " //如果bit 1為1,則為RX1中斷

if ((INTERRUPT_STS & 0x01) ):

print "# IS_RX0 DETECTED " //如果bit 0為1,則為RX0中斷

#假如RX0中斷,通過(guò)0xDB/0xDA寄存器來(lái)判斷具體的中斷類(lèi)型。

#對(duì)RX_1_2_3的中斷施行同樣的操作。

Write(0x30, 0x4C,0x01) //選通RX0

PORT_ISR_LO = ReadI2C(0x30, 0xDB) //讀取0xDB狀態(tài)

PORT_ISR_HI = ReadI2C(0x30, 0xDA) //讀取0xDA狀態(tài)

if ((PORT_ISR_LO & 0x40) >> 6):

print "# IS_LINE_LEN_CHG INTERRUPT DETECTED " //如果bit 6為1,則為水平寬度變化故障

if ((PORT_ISR_LO & 0x20) >> 5):

print "# IS_LINE_CNT_CHG DETECTED " //如果bit 5為1,則為垂直寬度變化故障

if ((PORT_ISR_LO & 0x10) >> 4):

print "# IS_BUFFER_ERR DETECTED " //如果bit 4為1,則為RX buffer 溢出故障

if ((PORT_ISR_LO & 0x04) >> 2):

print "# IS_FPD3_PAR_ERR DETECTED " //如果bit 2為1,則為RX 奇偶校驗(yàn)錯(cuò)誤

if ((PORT_ISR_LO & 0x02) >> 1):

print "# IS_PORT_PASS DETECTED " //如果bit 1為1,則為RX Pass Fail 故障

if ((PORT_ISR_LO & 0x01) ) :

print "# IS_LOCK_STS DETECTED " //如果bit 0為1,則為L(zhǎng)OCK狀態(tài)變更故障

if ((PORT_ISR_HI & 0x04) >> 2):

print "# IS_FPD3_ENC_ERR DETECTED " //如果bit 2為1,則為RX 編碼失敗故障

if ((PORT_ISR_HI & 0x02) >> 1):

print "# IS_BCC_SEQ_ERR DETECTED " //如果bit 1為1,則為BC時(shí)序錯(cuò)誤故障

if ((PORT_ISR_HI & 0x01) ) :

print "# IS_BCC_CRC_ERR DETECTED "http://如果bit 0為1,則為BC CRC校驗(yàn)錯(cuò)誤故障

#通過(guò)讀取0x4D/0x4E/0x7A中斷狀態(tài)指示寄存器,清除中斷狀態(tài)

Write(0x30, 0x4C,0x01) //選通RX0

ReadI2C(0x30, 0x4D) //清除中斷

ReadI2C(0x30, 0x4E)

ReadI2C(0x30, 0x7A)

審核編輯:何安

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀(guān)點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 汽車(chē)
    +關(guān)注

    關(guān)注

    15

    文章

    4154

    瀏覽量

    41101
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    PCIe設(shè)備概率性識(shí)別失敗?這3個(gè)核心原因與排查思路

    少工程師都會(huì)遇到一個(gè)棘手問(wèn)題:PCIe 設(shè)備有時(shí)能正常識(shí)別,有時(shí)卻突然 “失聯(lián)”,這種概率性識(shí)別失敗的故障,比必現(xiàn)故障更難排查,往往卡在硬件設(shè)計(jì)或調(diào)試環(huán)節(jié)浪費(fèi)大量時(shí)間。
    的頭像 發(fā)表于 02-01 16:47 ?1643次閱讀
    PCIe設(shè)備<b class='flag-5'>概率性</b>識(shí)別失敗?這3個(gè)核心原因與排查思路

    M6000-S下掛OLT斷問(wèn)題分析

    如圖1所示,某局點(diǎn)BRAS設(shè)備下掛的OLT管理出現(xiàn)現(xiàn)象,未影響OLT下掛用戶(hù)上網(wǎng)。故障發(fā)生時(shí),OLT設(shè)備無(wú)告警,流量無(wú)明顯異常。但BRAS上存在上聯(lián)聚合組1
    的頭像 發(fā)表于 12-22 14:34 ?351次閱讀
    M6000-S下掛OLT<b class='flag-5'>閃</b>斷問(wèn)題分析

    TFT液晶開(kāi)機(jī)時(shí)開(kāi)機(jī)的原因和解決方法

    \"開(kāi)機(jī)\"是在TFT液晶應(yīng)用中經(jīng)常會(huì)碰到的一種現(xiàn)象,其背后涉及的是電源、信號(hào)和初始化時(shí)序的配合問(wèn)題。 這并不是硬件故障,而是一個(gè)系統(tǒng)時(shí)序設(shè)計(jì)問(wèn)題。 下面我們?cè)敿?xì)解析下原因
    發(fā)表于 10-18 11:49

    為光,智耀瞬間-廣芯LCD背光驅(qū)動(dòng)芯片BCT3758

    為光,智耀瞬間-廣芯LCD背光驅(qū)動(dòng)芯片BCT3758
    的頭像 發(fā)表于 10-17 13:33 ?630次閱讀
    化<b class='flag-5'>屏</b>為光,智耀瞬間-廣芯LCD<b class='flag-5'>屏</b><b class='flag-5'>閃</b>背光驅(qū)動(dòng)芯片BCT3758

    設(shè)備出現(xiàn)通信問(wèn)題的概率大嗎?

    設(shè)備出現(xiàn)通信問(wèn)題的概率并非固定值,而是受 “通信鏈路類(lèi)型(有線(xiàn) / 無(wú)線(xiàn))、應(yīng)用場(chǎng)景(工業(yè) / 民用)、設(shè)備老化程度、設(shè)計(jì)安裝規(guī)范度、干擾源強(qiáng)度” 等多因素影響,整體呈現(xiàn) “工業(yè)場(chǎng)景高于民用
    的頭像 發(fā)表于 09-25 14:08 ?606次閱讀
    設(shè)備<b class='flag-5'>出現(xiàn)</b>通信問(wèn)題的<b class='flag-5'>概率</b>大嗎?

    TFT液晶顯示屏為什么會(huì)顯示殘影、如何解決

    TFT液晶(Thin-Film Transistor Liquid Crystal Display)顯示殘影(也稱(chēng)為圖像殘留)是一個(gè)涉及物理和電子原理的現(xiàn)象。 一、為什么工業(yè)TFT液晶
    發(fā)表于 09-08 09:04

    樹(shù)莓派屏幕怎么選?

    樹(shù)莓派很多人都用過(guò),但用屏幕的倒不是很多。不少都是直接遠(yuǎn)程操作,或者直接接身邊的顯示設(shè)備了。但我覺(jué)得給開(kāi)發(fā)板配一個(gè)屏幕還是很能提升使用體驗(yàn)的。這次我就介紹一下樹(shù)莓派的
    的頭像 發(fā)表于 08-08 14:59 ?1518次閱讀
    樹(shù)莓派<b class='flag-5'>屏幕</b>怎么選?

    WLE5CBU6在STOP2模式下,概率性不能通過(guò)RTC鬧鐘中斷喚醒,為什么?

    已知鬧鐘中斷優(yōu)先級(jí)最高,跑RTC測(cè)試時(shí),掛測(cè)會(huì)出現(xiàn)概率性的無(wú)法喚醒MCU
    發(fā)表于 06-16 06:34

    Real RGB OLED屏幕技術(shù):開(kāi)啟顯示屏新紀(jì)元

    顯著提升。RealRGBOLED是一種改進(jìn)型OLED(有機(jī)發(fā)光二極管)顯示技術(shù),旨在解決傳統(tǒng)OLED屏幕常見(jiàn)的像素折損和燒等問(wèn)題。傳統(tǒng)OLED屏幕通常采用PenT
    的頭像 發(fā)表于 05-29 11:33 ?2801次閱讀
    Real RGB OLED<b class='flag-5'>屏幕</b>技術(shù):開(kāi)啟<b class='flag-5'>顯示屏</b>新紀(jì)元

    HarmonyOS應(yīng)用問(wèn)題性能優(yōu)化三

    刷新過(guò)程中,F(xiàn)orEach鍵值生成函數(shù)未設(shè)置導(dǎo)致的問(wèn)題 問(wèn)題現(xiàn)象 下拉刷新時(shí),應(yīng)用產(chǎn)生卡頓,出現(xiàn)
    發(fā)表于 05-19 14:36

    是德示波器EXR604A滾動(dòng)模式設(shè)置指南

    屏幕上始終顯示最新信號(hào),同時(shí)保留歷史數(shù)據(jù)。該模式特別適用于觀(guān)察電源紋波、通信信號(hào)包絡(luò)、機(jī)械振動(dòng)等需要長(zhǎng)時(shí)間監(jiān)測(cè)的場(chǎng)景。 ? 二、滾動(dòng)模式設(shè)置步驟 1. 進(jìn)入滾動(dòng)模式 步驟1:按下示波器
    的頭像 發(fā)表于 05-14 18:10 ?1570次閱讀
    是德示波器EXR604A<b class='flag-5'>滾動(dòng)</b>模式設(shè)置指南

    CYUSB3014下載固件時(shí),概率性出現(xiàn)無(wú)法打開(kāi)固件目錄過(guò)幾秒后顯示燒錄失敗,怎么解決?

    使用SPI 燒錄固件,有概率的卡在Downloading cypress boot programmer,不會(huì)出現(xiàn)enumerate 固件的彈窗,過(guò)幾秒顯示programming of boot programmer faile
    發(fā)表于 05-09 06:45

    canmv-k230使用攝像頭出現(xiàn)紫色畫(huà)面,并且顯示不完全怎么修復(fù)?

    ,microPython固件V1.2.2版本 嘗試解決過(guò)程 嘗試過(guò)排出屏幕問(wèn)題,當(dāng)出現(xiàn)后,通過(guò)按鍵切換只顯示屏幕內(nèi)容,發(fā)現(xiàn)屏幕
    發(fā)表于 04-28 07:02

    LED顯示屏控制卡,高度24如何適配32高度的文本內(nèi)容?

    客戶(hù)的后臺(tái)程序只能設(shè)置16或者32的高度,即1632或者3232,但是現(xiàn)場(chǎng)安裝的是832的模組,安裝了三塊高度是24。 為了實(shí)現(xiàn)最理想的顯示效果,如果在2432點(diǎn)的模組上接收顯示32*
    發(fā)表于 04-14 11:05

    是德示波器滾動(dòng)模式設(shè)置指南

    一、滾動(dòng)模式概述 是德示波器的滾動(dòng)模式(RollMode)是一種實(shí)時(shí)波形顯示模式,通過(guò)連續(xù)刷新屏幕上的波形數(shù)據(jù),以水平滾動(dòng)的方式呈現(xiàn)信號(hào)的動(dòng)
    的頭像 發(fā)表于 04-02 11:52 ?1830次閱讀
    是德示波器<b class='flag-5'>滾動(dòng)</b>模式設(shè)置指南