亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? accelerometer.c

?? DEMOLL16_Lab_code使用資料
?? C
?? 第 1 頁 / 共 2 頁
字號:

/////////////////////////////////////////////////////////////////////////////////////////
// PeriphInit
// --------------------------------------------------------------------------------------
// Initializes various registers and peripherals
/////////////////////////////////////////////////////////////////////////////////////////
void PeriphInit(void)
{
  // Disables COP and Enable STOP instruction and RESET and BKGD pin
  SOPT1 = 0x23;
  
  // Selects FEI mode
  // Sets trimming for fBUS about 25 MHz
  ICS_FEI();
  
  // Enable all pullups
  PTAPE = 0xFF; 
  PTBPE = 0xFF; 
  PTCPE = 0xFF; 
  PTDPE = 0xFF; 
  PTEPE = 0xFF; 
; 
  


  // Configures ADC peripheral (ADC clock = 2MHz)
  // Bus clock as clock source, 12-bit conversion and divisor=4
  ADCCFG = 0x44;
  APCTL1 = 0x07;
 
   
  // Timer2 overflow about every 1ms
  TPM2MOD = 25000;
  // Stops timer2 and select 1 as prescaler divisor
  TPM2SC = 0x00;
    
  // Initializes SCI Peripheral
  InitSCI(fei_baud);
  
  ////////////////////////////////////////////////////////////////////////////  
// Init LCD 
////////////////////////////////////////////////////////////////////////
     
   LCDPEN0 = 0xFF;
   LCDPEN1 = 0xFF;
   LCDPEN2 = 0xFF;
   LCDPEN3 = 0xFF;
    
             //Enable all LCD Pins 
    
    //Enable Back Plane Pins
    LCDBPEN0 = 0xDB; //
    LCDBPEN1 = 0x03;

     
    //Set Back Planes
    LCDWF0 = 0x01;
    LCDWF3 = 0x02;
    LCDWF6 = 0x04;
    LCDWF9 = 0x08;
    LCDWF1 = 0x10;
    LCDWF7 = 0x20;
    LCDWF4 = 0x40;
    LCDWF8 = 0x80;
      
    //Front plane data
      
      SetDisplay();
      
      
      ///LCD Control registers
      LCDRVC = 0x8b;
      LCDSUPPLY = 0x83;
      LCDC0 =    0xA7;  
      
      //Set up blink mode
      
      LCDBCTL_BRATE =4;
      //LCDBCTL_BLINK  = 1; 
     
      
    

          
}

/////////////////////////////////////////////////////////////////////////////////////////
// filter_data 
// --------------------------------------------------------------------------------------
// Filters the collected x,y,z data using simple IIR filter
/////////////////////////////////////////////////////////////////////////////////////////
void filter_data()
{
byte i;
dword X, Y, Z;

  X = x.reading[samp];
  Y = y.reading[samp];
  Z = z.reading[samp];
  
  for (i=samp;i>0;i--){
    X = (X + ((x.reading[i] + x.result[i-1])>>1))>>1;
    Y = (Y + ((y.reading[i] + y.result[i-1])>>1))>>1;
    Z = (Z + ((z.reading[i] + z.result[i-1])>>1))>>1;
  }
  
  x.result[samp] = (word)X;
  y.result[samp] = (word)Y;
  z.result[samp] = (word)Z;
  
  
}

/////////////////////////////////////////////////////////////////////////////////////////
// avg_data 
// --------------------------------------------------------------------------------------
// - averages 10 collected x,y,z values
// - puts results in elements 0 of arrays
/////////////////////////////////////////////////////////////////////////////////////////
void avg_data()
{
byte j;
long x_avg=0, y_avg=0, z_avg=0;

  for (j=1;j<=samp;j++){
    x_avg += x.reading[j];
    y_avg += y.reading[j];
    z_avg += z.reading[j];
  }
  x.result[samp] = (word)(x_avg>>4);
  y.result[samp] = (word)(y_avg>>4);
  z.result[samp] = (word)(z_avg>>4);
  
 
}

/////////////////////////////////////////////////////////////////////////////////////////
// copy_data 
// --------------------------------------------------------------------------------------
// - copies reading into result
/////////////////////////////////////////////////////////////////////////////////////////
void copy_data() {
  x.result[samp] = x.reading[samp];
  y.result[samp] = y.reading[samp];
  z.result[samp] = z.reading[samp];
}

/////////////////////////////////////////////////////////////////////////////////////////
// ReadAcceleration
// --------------------------------------------------------------------------------------
// Reads acceleration data on a given axis and saves it to the axis structure
/////////////////////////////////////////////////////////////////////////////////////////
word ReadAcceleration(void)
{

  word adc;

  while (!(ADCSC1_COCO)){}              // Waits until ADC conversion is completed

  adc=ADCR;
  return adc;
    
}

/////////////////////////////////////////////////////////////////////////////////////////
// ShowAcceleration
// --------------------------------------------------------------------------------------
// -  Prints the accelaration data in the terminal;
/////////////////////////////////////////////////////////////////////////////////////////
void ShowAcceleration ()
{
word SampleCNT;
byte j,k;
   
  // Read acceleration data
  ADCSC1 = 0x01;                 // Select ADC1 (PTA1) channel
  x.reading[samp]  = (dword)(ReadAcceleration()<<4);
  ADCSC1 = 0x02;                 // Select ADC8 (PTA6) channel 
  y.reading[samp]  = (dword)(ReadAcceleration()<<4);
  ADCSC1 = 0x03;                 // Select ADC9 (PTA7) channel
  z.reading[samp]  = (dword)(ReadAcceleration()<<4);
  
  StartTPM(0);   //0 = TPM prescaler = /2

  if(samp>0){
    switch (mode){
      case filter: filter_data(); 
      ClearDisplay();
      Freescale(ON);
      string = "IIRFILTER";
      DisplayString(string); 
    break;
  
      case avg   : avg_data();      
        ClearDisplay();
        Freescale(ON);
        string = "AVERAGE";
        DisplayString(string);
    break;
      default    : copy_data();
    }
  } else {
    copy_data();
  }
  
  SampleCNT = StopTPM();
  if (SampleCNT<0x0100) {
    for(j=0xff;j>0;j--){
      for(k=0x10;k>0;k--){}
    }
  }

  // Display Acceleration
  SendMsg("\r\n");
  SendMsg(word2asc((word)x.result[samp],dis_base));
  SendMsg(",");
  SendMsg(word2asc((word)y.result[samp],dis_base));
  SendMsg(",");
  SendMsg(word2asc((word)z.result[samp],dis_base));
  SendMsg(",");
  SendMsg(word2asc(SampleCNT,dis_base));
  
  // Shift array of results if we hit max
  if (samp >= max-1) {
    for (j=0;j<max-1;j++){
      x.result[j]  = x.result[j+1];
      x.reading[j] = x.reading[j+1];
      y.result[j]  = y.result[j+1];
      y.reading[j] = y.reading[j+1];
      z.result[j]  = z.result[j+1];
      z.reading[j] = z.reading[j+1];
    }
    samp = max-1;
  } else {
    samp++;
  } //end if (i => max) 
  
}

/////////////////////////////////////////////////////////////////////////////////////////
// MAIN
// --------------------------------------------------------------------------------------
// Entry point
/////////////////////////////////////////////////////////////////////////////////////////
void main(void)
{
  PeriphInit();
  InitKBI();
  EnableInterrupts; 
// Selects fBUS as timer1 clock source and start timer
  TPM1SC = 0x08;
//  SendMsg("\fX, Y, Z\r\n");
  
  ClearDisplay();
  Freescale(ON);
  string = "ACCELDEMO";
  DisplayString(string);
  
  
  while (!SW1){}
  for(;;){
    while(SW4){
      ShowAcceleration();
    } //end while(SW4)
    
  } //end for(;;)
    
}

/////////////////////////////////////////////////////////////////////////////////////////
// KBI_ISR
// --------------------------------------------------------------------------------------
// Reads PTA[7:6] and shifts to LSBs
// Debounces switch
// Acknowledges KBF
/////////////////////////////////////////////////////////////////////////////////////////
interrupt VectorNumber_Vkeyboard void KBI_ISR(void){
byte d,b;
  
  //capture which pin was pushed
  mode = (byte)(KBI_VAL);
  //debounce button
  for (d=0xff;d>0;d--){
    for (b=0x80;b>0;b--){}
  }
  //clear KBF
  KBISC_KBACK = 1;
}
    
  

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产91精品一区二区麻豆亚洲| 久久婷婷国产综合国色天香| 亚洲激情在线播放| 色综合 综合色| 亚洲愉拍自拍另类高清精品| 欧美色图天堂网| 美女在线视频一区| 欧美国产精品v| 在线看日韩精品电影| 亚洲电影在线播放| 精品乱人伦一区二区三区| 国产精品中文有码| 亚洲欧美日韩国产成人精品影院| 欧美性淫爽ww久久久久无| 免费在线成人网| 欧美国产精品一区二区三区| 在线精品视频一区二区三四| 日本视频中文字幕一区二区三区| 精品久久一二三区| 99国产精品视频免费观看| 亚洲国产精品麻豆| 久久久久久久久蜜桃| 99久久精品国产导航| 日本在线不卡视频一二三区| 久久精品无码一区二区三区| 一本色道**综合亚洲精品蜜桃冫 | 欧美r级电影在线观看| 懂色av一区二区夜夜嗨| 亚洲一区二区三区美女| 久久亚区不卡日本| 在线亚洲欧美专区二区| 极品少妇xxxx精品少妇| 亚洲精品高清视频在线观看| 日韩欧美中文字幕公布| www.亚洲在线| 精品亚洲免费视频| 夜夜嗨av一区二区三区网页| 欧美成人福利视频| 欧美午夜视频网站| 风间由美一区二区av101| 天天做天天摸天天爽国产一区| 欧美激情在线看| 在线不卡免费欧美| caoporm超碰国产精品| 麻豆精品视频在线观看免费| 一区二区三区影院| 日本一区二区三区四区| 日韩免费看网站| 欧美午夜宅男影院| 99在线热播精品免费| 精品亚洲国产成人av制服丝袜 | 蜜臀av一区二区| 亚洲精品ww久久久久久p站| 国产亚洲欧美色| 欧美一区二区三区人| 99re66热这里只有精品3直播| 乱一区二区av| 免费观看在线色综合| 亚洲一区二区精品久久av| 国产精品久久久久久久久动漫| 精品乱人伦小说| 欧美tk丨vk视频| 欧美电视剧在线观看完整版| 欧美日韩国产首页| 欧美视频三区在线播放| 色老汉一区二区三区| 99视频国产精品| 成人国产电影网| 成人高清免费观看| 丁香激情综合五月| 高清成人免费视频| 国产91丝袜在线18| 国产精品综合一区二区三区| 激情综合五月婷婷| 蜜臀av性久久久久蜜臀av麻豆| 亚洲一区二区三区精品在线| 一区二区三区国产| 亚洲综合免费观看高清完整版在线| 欧美激情在线一区二区| 国产精品美女久久久久久久久| 国产性色一区二区| 国产精品乱码人人做人人爱| 国产精品少妇自拍| 国产精品久99| 亚洲免费在线视频| 亚洲国产精品麻豆| 奇米影视在线99精品| 美腿丝袜亚洲色图| 国产精品白丝av| 91亚洲精品久久久蜜桃| 色综合久久中文字幕综合网| 色婷婷香蕉在线一区二区| 欧美影院一区二区三区| 91精品国产综合久久久久久久久久| 91精品欧美一区二区三区综合在| 日韩无一区二区| 国产三级精品三级在线专区| 中文幕一区二区三区久久蜜桃| 亚洲视频 欧洲视频| 亚洲aaa精品| 国产一区二区三区| 色综合久久九月婷婷色综合| 欧美日韩国产影片| 精品精品国产高清a毛片牛牛| 国产欧美视频一区二区| 亚洲激情在线激情| 激情综合五月天| 91影院在线观看| 51精品久久久久久久蜜臀| 久久网站最新地址| 亚洲欧美另类在线| 麻豆精品久久精品色综合| eeuss鲁片一区二区三区| 在线播放中文字幕一区| 欧美国产激情二区三区| 日韩激情一二三区| 成人性视频免费网站| 欧美日韩一级二级三级| 久久久影视传媒| 亚洲国产精品综合小说图片区| 麻豆久久久久久| 972aa.com艺术欧美| 日韩精品一区在线| 樱花草国产18久久久久| 国产乱码精品一品二品| 欧美探花视频资源| 国产精品丝袜在线| 丝袜诱惑亚洲看片| 91丨porny丨户外露出| 精品国一区二区三区| 性久久久久久久久久久久| 成人免费高清在线| 日韩欧美国产三级| 亚洲国产综合视频在线观看| 国产大片一区二区| 欧美一级xxx| 亚洲精品精品亚洲| 盗摄精品av一区二区三区| 日韩一级在线观看| 亚洲国产cao| 91小视频在线观看| 欧美国产乱子伦| 国产精品乡下勾搭老头1| 欧美一区二区三区爱爱| 亚洲国产一二三| 91麻豆精品在线观看| 国产欧美精品一区二区三区四区 | 精品久久人人做人人爽| 午夜一区二区三区视频| 91一区二区三区在线观看| 国产亚洲污的网站| 国内精品久久久久影院薰衣草| 欧美日韩国产美女| 一个色综合网站| 91国产福利在线| 亚洲欧美一区二区不卡| av网站一区二区三区| 中文字幕va一区二区三区| 国产精品18久久久久久久久久久久| 日韩一级欧美一级| 免费成人在线观看视频| 91精品国产福利| 免费欧美在线视频| 日韩一区二区视频在线观看| 污片在线观看一区二区| 欧美日韩成人在线| 日欧美一区二区| 欧美电视剧在线看免费| 国产一区不卡视频| 国产亚洲制服色| www.99精品| 一区二区三区中文字幕精品精品| 99视频在线观看一区三区| 最新国产の精品合集bt伙计| 99re8在线精品视频免费播放| 亚洲精品视频自拍| 欧美色综合久久| 日韩av中文在线观看| 精品国产一区二区三区不卡| 国产一区二三区| 国产精品久久久久影院亚瑟| 97久久精品人人做人人爽50路| 亚洲欧美电影一区二区| 欧美日韩国产在线观看| 另类人妖一区二区av| 国产日产亚洲精品系列| fc2成人免费人成在线观看播放 | 国产欧美一区二区精品忘忧草 | 欧美丝袜丝交足nylons图片| 天天综合天天综合色| 日韩免费高清av| 国产69精品一区二区亚洲孕妇| ●精品国产综合乱码久久久久 | 免费欧美高清视频| 国产精品日日摸夜夜摸av| 欧美综合在线视频| 久久精品免费看| 国产精品不卡在线观看| 欧美日韩亚洲另类| 极品美女销魂一区二区三区免费|