<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > NEC V850 之 通用輸入輸出I/O口

          NEC V850 之 通用輸入輸出I/O口

          作者: 時(shí)間:2016-12-03 來(lái)源:網(wǎng)絡(luò) 收藏
          編譯環(huán)境:IAR For V850 3.81 + MiniCube2

          硬件平臺(tái):NEC V850ES/FG3 D70F3630 (D70F3377A)

          本文引用地址:http://www.ex-cimer.com/article/201612/325097.htm


          硬件資源:

          LED端口:P94 P10

          KEY端口:P04


          在使用V850的管腳做為輸入輸出I/O口的時(shí)候有下面幾個(gè)步驟:

          第一步:設(shè)置端口模式寄存器(PMCn);

          第二步:設(shè)置端口方向寄存器(PMn);

          第三步:對(duì)端口寄存器賦值或者對(duì)端口寄存器查詢獲得輸入值(Pn)。

          下面是代碼:

          來(lái)自GPIO.c

          void GPIO_PortInit(void)
          {
          PMC9L_bit.no4 = 0 ; // 設(shè)置端口為輸入輸出口模式
          PM9L_bit.no4 = 0 ; // 設(shè)置端口為輸出



          PMC1_bit.no0 = 0 ; // 設(shè)置端口為輸入輸出口模式
          PM1_bit.no0 = 0 ; // 設(shè)置端口為輸出

          PMC0_bit.no4 = 0 ; // 設(shè)置端口為輸入輸出口模式
          PM0_bit.no4 = 1 ; // 設(shè)置端口為輸入
          }

          來(lái)自 GPIO.h

          #ifndef GPIO
          #define GPIO 1

          /* Includes ------------------------------------------------------------------*/
          #include
          #include

          /* Exported types ------------------------------------------------------------*/
          /* Exported constants --------------------------------------------------------*/
          /* Exported Global variables -------------------------------------------------*/
          /* Exported macro ------------------------------------------------------------*/
          #define LED1 (P1_bit.no0)
          #define LED2 (P9L_bit.no4)

          #define KEY1 (P0_bit.no4)
          /* Exported functions ------------------------------------------------------- */
          void GPIO_PortInit(void);

          #endif /* __GPIO_H */

          來(lái)自main.c

          void main(void)
          {
          WDTM2 = 0x1F ; // 關(guān)閉看門狗定時(shí)器,進(jìn)入系統(tǒng)先關(guān)看門狗定時(shí)器,防止系統(tǒng)進(jìn)入異常

          GPIO_PortInit();

          LED1 = 0 ;
          LED2 = 1 ;

          while(1)
          {
          if(KEY1 == 0)
          {
          LED1 = ~LED1;
          LED2 = ~LED2;
          }
          }
          }



          代碼部分顯而易見(jiàn),我就不再贅述。

          這里的工程模式還是采用了以前的方式,用一個(gè)大的工程里面包括的system文件夾和BSP文件夾。然后用main.h頭文件去包含所有的BSP的子頭文件。本工程取名Dream,新的平臺(tái)新的夢(mèng)想。下面上圖:

          還有需要注意到的是,如果要更換芯片的類型,要在main.h頭文件里進(jìn)行更改包含文件,并且修改option里的芯片型號(hào)。因?yàn)楣こ绦枰{(diào)用不同文件夾里的頭文件,所以要在option里設(shè)置包含路徑,在IAR里比在MDK里麻煩一些,如果移動(dòng)工程需要更改,設(shè)置位置見(jiàn)下圖:


          關(guān)鍵詞: NECV850輸入輸

          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();