《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計(jì) > 業(yè)界動(dòng)態(tài) > WinCE下使用GPIO中斷功能

WinCE下使用GPIO中斷功能

2017-05-17
關(guān)鍵詞: interrupt WinCE GPIO

  1). 簡(jiǎn)介

  GPIO的中斷功能對(duì)于嵌入式設(shè)備是一個(gè)基本功能,本文就基于WinCE系統(tǒng)演示GPIO中斷功能使用,所采用的嵌入式系統(tǒng)為Toradex Colibri iMX6S ARM計(jì)算機(jī)模塊配合Colibri EvaBoard開發(fā)載板。

  2). 準(zhǔn)備

  a). Toradex ColibriiMX6S (基于NXP iMX6 Solo SoC) 計(jì)算機(jī)模塊配合ColibriEva Board開發(fā)載板。

  b). WinCE 使用Toradex發(fā)布的最新版WEC7鏡像V1.1Beta4版本。

  c). 調(diào)試中斷及GPIO所需的Library使用Toradex官方發(fā)布的CEiMX6 library 版本。

  d). 測(cè)試所使用的基準(zhǔn)GPIO demo來自于上述library文件中的libdemo目錄。

  e). 測(cè)試所使用的基準(zhǔn)Interruptdemo請(qǐng)從這里下載。

  3). 通過按鍵測(cè)試中斷應(yīng)用

  a). 首先通過按鍵輸入測(cè)試中斷,按照Interruptdemo配置,還需要一個(gè)GPIO輸出在接收到中斷后改變其所驅(qū)動(dòng)的LED等狀態(tài)。在選擇GPIO的時(shí)候,請(qǐng)配合Colibri iMX6 手冊(cè)來選定未被系統(tǒng)默認(rèn)功能占用的引腳,如果一定要一些被CE占用但對(duì)于產(chǎn)品并未使用功能的引腳,需要現(xiàn)在WinCE注冊(cè)表中禁止該功能驅(qū)動(dòng)來釋放對(duì)應(yīng)管腳,否則會(huì)產(chǎn)生沖突,而是中斷程序獲取中斷統(tǒng)計(jì)異常,或者GPIO輸出被干擾。這里為了演示,就選擇模塊SODIMM Pin 49和43兩個(gè)管腳,默認(rèn)被SD/MMC接口占用,49管腳作為中斷輸入,43管腳作為GPIO輸出驅(qū)動(dòng)LED。

  b). 硬件連接,將Colibri Eva載板X10連接器 SODIMM_49和X21連接器SW6連接,并去掉對(duì)應(yīng)的X11 跳線帽;將X10連接器 SODIMM_43和X21連接器LED1連接,并去掉對(duì)應(yīng)的X11 跳線帽。

  c). iMX6 WEC7系統(tǒng)中如下方式在注冊(cè)表中關(guān)閉SD驅(qū)動(dòng),然后保存注冊(cè)表并重啟模塊。

  ----------------------------

  [HKLM\Drivers\BuiltIn\SDBusDriver]

  “Dll”= “_SDBus.dll

  ----------------------------

  d). 在VS2008中打開Interruptdemo程序,如下修改“interruptdemo.c”文件,中斷方式保持上升沿方式,只添加按鍵抖動(dòng)過濾以及中斷次數(shù)統(tǒng)計(jì)代碼。同時(shí)由于下載的demo中自帶的庫(kù)版本較老,請(qǐng)使用最新版本的庫(kù)文件替換”inc”和”libs“目錄的文件。

  ----------------------------

  #define INTERRUPT_PIN  49                 ///<constant interrupt pin

  #define OUTPUT_PIN 43                 ///<constant output pin

  …

  BOOL pinLevelint =FALSE;                               ///< Variable to get irq pin current level

  int intCounter = 0;                                     ///< Variable to count irq numbers

  …

  if (retVal ==WAIT_OBJECT_0)

  {

  Sleep(10);                                                       ///< eliminate button jitter

  pinLevelint= Gpio_GetLevel(hGpio, interruptPin);

  if(pinLevelint == TRUE)

  {

  if(pinLevel == TRUE)

  {

  Gpio_SetLevel(hGpio, outputPin,ioLow);               ///< Set output pin(SODIMM 135) to low

  pinLevel = FALSE;

  }

  else

  {

  Gpio_SetLevel(hGpio, outputPin,ioHigh);        ///< Setoutput pin(SODIMM 135) to high

  pinLevel = TRUE;

  }

  intCounter = intCounter++;                                    ///< count interrupt triggered numbers

  printf("\nInterruptcounter : %d", intCounter);

  Int_InterruptDone(hIntr,systemInterrupt);

  }

  else

  /*if(MessageBox(NULL, L"Interrupt Event Detected, continue Waiting?",L"Interrupt", MB_YESNO) == IDNO)

  {

  break;

  }*/

  {

  Int_InterruptDone(hIntr,systemInterrupt);

  }

  …

  ----------------------------

  e). 編譯并部署程序并執(zhí)行,結(jié)果如下,每按鍵一次SW6,會(huì)記錄并打印一次中斷,同時(shí)LED1也會(huì)變換狀態(tài)。

  20170112165609949_w.jpg

  4). 通過PWM輸入測(cè)試中斷輸入

  a). 在上面測(cè)試的基礎(chǔ)上,選擇SODIMMPin 133作為PWM輸出GPIO,在Colibri Eva載板上面通過X10連接器將SODIMM_133和SODIMM_49互連。

  b). 在VS2008中打開Gpio demo程序,修改Gpio_Demo.c,設(shè)置pin為133,同時(shí)做周期為40ms的PWM波輸出。

  ----------------------------

  …

  uIo io1 = {133, ioColibriPin};

  …

  for(int i=0;i<20;i++)< span="">

  {

  Gpio_SetLevel      (hGpio, io1, ioHigh);

  Sleep(20);

  Gpio_SetLevel       (hGpio, io1, ioLow);

  Sleep(20);

  }

  …

  ----------------------------

  c). 編譯部署gpio demo到imx6核心板,先運(yùn)行上面的interruptdemo,然后運(yùn)行g(shù)piodemo,可以看到如下結(jié)果捕獲了20次中斷。

  20170112165610340_w.jpg

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請(qǐng)及時(shí)通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
中文日韩欧美| 亚洲天天影视| 欧美性大战久久久久久久| 久久久久久久尹人综合网亚洲| 亚洲一区二区三区四区视频| 亚洲精品一品区二品区三品区| 久久国产精品免费一区| 亚洲免费婷婷| 亚洲一区二区三区在线观看视频 | 在线亚洲一区二区| 亚洲美女毛片| 99re6这里只有精品| 日韩午夜在线播放| 一区二区三区精品久久久| 99视频有精品| 亚洲午夜久久久久久久久电影网| 艳女tv在线观看国产一区| 99re66热这里只有精品3直播| 亚洲理论在线| 一区二区三区成人| 亚洲视频中文字幕| 亚洲欧美国产不卡| 欧美制服丝袜第一页| 欧美在线网站| 另类人畜视频在线| 欧美韩日高清| 欧美日韩国产首页在线观看| 欧美日韩一区二区三区在线观看免| 欧美日韩精品在线播放| 欧美调教视频| 国产日韩精品在线播放| 国产午夜精品久久久久久免费视 | 欧美日韩国产一区| 欧美亚州一区二区三区| 国产精品嫩草99a| 国产视频在线一区二区| 黄网站色欧美视频| 亚洲欧洲在线免费| 亚洲图片激情小说| 久久精品国产免费观看| 最新国产拍偷乱拍精品| 一道本一区二区| 亚洲主播在线观看| 久久精品视频va| 欧美寡妇偷汉性猛交| 欧美无乱码久久久免费午夜一区| 国产精品亚洲аv天堂网| 国产一区二区三区久久久| 亚洲国产欧美一区| 一区二区三区久久精品| 欧美一区二区三区的| 91久久国产综合久久91精品网站| 99国产一区二区三精品乱码| 亚洲欧美日韩一区| 久色婷婷小香蕉久久| 欧美日韩亚洲成人| 国产一区二区三区在线观看视频| 亚洲国产女人aaa毛片在线| 亚洲素人一区二区| 亚洲国产另类久久精品| 亚洲午夜一区| 裸体女人亚洲精品一区| 欧美日韩综合精品| 国内伊人久久久久久网站视频 | 欧美一区二区啪啪| 一区二区电影免费在线观看| 久久国内精品自在自线400部| 你懂的视频一区二区| 国产精品久久久一区二区三区| 黄页网站一区| 亚洲一区二区视频| 亚洲美女精品成人在线视频| 久久国产精品久久国产精品| 欧美精品尤物在线| 国产一区二区你懂的| 99爱精品视频| 亚洲国产精品尤物yw在线观看| 亚洲欧美一区二区原创| 欧美精品粉嫩高潮一区二区| 国产亚洲精久久久久久| 一本色道久久综合亚洲精品婷婷| 亚洲成色999久久网站| 亚洲欧美99| 欧美另类高清视频在线| 韩国成人理伦片免费播放| 中文国产亚洲喷潮| 日韩视频在线播放| 久久麻豆一区二区| 国产女主播一区| 一本久久a久久免费精品不卡| 亚洲国产三级| 久久精品国产清自在天天线| 国产精品videosex极品| 亚洲区免费影片| 91久久久在线| 久久亚洲综合网| 国产色产综合产在线视频| 亚洲先锋成人| 亚洲视频网在线直播| 欧美激情第六页| 亚洲电影免费观看高清完整版在线观看| 亚洲欧美在线另类| 亚洲免费伊人电影在线观看av| 欧美经典一区二区| 亚洲高清在线视频| 久久精品国产第一区二区三区最新章节 | 欧美另类变人与禽xxxxx| 国精品一区二区三区| 亚洲欧美日韩一区| 亚洲欧美日韩在线高清直播| 欧美日韩久久不卡| 亚洲人永久免费| 亚洲精品乱码视频 | 欧美精品一区在线播放| 亚洲国产精品一区制服丝袜| 亚洲福利在线观看| 裸体歌舞表演一区二区| 狠狠噜噜久久| 亚洲国产精品传媒在线观看| 久久久久久亚洲精品中文字幕| 国产区精品在线观看| 午夜免费日韩视频| 久久国产直播| 韩日欧美一区二区三区| 欧美中文在线观看国产| 久久亚洲精品中文字幕冲田杏梨| 国产真实久久| 亚洲大胆视频| 欧美粗暴jizz性欧美20| 亚洲国产婷婷综合在线精品| 亚洲美女网站| 欧美日韩免费一区二区三区视频| 日韩一级黄色av| 亚洲免费在线观看视频| 国产精品免费看| 欧美一级午夜免费电影| 久久久久久97三级| 在线播放中文字幕一区| 亚洲激情精品| 欧美精品久久久久久久| 日韩视频永久免费| 午夜精品成人在线| 国产亚洲人成a一在线v站| 亚洲春色另类小说| 欧美精品日韩| 亚洲无亚洲人成网站77777| 欧美一区91| 韩日欧美一区二区三区| 亚洲日韩欧美视频一区| 欧美日韩亚洲三区| 午夜国产一区| 欧美不卡在线| 亚洲最新色图| 久久久av水蜜桃| 亚洲狠狠婷婷| 亚洲欧美三级在线| 黑人巨大精品欧美黑白配亚洲| 亚洲精品一区二区三区99| 欧美三级午夜理伦三级中视频| 亚洲在线一区| 美女视频网站黄色亚洲| 99re这里只有精品6| 久久国产精品99国产精| 亚洲国产精品久久精品怡红院| 亚洲神马久久| 国产曰批免费观看久久久| 亚洲美女淫视频| 国产精品亚发布| 亚洲欧洲另类国产综合| 欧美日韩在线视频观看| 欧美一级大片在线观看| 欧美成在线观看| 亚洲免费在线精品一区| 免费在线观看一区二区| 亚洲婷婷在线| 欧美成人xxx| 亚洲欧美精品中文字幕在线| 欧美国产1区2区| 欧美一区二区三区另类| 欧美日韩大片一区二区三区| 午夜在线电影亚洲一区| 欧美国产日韩一区二区三区| 亚洲欧美在线aaa| 欧美日韩精品中文字幕| 久久精品久久综合| 国产精品久久久久久影视| 亚洲日本欧美天堂| 国产日韩一区二区三区在线播放| 99一区二区| 在线播放中文字幕一区| 欧美亚洲一级片| 亚洲精品日本| 乱码第一页成人| 亚洲欧美在线一区二区| 欧美日韩亚洲不卡| 亚洲片在线观看| 国产午夜精品视频| 亚洲综合电影| 亚洲精品一二| 欧美a级片网|