程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> openMSP430之io_test,openmsp430io_test

openMSP430之io_test,openmsp430io_test

編輯:關於C語言

openMSP430之io_test,openmsp430io_test


 

openMSP430: IO functionality test with interupt

#include "omsp_system.h"

volatile char shift = 0x01;  // Global variable
 
int main(void) 
{ WDTCTL = WDTPW | WDTHOLD; // Disable watchdog timer P2DIR = 0xff; // Port 2.0-2.7 = output P2OUT = shift;       // Initialize Port 2 P1DIR = 0x00; // Port 1.0-1.7 = input P1IE = 0x01; // Port 1.0 interrupt enabled P1IES = 0x00; // Port 1.0 interrupt edge selection (0=pos 1=neg) P1IFG = 0x00; // Clear all Port 1 interrupt flags (just in case) eint(); // Enable interrupts while (1)
  { if (P2OUT == 0x00)
   {     P2OUT = shift;  }
    else if (shift == 0x01)
    {
     P2OUT = (P2OUT << 1); }
    else
    {    P2OUT = (P2OUT >> 1); } } } // Port1 Interrupt Service Routine interrupt(PORT1_VECTOR) port1_isr(void)
{ if (P1IFG & 0x01)
{ shift  ^= 0x81; P1IFG &= ~0x01;  // Clear Port 1.0 interrupt flag } }

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved