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

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

?? main.c

?? 用ti的dsp2407讀寫sl811
?? C
字號:
//-----------------------------------------------------------------------------
//	File:		fw.c
//	Contents:	Firmware frameworks task dispatcher and device request parser
//				source.
//
//	Copyright (c) 2002 Cypress Semiconductor, Inc. All rights reserved
//
// $Archive: /USB/ez811/firmware/Emb_Host/fw.c $
// $Date: 4/03/02 4:32p $
// $Revision: 1 $
//-----------------------------------------------------------------------------

#include "Regs240x.h"
#include "Host_811.h"


extern BOOL	HUB_DEVICE;					// HUB device = TRUE
extern pHUBDEV		uHub;			// Struct for downstream device on HUB
extern pUSBDEV  	uDev[MAX_DEV];	// Multiple USB devices attributes, Max 5 devices

BYTE KeyReport[20];
int *pFPGARam = (int *)0x8000;
int *pStatus = (int *)0xC081;
int *pSendOver = (int *)0xC080;

void initial();
void EZUSB_Delay(unsigned long ms);
void IOinitial();
void Evinitial();
void LightLed(int num, int status);
void  timer1int();


int FindFirtIntrEP(BYTE DevAddr)
{
	int i;
	for(i = 0; i < uDev[DevAddr].bNumOfEPs; i++)
	{
		if((uDev[DevAddr].bEPAddr[i]&0x80) && (uDev[DevAddr].bAttr[i] == 0x03)) //Interrupt in endpoint
			return uDev[DevAddr].bEPAddr[i];
	}

	return -1;
}
//-----------------------------------------------------------------------------
// Code
//-----------------------------------------------------------------------------

// Task dispatcher
void main(void)
{
	int num =0x5a;
	int i = 0;
	int nEP = 0;
	int bReportSend = 0;
	
	initial();
    IOinitial();
    Evinitial();
    timer1int();
    sl811h_init();
    
	while(1)
	{
		
		slave_detect();
		if(HUB_DEVICE && uHub.bPortPresent[HUB_ADDR + 1])
		{
			nEP = FindFirtIntrEP(HUB_ADDR+1);
			if(nEP == -1)	continue;
			
			if(DataRW(HUB_ADDR+1, nEP, uDev[HUB_ADDR+1].wPayLoad[nEP&0xF], uDev[HUB_ADDR+1].wPayLoad[nEP&0xF], KeyReport))
			{
				
			}
			
		}
		
	}
}

void initial()
{
    asm(" setc INTM");
    asm(" setc SXM");
    asm(" clrc OVM");
    asm(" clrc CNF");
    SCSR1 = 0X06FE;  //the input frequency 12MHz
    WDCR = 0x0E8;
    IMR = 0x0000;
    IFR = 0x0FFFF;
}
void EZUSB_Delay(unsigned long ms)
{
     volatile int num;
     volatile int flag;
     num = ms;
	 T1CON |= 0x0040; // start Timer1
	 	 
	 while (num > 0)
    {
    	flag = ADCTRL2 & 0x0200;
		 if (flag == 0x0200)
		 {
			ADCTRL2 = ADCTRL2 | 0x4200;	//產生一次timer
			 
	     	T1CON |= 0x0040; // start Timer3
	     	
	     	num--;
	     }	
	}
}


void IOinitial()  
 {
 
 	  MCRA = 0x8FE7;
// 	  MCRC = 0x0181;
  	  MCRC = 0x7C7F;
 
  	  PADATDIR |= 0x1800;   //PA.3 & PA.4 standard io
  	  PBDATDIR |= 0x7000;   //PB.6 & PB.5 & PB.4 standard io
  	  PEDATDIR |= 0x8000;  //PE.7 standard io
  	  PFDATDIR |= 0x0300;  //PF.0 & PF.1 standard io
      PADATDIR &= 0xFFE7;   //PA.3 & PA.4 output low
  	  PBDATDIR &= 0xFF8F;   //PB.6 & PB.5 & PB.4 output low
  	  PEDATDIR &= 0xFF7F;  //PE.7 output low
  	  PFDATDIR &= 0xFFFC;  //PF.0 & PF.1 output low
  	  
  	  PFDATDIR |= 0x0404;
  	  PFDATDIR &= 0xFFFB;  //generate a pulse to turn off all lights

	  PCDATDIR |= 0x0100;  //Pc.0 standard io
 }
 
 void Evinitial()
 {       
	  EVAIMRA = 0;  
	  EVAIMRB = 0x01;    /* TimeGlobal2 period*/
	  EVAIMRC = 0;       /* Capture1,Capture2*/
	  EVBIMRA = 0;       
	  EVBIMRB = 0;
	  EVBIMRC = 0;       /* Capture4,Capture5*/
	  
	  EVAIFRA = 0xffff;    /* TimeGlobal1 period */
	  EVAIFRB = 0xffff;    /* TimeGlobal2 period */
	  EVAIFRC = 0xffff;    /* Cap1 Cap2 */
	  EVBIFRC = 0xffff;    /* Cap4 Cap5 */

} 

void LightLed(int num, int status)
{
     int Tempnum = 0;
     int Ledstatus = 0;
     Tempnum = num;
     Ledstatus = status;
     //PADATDIR &= 0x0FF00;  // mask the data bit
     //PBDATDIR &= 0x0FF00;  // mask the data bit
     //PEDATDIR &= 0x0FF00;  // mask the data bit
     //PFDATDIR &= 0x0FF00;  // mask the data bit
     switch(Tempnum)
     {
         case 0:
         {
             
             if(Ledstatus == 0)
             {
                  PFDATDIR |= 0x0002;   // PF.1 light
             }
             else if(Ledstatus == 1)
             {
                  PFDATDIR &= 0xFFFD;   // PF.1 off
             }
             else 
               break;
  
  	         break;
  	     }
  	     case 1:
  	     {
  	         if(Ledstatus == 0)
             {
                  PADATDIR |= 0x0010;   // PA.4 light
             }
             else if(Ledstatus == 1)
             {
                  PADATDIR &= 0xFFEF;   // PA.4 off
             }
             else 
               break;
             
 
  	         break;
  	     }
  	     case 2:
  	     {
  	         if(Ledstatus == 0)
             {
                  PFDATDIR |= 0x0001;   // PF.0 light
             }
             else if(Ledstatus == 1)
             {
                  PFDATDIR &= 0xFFFE;   // PF.0 off
             }
             else 
               break;
             
  
  	         break;
  	     }
  	     case 3:
  	     {
             if(Ledstatus == 0)
             {
                  PADATDIR |= 0x0008;   // PA.3 light
             }
             else if(Ledstatus == 1)
             {
                  PADATDIR &= 0xFFF7;   // PA.3 off
             }
             else 
               break;
 
  	         break;
  	     }
  	     case 4:
  	     {
  	         if(Ledstatus == 0)
             {
                    PBDATDIR |= 0x0020;   // PB.5 light
             }
             else if(Ledstatus == 1)
             {
                    PBDATDIR &= 0xFFDF;   // PB.5 light
             }
             else 
               break;
           

  	         break;
  	     }
  	     case 5:
  	     {
             if(Ledstatus == 0)
             {
                   PBDATDIR |= 0x0010;   // PB.4 off
             }
             else if(Ledstatus == 1)
             {
                   PBDATDIR &= 0xFFEF;   // PB.4 off
             }
             else 
               break;
            
 
  	         break;
  	     }
  	     case 6:
  	     {
             if(Ledstatus == 0)
             {
                    PBDATDIR |= 0x0040;   // PB.6 light
             }
             else if(Ledstatus == 1)
             {
                    PBDATDIR &= 0xFFBF;   // PB.6 light
             }
             else 
               break;
    
  	         break;
  	     }
  	     case 7:
  	     {
             if(Ledstatus == 0)
             {
                   PEDATDIR |= 0x0080;   // PE.7 light
             }
             else if(Ledstatus == 1)
             {
                   PEDATDIR &= 0xFF7F;   // PE.7 light
             }
             else 
               break;
             
 
  	         break;
  	     }
            
     }
}
void  timer1int()
{
     T1CON = 0x160C;    /* 12M ->64分頻 -> 3/16 0.1875 MHz -> 16/3  5.3us timer1 compare disable autoreload*/
	 T1PR = 187;   // 0xbb = 188-1 --> 定時周期1ms
     T1CNT=0X00;                        // Timer1的計數器清零
     T1CMPR = 0xFFFF;
     GPTCONA = 0x0100;    /*使能T1周期中斷標志啟動ADC*/
     ADCTRL1=0x5000;                      
	 asm(" nop");
	 ADCTRL1=0x30;	    /*啟動/停止模式,級連工作方式,且禁止特殊的兩種工作模式*/
	 ADCTRL2=0x0100;	/*可以用EVA的一個事件信號觸發AD轉換,用中斷模式1*/
}

void interrupt nothing(void)
{
   return;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
不卡的av电影| 不卡视频免费播放| 国产精品久久久久久久久久免费看| 色伊人久久综合中文字幕| 亚洲一区二三区| 久久久激情视频| 在线综合亚洲欧美在线视频| 波多野结衣亚洲| 韩国精品在线观看| 亚洲午夜在线视频| 中文字幕精品—区二区四季| 欧美一区二区精品在线| 日本久久一区二区| 大白屁股一区二区视频| 日本va欧美va欧美va精品| 亚洲欧洲日韩av| 久久美女艺术照精彩视频福利播放 | 成人开心网精品视频| 爽爽淫人综合网网站| 亚洲天堂网中文字| 国产精品理伦片| 久久久午夜精品| 精品久久国产字幕高潮| 欧美日韩一级二级| 欧美午夜电影一区| 日本道色综合久久| 色婷婷综合视频在线观看| 丁香婷婷深情五月亚洲| 国产乱码精品1区2区3区| 久久不见久久见免费视频1| 日韩高清不卡在线| 性感美女久久精品| 天堂久久久久va久久久久| 亚洲在线视频免费观看| 夜夜精品浪潮av一区二区三区| 中文字幕日韩精品一区| 国产女主播一区| 国产精品你懂的| 国产精品久久久久久久久搜平片 | 日本韩国欧美国产| 成人av先锋影音| 成人免费视频播放| 成人性视频网站| thepron国产精品| 91视频精品在这里| 972aa.com艺术欧美| 一本色道久久加勒比精品| 99国产精品久久| 91黄色免费观看| 欧美午夜电影网| 欧美一区二区三区免费视频| 欧美一级免费大片| 欧美成人猛片aaaaaaa| 精品成人在线观看| 久久久久久久综合色一本| 亚洲国产成人私人影院tom| 中文字幕精品一区二区三区精品| 国产精品久久久久久亚洲伦| 亚洲色图视频网站| 亚洲黄一区二区三区| 亚洲第一狼人社区| 青草av.久久免费一区| 极品少妇xxxx精品少妇偷拍| 国产精品一二三区| 99re热这里只有精品免费视频 | 337p亚洲精品色噜噜噜| 日韩午夜中文字幕| 国产婷婷色一区二区三区在线| 国产精品视频免费| 亚洲高清免费观看高清完整版在线观看 | 成人性生交大片免费看在线播放| 99久久精品99国产精品| 欧洲色大大久久| 91精品在线一区二区| 日韩精品三区四区| 久久精品99国产精品日本| 日本不卡一区二区| 国产一区二区三区四| 99热这里都是精品| 欧美午夜在线一二页| 精品少妇一区二区| 国产精品久久久久久亚洲伦 | 精品国产污污免费网站入口 | 欧美精品一区二区蜜臀亚洲| 国产精品久久99| 青青草一区二区三区| 国产成人亚洲综合a∨婷婷| 91蜜桃网址入口| 日韩女优毛片在线| 亚洲人成精品久久久久久| 人人精品人人爱| 99在线视频精品| 欧美xingq一区二区| 自拍偷拍亚洲综合| 韩国理伦片一区二区三区在线播放| 日本电影亚洲天堂一区| 精品国产乱码久久久久久图片| 亚洲欧美另类久久久精品2019| 精品一区二区三区免费观看| 91在线你懂得| 久久精品夜色噜噜亚洲a∨| 午夜精品福利在线| 91视频免费看| 中文字幕欧美国产| 日韩vs国产vs欧美| 色88888久久久久久影院野外 | 国产欧美一区二区精品婷婷| 亚洲成人综合视频| 99久久精品国产麻豆演员表| 国产亚洲1区2区3区| 男人的j进女人的j一区| 色哟哟一区二区在线观看| 精品国产乱码久久久久久免费| 夜色激情一区二区| 福利一区福利二区| 日韩欧美国产成人一区二区| 亚洲高清免费视频| 91福利视频久久久久| 日本一区二区三区四区| 麻豆精品在线播放| 欧美卡1卡2卡| 夜色激情一区二区| 日本乱码高清不卡字幕| 亚洲欧美影音先锋| 成人激情动漫在线观看| 久久久精品综合| 精品亚洲porn| 欧美成人vps| 日本在线播放一区二区三区| 欧美精品欧美精品系列| 亚洲成a人v欧美综合天堂下载| 色婷婷综合五月| 亚洲免费观看视频| 91丨九色丨国产丨porny| 国产精品亲子伦对白| 成人免费视频视频在线观看免费 | av成人老司机| ㊣最新国产の精品bt伙计久久| 丁香桃色午夜亚洲一区二区三区| 2021中文字幕一区亚洲| 九九精品一区二区| 欧美精品一区二区三区蜜桃视频| 韩国欧美国产一区| 国产亚洲一区字幕| 懂色av中文字幕一区二区三区| 日本一区二区三区在线观看| 成人av动漫网站| 国产精品女主播av| 在线观看免费视频综合| 亚洲一区二区三区免费视频| 欧美亚洲国产bt| 亚洲成人激情自拍| 日韩色在线观看| 国产酒店精品激情| 一区免费观看视频| 欧美日韩国产首页在线观看| 天堂在线一区二区| 日韩免费电影一区| 成人免费毛片嘿嘿连载视频| 一区在线观看免费| 欧美区在线观看| 精品一区二区久久久| 国产精品萝li| 欧美色图天堂网| 久久99精品久久久久久久久久久久 | 99久久免费精品高清特色大片| 夜夜揉揉日日人人青青一国产精品| 欧美日韩亚洲另类| 精品亚洲成a人| 日韩一区在线播放| 6080日韩午夜伦伦午夜伦| 黄页视频在线91| 亚洲欧美一区二区三区国产精品 | 精品久久久久久久久久久久久久久 | 国产精品国产三级国产| 在线免费亚洲电影| 青青青爽久久午夜综合久久午夜| 国产亚洲午夜高清国产拍精品| 色综合久久久久久久| 日韩vs国产vs欧美| 国产精品久久久久久久久免费丝袜 | voyeur盗摄精品| 日韩福利视频导航| 国产精品入口麻豆九色| 欧美二区三区91| 国产成a人亚洲| 亚瑟在线精品视频| 国产日韩视频一区二区三区| 欧美在线看片a免费观看| 国模大尺度一区二区三区| 一区二区三区在线免费| 精品久久一区二区三区| 欧美性视频一区二区三区| 精一区二区三区| 亚洲一区在线播放| 国产精品天美传媒沈樵| 日韩精品综合一本久道在线视频| 色综合色狠狠天天综合色| 激情久久久久久久久久久久久久久久| 一区在线播放视频|