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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? monitor.c

?? Texas-Instrument C2000 Series DSP example programs
?? C
字號:
/*==============================================================
  Name:           MONITOR.H                                    
  Project:        ENCODER                                      
  Originator:     Martin Staebler                              
  Description:    RS232 monitor to test sin/cos encoder s/w     
 ==============================================================
      Function List:   void   monitor(void)
                        void   Encoder_MSG(void);

      Status:         OK

      Target:         TMS320C240

      History:        (Date, Revision, Who, What)
      ---------------------------------------------------------
        02/11/97        1.0     STAE    Preliminary
  ==============================================================*/

/*--------------*/
/* Header Files */
/*--------------*/
#include <stdlib.h>             
#include <math.h>               
#include <conio.h>              /* rs232.lib */
#include <sci.h>                /* rs232.lib */
#include "C240.h"               /* peripheral register declaration for C240 */
#include "adc.h"                /* ADC macros */
#include "evm_qep.h"            /* QEP unit */
#include "encoder.h"            /* sin/cos incremental encoder settings */
#include "monitor.h"            /* rs232 monitor settings */


/*==========================================================================*/
/* S U B R O U T I N E S                                                    */
/*==========================================================================*/

/*==========================================================================*/
/* void monitor(void)                                                       */
/*==========================================================================*/
/* Function:      Enables testing of ADC module, QEP unit and sin/cos       */
/*                incremetal encoder s/w and sends data to terminal         */
/*                Terminal settings: 9600 baud                              */
/*                                   8 data bits                            */
/*                                   2 stop bits                            */
/*                                   No parity                              */
/*                                   CR -> CR/LF                            */
/*                                   See e.g. ENCODER.TRM (TERMINAL.EXE)    */
/*==========================================================================*/
void monitor(void)
{
   char c;
   char b[10]="";
   char str[20];               /* general purpose buffer */
   int i;                      /* general purpose counter */
   int val[3];
   static unsigned qep_sample;
   volatile unsigned long  angle;
   volatile float fbuffer;
         
   /*-----------------------------------------------------------*/
   /* UART initialization                                       */
   /*-----------------------------------------------------------*/
   SCI_Init(((SYSCLK*10)/8/BAUDRATE+5)/10);

   for (;;)
   {
      clrscr(); 
      sendstr_PMEM(header);
      sendstr_PMEM("\rMain Menu\r");
         
      /*-----------------*/ 
      /* Menue Selection */
      /*-----------------*/ 
      sendstr_PMEM("\r\t1) Encoder Initialization");
      sendstr_PMEM("\r\t2) ADC1,2 & QEP Test");
      sendstr_PMEM("\r\t3) Print Encoder Increment & Phase");
      sendstr_PMEM("\r\t4) Print Position (1/1000 Degrees)");
      sendstr_PMEM("\r\r Press '1'..'4'. Please make your choice. \r");

      for (c = 0; c<'1' || c>'6';c = SCI_Getc());
      switch (c)
      {
         case '1': /*------------------------*/
                   /* Encoder Initialization */
                   /*------------------------*/
                   Encoder_Init(QEP_ROLLOVER);
                   
                   sendstr_PMEM("\r\r");                 
                   sendstr_PMEM(" +--------------------+\r");
                   sendstr_PMEM(" | Encoder setup done |\r");          /* Screen Output */
                   sendstr_PMEM(" +--------------------+\r");
                   sendstr_PMEM(" >> Press any key to confirm\r");
                   for (c=0; c==0; c = (kbhit() ? getch() : 0) );
                   break; 

         case '2': /*----------------*/
                   /* ADC & QEP TEst */
                   /*----------------*/
                   clrscr();
                   sendstr_PMEM("\rInput from ADC1, ADC2, QEP: 000000 000000 000000");
                   do
                   {
                      sendstr_PMEM("\b\b\b\b\b\b\b\b\b\b\b\b\b\b");
                      sendstr_PMEM("\b\b\b\b\b\b\b");

                      /*----------------*/ 
                      /* Get ADC Values */
                      /*----------------*/ 
                      ADC_START(5,13);
                      ADC_READ2(val[0],val[1]);
                      val[0] = (val[0] - ENC_U0_OFFSET) << 1;
                      val[1] = (val[1] - ENC_U90_OFFSET)<< 1;
                     
                      /*----------------*/ 
                      /* Get Increments */
                      /*----------------*/ 
                      #ifndef QEP_POWER2
                         val[2] = QEP_GetIncr();
                      #else
                         val[2] = (T2CNT - qep_diff) & (QEP_ROLLOVER-1);
                      #endif
                
                      /*-----------------*/ 
                      /* Terminal output */
                      /*-----------------*/ 
                      ltoa ((long)val[0], str);
                      for (i=strlen(str); i<7; i++)
                         sendstr_PMEM(" ");
                      sendstr_DMEM(str);

                     ltoa ((long)val[1], str);
                     for (i=strlen(str); i<7; i++)
                        sendstr_PMEM(" ");
                     sendstr_DMEM(str);

                     ltoa ((unsigned long)val[2], str);
                     for (i=strlen(str); i<7; i++)
                        sendstr_PMEM(" ");
                     sendstr_DMEM(str);

                  } while( SCI_Getc() == -1 );
                  break;

         case '3': /*----------------------------------*/
                   /* Print Encoder Increments & Phase */
                   /*----------------------------------*/
                   clrscr();
                   sendstr_PMEM("\rSIN/COS Q-Encoder, Increments, Phase: 000000 000000");

                   do
                   {
                      sendstr_PMEM("\b\b\b\b\b\b\b\b\b\b\b\b\b\b");
    
                      /*--------------*/ 
                      /* Get Position */
                      /*--------------*/ 
                      qep_sample = Encoder_SamplePosition();
                      Encoder_CalcPosition(qep_sample);
                                        
                      /*-----------------*/ 
                      /* Terminal output */
                      /*-----------------*/ 
                      ltoa ((unsigned long) encoder_position[1], str);
                      for (i=strlen(str); i<7; i++)
                         sendstr_PMEM(" ");
                     sendstr_DMEM(str);

                      ltoa ((unsigned long) encoder_position[0], str);
                      for (i=strlen(str); i<7; i++)
                         sendstr_PMEM(" ");
                     sendstr_DMEM(str);
                  } while( SCI_Getc() == -1 );
                  break;


         case '4': /*----------------*/
                   /* Print Position */
                   /*----------------*/
                   clrscr();
                   sendstr_PMEM("\rAngle (1/1000 * Degrees): 000000000");

                   do
                   {
                      sendstr_PMEM("\b\b\b\b\b\b\b\b\b\b");
    
                      /*--------------*/ 
                      /* Get Position */
                      /*--------------*/
                      qep_sample = Encoder_SamplePosition();
                      Encoder_CalcPosition(qep_sample);

                      /*------------*/ 
                      /* Calc angle */
                      /*------------*/
                      angle = ((long) encoder_position[1]) << 16;
                      angle += (long) encoder_position[0]; 
                      fbuffer = ((double) angle)/(2048 * 0x10000);
                      fbuffer = fbuffer * 360000;
                      angle = (long) fbuffer;
                      
                      /*-----------------*/ 
                      /* Terminal output */
                      /*-----------------*/ 
                      ltoa (angle, str);
                      for (i=strlen(str); i<10; i++)
                         sendstr_PMEM(" ");
                     sendstr_DMEM(str);

                  } while( SCI_Getc() == -1 );
                  break;

       } /* end switch */
  
   } /* end for */

}    /* end monitor() */      


/*======================================================================*/
/* void  Encoder_MSG(void)                                              */
/*======================================================================*/
void  Encoder_MSG(void)
{
   clrscr();
   sendstr_PMEM("\r\r");                 
   sendstr_PMEM(" +----------------------------------------------+\r");
   sendstr_PMEM(" | S L O W L Y  Turn Encoder for Sychronization |\r");
   sendstr_PMEM(" +----------------------------------------------+\r");
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲视频免费在线| 欧洲亚洲精品在线| 蜜臀av国产精品久久久久 | 丁香啪啪综合成人亚洲小说| 亚洲国产成人av网| 一区二区三区成人| 亚洲精品老司机| 亚洲黄色av一区| 亚洲欧美韩国综合色| 中文字幕亚洲电影| 一区在线播放视频| 一区二区在线观看不卡| 亚洲男人的天堂在线观看| 亚洲精品视频观看| 爽好久久久欧美精品| 免费视频最近日韩| 精品在线播放免费| 国产真实乱对白精彩久久| 精品一区二区久久久| 国产凹凸在线观看一区二区| 成人av资源在线观看| 色综合久久综合网97色综合 | 午夜精品福利久久久| 日日摸夜夜添夜夜添国产精品| 日韩一区精品视频| 国产一区二区在线免费观看| 国产成人自拍高清视频在线免费播放| 国产一区二区三区不卡在线观看 | 国产乱人伦精品一区二区在线观看| 加勒比av一区二区| 成人性视频免费网站| 91麻豆免费视频| 欧美一区二区免费视频| 久久精品免费在线观看| 亚洲夂夂婷婷色拍ww47| 久久99国产精品尤物| 成人深夜视频在线观看| 欧美日韩不卡一区| 中文字幕乱码一区二区免费| 亚洲国产欧美在线人成| 精品在线播放午夜| 色综合天天综合在线视频| 欧美一区二区三区视频免费播放| 久久久精品免费免费| 国产精品国产三级国产专播品爱网 | 亚洲国产精品综合小说图片区| 亚洲图片欧美综合| 国产精品一级片| 欧美三级电影在线观看| 欧美国产综合一区二区| 亚洲一区在线观看免费| 日韩专区在线视频| 91伊人久久大香线蕉| 精品福利视频一区二区三区| 亚洲九九爱视频| 麻豆久久久久久| 欧美日韩一区二区三区在线| 国产欧美日韩麻豆91| 日韩va亚洲va欧美va久久| www.99精品| 久久久久综合网| 亚洲成a人片在线观看中文| 国产69精品一区二区亚洲孕妇 | 亚洲精选视频在线| 激情五月播播久久久精品| 在线观看三级视频欧美| 国产欧美一区二区精品久导航| 蜜桃一区二区三区四区| 欧美视频日韩视频在线观看| 亚洲欧洲精品一区二区三区不卡| 国产精品中文字幕欧美| 日韩你懂的在线播放| 日本vs亚洲vs韩国一区三区| 欧美日韩精品系列| 中文字幕av一区二区三区高| 国内精品国产成人国产三级粉色| 678五月天丁香亚洲综合网| 一区二区三区精品视频在线| 91美女片黄在线| 亚洲国产日韩在线一区模特| 色av综合在线| 中文字幕一区二区三区色视频| 成人免费黄色大片| 国产精品成人在线观看| www.日韩在线| 亚洲欧美日韩在线| 精品视频一区三区九区| 亚洲成人免费看| 制服丝袜一区二区三区| 久久国产精品免费| 国产欧美一区二区精品性色| 懂色av一区二区三区蜜臀| 中文字幕乱码久久午夜不卡| 盗摄精品av一区二区三区| jlzzjlzz亚洲女人18| 精品国产一区二区三区久久久蜜月| 日韩精品免费视频人成| 不卡的电视剧免费网站有什么| 久久综合九色综合97_久久久| 日本伊人色综合网| 日韩欧美一区二区不卡| 国产乱码精品一区二区三区五月婷| 国产视频亚洲色图| 色哦色哦哦色天天综合| 日韩国产高清在线| 国产视频不卡一区| 精品视频999| 青青草国产成人99久久| 久久女同精品一区二区| 成人动漫一区二区在线| 亚洲午夜精品网| 久久亚区不卡日本| 91福利在线看| 国产剧情一区在线| 亚洲国产欧美一区二区三区丁香婷| 日韩一区二区三区四区| av一区二区不卡| 日本vs亚洲vs韩国一区三区二区| 国产精品午夜在线| 欧美一区二区三区视频| 99久久国产免费看| 老色鬼精品视频在线观看播放| 亚洲欧洲精品成人久久奇米网| 欧美顶级少妇做爰| a级精品国产片在线观看| 亚洲成国产人片在线观看| 国产日本亚洲高清| 3751色影院一区二区三区| 99视频超级精品| 国产一区二区三区香蕉| 亚洲国产视频a| 亚洲欧洲美洲综合色网| 久久久久久一二三区| 欧美日韩中字一区| 色八戒一区二区三区| 成人av第一页| 国产成人av电影在线播放| 六月婷婷色综合| 日本中文字幕一区二区视频| 综合中文字幕亚洲| 中文字幕 久热精品 视频在线| 日韩三级视频中文字幕| 欧美日韩aaaaa| 欧美亚洲禁片免费| 91丝袜国产在线播放| 成人av资源在线观看| 国产成人精品免费看| 国产一区 二区 三区一级| 麻豆免费精品视频| 欧美a级一区二区| 日韩国产高清在线| 日韩电影在线观看网站| 亚洲va韩国va欧美va精品| 亚洲一区二区av在线| 亚洲国产精品人人做人人爽| 亚洲自拍偷拍综合| 亚洲午夜久久久久久久久久久| 亚洲精品免费看| 亚洲午夜久久久久久久久电影网 | 在线观看日韩电影| 日本精品裸体写真集在线观看| 91社区在线播放| 欧美最猛黑人xxxxx猛交| 欧美人妇做爰xxxⅹ性高电影 | 麻豆91小视频| 韩国精品主播一区二区在线观看 | 欧美高清视频在线高清观看mv色露露十八 | √…a在线天堂一区| 亚洲摸摸操操av| 性做久久久久久免费观看| 五月婷婷综合网| 国产一区 二区 三区一级| av亚洲精华国产精华精| 色8久久精品久久久久久蜜| 欧美午夜在线一二页| 欧美一区二区观看视频| 26uuu久久天堂性欧美| 中文字幕成人av| 亚洲成av人片在www色猫咪| 蜜桃久久久久久| 成人爱爱电影网址| 欧美日韩国产大片| 久久久夜色精品亚洲| 亚洲丝袜制服诱惑| 日韩精品电影在线观看| 国产一区二区三区国产| 色噜噜狠狠色综合中国| 日韩小视频在线观看专区| 欧美国产日韩a欧美在线观看| 亚洲欧洲综合另类| 蜜桃视频一区二区三区| 99久久国产免费看| 欧美一区二区福利视频| 亚洲欧洲日韩在线| 另类小说图片综合网| 色综合久久中文综合久久牛| 日韩精品在线看片z| 一区二区在线观看视频在线观看| 美女国产一区二区三区| 91成人免费网站|