999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于S3C2440A的IIC總線讀寫故障軟件處理研究

2017-07-09 14:52:26曹雨
科學與財富 2017年18期
關鍵詞:故障處理

曹雨

摘 要: IIC總線讀寫故障是IIC器件使用過程中無法回避的現實問題,本文以實際研究為背景,以三星S3C2440A RISC微處理器為例介紹了IIC總線故障的分析及軟件處理方法,為實際應用提供了參考。

關鍵詞: S3C2440A;IIC總線;故障處理

一、前言

IIC總線是由Philips公司開發并成功推廣的一種雙向兩線通信方式,所有符合IIC總線協議的器件可通過IIC總線進行獨立通信,實現了IC之間的有效控制。由于IIC總線上可以掛載多個IIC器件,個別IIC器件如果出現故障可能引起總線鎖死,進而引起整個總線通信故障。本文以三星公司的一款RISC微處理器S3C2440A的IIC接口為例對IIC總線讀寫故障的分析及處理進行了研究,給出了故障現象分析及軟件處理方法。

二、S3C2440A的IIC總線接口

三星公司的S3C2440A為手持設備和普通應用提供了低功耗和高性能的小型芯片微處理器的解決方案,其處理器是基于Advanced RISC Machines(ARM)公司設計的16/32位ARM920T核心。S3C2440A可以支持一個多主控IIC總線串行接口。一條專用串行數據線(SDA)和一條專用串行時鐘線(SCL)傳遞連接到IIC總線的主控和外設之間的信息。在多主控IIC總線模式中,多個S3C2440A可以發送或接收串行數據來自或到從設備。主機S3C2440A可以通過IIC總線啟動和結束數據傳輸,S3C2440A的IIC總線是使用標準總線仲裁步驟。為了控制多主控IIC總線操作,必須寫入值到以下寄存器中:IIC總線控制寄存器(IICCON)、IIC總線控制/狀態寄存器(IICSTAT)、IIC總線Tx/Rx數據移位寄存器(IICDS)、IIC總線地址寄存器(IICADD)。

當釋放了IIC總線時,SDA和SCL線應該都保持為高電平。一個高到低SDA的變化可以啟動一個起始條件。SCL穩定保持在高電平時的一個低到高SDA的變化可以啟動一個停止條件。起始和停止條件通常由主設備產生。第一個數據字節為7位地址值,其在啟動起始條件后放到總線上,可以確定出主設備要選擇的從設備。第8位是決定傳輸方向(讀或寫)。每個放到SDA線上的字節都應該總共為8位。字節可以在總線傳輸操作期間無限制的發送或接收。數據通常從最高有效位(MSB)開始發送,并且每個字節應該立即通過應答(ACK)位跟上。S3C2440A的IIC總線框圖如下圖1所示,圖2為主機發送器模式操作流程。

圖1 IIC總線方框圖

圖2 主機發送器模式操作流程

三、S3C2440A的IIC故障現象分析及處理

3.1 S3C2440A的IIC故障現象分析

S3C2440A的U8和M9管腳分別為IICSCL和IICSDA引腳,也可復用為普通IO口GPE14和GPE15。系統IIC故障時,IIC讀寫無法正常進行,表現為讀寫數據錯誤或始終停留在讀寫狀態等待環節。通過軟件調試跟蹤或者將關鍵信息點打印輸出可判斷IIC讀寫是否處于故障狀態。

在S3C2440A的實際應用中有兩種典型的IIC故障問題:一是S3C2440A的IIC引腳接觸不良或損壞;二是總線上有IIC器件損壞進而使IIC總線數據讀寫異常。對于上述兩類問題的定位,可以利用S3C2440A的IIC引腳可復用的屬性來判斷,例如將U8和M9配置成普通IO口屬性,在無IIC操作時,通過對GPE14和GPE15的置高或置低,在IIC總線可測量處對電平進行實際測量,與期望電平進行對比,如果測量電平與期望電平不一致,則說明S3C2440A的引腳接觸不良或損壞,反之則可排除S3C2440A的IIC引腳問題。

3.2 S3C2440A的IIC故障軟件處理

為了防止S3C2440A的IIC故障引起讀寫狀態持續等待,在實際應用中可添加等待超時處理。下面分別給出不含超時處理的Demo代碼及實際應用中采用的超時處理代碼:

/*不含超時處理的Demo代碼*/

void IICWrite(U8 slvAddr, U32 addr, U8 data)

{

_iicMode = WRDATA;

_iicPt = 0;

_iicData[0] = (U8)addr;

_iicData[1] = data;

_iicDataCount = 2;

rIICDS = slvAddr | ((addr & 0xff00) >> 8) << 1;

rIICSTAT = 0xf0;

while(_iicDataCount != -1);

_iicMode = POLLACK;

while(1)

{

rIICDS = slvAddr | ((addr & 0xff00) >> 8) << 1;

_iicStatus = 0x100;

rIICSTAT = 0xf0;

rIICCON = 0xe0;

while(_iicStatus == 0x100);

if(?。╛iicStatus & 0x1))

{

break;

}

}

rIICSTAT = 0xd0;

rIICCON = 0xe0;

Delay(1);

}

/*添加超時處理的代碼*/

void IICWrite(U8 slvAddr, U32 addr, U8 data)

{

U16 cnt_1 = 0; //用于超時控制

U16 cnt_2 = 0; //用于超時控制

_iicMode = WRDATA;

_iicPt = 0;

_iicData[0] = (U8)addr;

_iicData[1] = data;

_iicDataCount = 2;

rIICDS = slvAddr | ((addr & 0xff00) >> 8) << 1;

rIICSTAT = 0xf0;

while((_iicDataCount != -1) && (cnt_1 < CNTMAX))

{

cnt_1++;

}

_iicMode = POLLACK;

while(1)

{

rIICDS = slvAddr | ((addr & 0xff00) >> 8) << 1;

_iicStatus = 0x100;

rIICSTAT = 0xf0;

rIICCON = 0xe0;

while((_iicStatus == 0x100) && (cnt_2 < CNTMAX))

{

cnt_2++;

}

if(?。╛iicStatus & 0x1))

{

break;

}

}

rIICSTAT = 0xd0;

rIICCON = 0xe0;

Delay(1);

}

除此之外,還應在軟件設計中添加必要的出錯處理與異常告警,比如對依靠IIC總線獲取的非核心數據使用前增加數據異常判斷,如出現異常值則給出錯誤提示并提供一組可用的缺省值以避免系統功能進入完全故障狀態。

四、結束語

本文給出的IIC總線故障分析及軟件處理方法是對實際應用過程中所遇到的IIC故障問題的研究與總結,雖以S3C2440A RISC微處理器為例進行闡述,對其他IIC器件的故障分析與處理同樣具有參考價值。在實際應用中增加IIC讀寫等待超時處理與數據異常處理能夠有效地減小IIC器件故障給系統帶來的不利影響。

參考文獻

[1]何立民.I2C總線應用系統設計[M].北京:北京航空航天大學出版社,1995.

[2]侯喆,何凱.由于IIC總線鎖死引起保護裝置異常的問題分析[J].電力系統保護與控制,2010,38(7),106-108.

猜你喜歡
故障處理
輸煤皮帶機的電氣組成和故障處理對策
探討配電線路運行維護和故障處理
試析汽輪機檢修中油系統的常見故障及處理方法
智能閥門定位器的工作原理及故障處理
電力系統配電自動化及故障的處理
高校網絡維護與故障處理探析
電力變壓器高壓試驗技術及故障處理
鋼鐵冶煉機械設備的故障診斷及處理分析
中國市場(2016年41期)2016-11-28 05:34:44
天然氣管道運行中常見設備故障及處理對策
大型化工裝置儀表自控系統的故障處理研究
主站蜘蛛池模板: 国产精品极品美女自在线网站| 日韩av资源在线| a网站在线观看| 国产乱论视频| 手机成人午夜在线视频| 国内精自线i品一区202| 免费99精品国产自在现线| 美美女高清毛片视频免费观看| 中文字幕久久波多野结衣| 丰满人妻久久中文字幕| 欧美高清三区| 精品国产成人a在线观看| 国产内射在线观看| 日韩无码视频网站| a在线亚洲男人的天堂试看| 国产成人亚洲综合A∨在线播放| 亚洲综合经典在线一区二区| 国产一区二区三区免费观看| 嫩草国产在线| 69av在线| 9999在线视频| 国产福利在线观看精品| 99er精品视频| 毛片视频网址| 91丝袜乱伦| 国产精品久线在线观看| 久久久久国产精品嫩草影院| 999精品视频在线| 日韩欧美综合在线制服| 在线观看国产黄色| 国产三区二区| 日韩二区三区无| 国产区网址| 中文字幕久久亚洲一区| 欧美精品影院| 91久久大香线蕉| 91欧美在线| 久久夜夜视频| 亚洲午夜福利精品无码不卡| lhav亚洲精品| 狠狠亚洲五月天| 国产Av无码精品色午夜| 欧美黑人欧美精品刺激| 在线亚洲小视频| 国产网站黄| 亚欧乱色视频网站大全| 欧美色图第一页| 亚洲高清中文字幕| 日韩福利在线视频| 思思热在线视频精品| 欧美日本在线| 大香伊人久久| 国产免费高清无需播放器| 国产无码精品在线播放| 国产第二十一页| 无码粉嫩虎白一线天在线观看| 色AV色 综合网站| 色欲色欲久久综合网| 国产乱子伦无码精品小说| 尤物精品视频一区二区三区| 国产91高跟丝袜| 日韩高清欧美| 国内精自线i品一区202| 亚洲黄色视频在线观看一区| 国产自产视频一区二区三区| 国产18页| 亚洲不卡影院| 中国国产一级毛片| 色综合久久无码网| 天天色综合4| 国产人人射| 另类专区亚洲| 欧美日韩理论| 久久午夜夜伦鲁鲁片无码免费| 日本人真淫视频一区二区三区| 萌白酱国产一区二区| 伊人成人在线视频| 国产精品毛片在线直播完整版| 日韩福利在线视频| 国产成人三级| 免费av一区二区三区在线| 国产欧美亚洲精品第3页在线|