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

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

?? main.c

?? STR912的usb例程
?? C
字號:
/******************** (C) COPYRIGHT 2006 STMicroelectronics ********************
* File Name          : main.c
* Author             : MCD Application Team
* Date First Issued  : 2/6/2006
* Description        : Mouse Demo main program body
********************************************************************************
* History:
* 2/6/2006 : V0.1
********************************************************************************
* THE PRESENT SOFTWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME.
* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT,
* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE
* CONTENT OF SUCH SOFTWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING
* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
*******************************************************************************/

/* Includes ------------------------------------------------------------------*/

#include "91x_lib.h"
#include "USB_lib.h"
#include "USB_conf.h"
#include "USB_prop.h"
#include "USB_pwr.h"
#include "USB_mem.h"

#include "LCD.h"

/* Private typedef -----------------------------------------------------------*/
/* Private define ------------------------------------------------------------*/

/* ujoystick direction */
#define DOWN	1
#define LEFT	2
#define RIGHT	3
#define UP      4

#define CURSOR_STEP     10
/* Private macro -------------------------------------------------------------*/
/* Private variables ---------------------------------------------------------*/
GPIO_InitTypeDef GPIO_InitStructure;
const char disp_ln1[] = "STR91x DEMO";
const char disp_ln2[] = "USB Mouse";

/* Private function prototypes -----------------------------------------------*/
/* Private functions ---------------------------------------------------------*/
/*******************************************************************************
* Function Name : JoyState
* Description   : Decodes the Joystick direction
* Output        : None
* Return value  : the direction value
*******************************************************************************/
u8 JoyState(void)
{
  u8 port;
  port =((GPIO_Read(GPIO9)&0x20)<<1)|(GPIO_Read(GPIO9)&0x80)|(GPIO_Read(GPIO6)&0x10)|(GPIO_Read(GPIO6)&0x20);
  if ((port&0xF0)==0xB0) return(UP);
  if ((port&0xF0)==0x70) return(DOWN);
  if ((port&0xF0)==0xE0) return(LEFT);
  if ((port&0xF0)==0xD0) return(RIGHT);
  else return(0);
}

/*******************************************************************************
* Function Name : Mouse_Send
* Description   : prepares buffer to be sent containing mouse event infos
* Input         : Keys: keys received from terminal
* Output        : None
* Return value  : None
*******************************************************************************/
void Mouse_Send(BYTE Keys)
{
  BYTE Mouse_Buffer[4] = {0,0,0,0};
  char X = 0, Y = 0;

  switch (Keys)
  {
	case LEFT:
	  X -= CURSOR_STEP;
	  break;
	case RIGHT:

	  X += CURSOR_STEP;
	  break;
	case UP:
	  Y -= CURSOR_STEP;
	  break;
	case DOWN:
	  Y += CURSOR_STEP;
	  break;
	default:
	  return;
  }

  /* prepare buffer to send */
  Mouse_Buffer[1] = X;
  Mouse_Buffer[2] = Y;
  /*copy mouse position info in ENDP1 Tx Packet Memory Area*/
  UserToPMABufferCopy(&Mouse_Buffer[0],ENDP1_TXADDR,4);
  /* enable endpoint for transmission */
  SetEPTxValid(ENDP1);

} /* Mouse_Send */


int main()
{
  u32 i ;

  #ifdef DEBUG
  debug();
  #endif


  SCU_MCLKSourceConfig(SCU_MCLK_OSC);
  /*configure PLL factors for 48MHz*/
  SCU_PLLFactorsConfig(0xC0,0x19,0x3);
  /*Enable PLL*/
  SCU_PLLCmd(ENABLE);
  while(!(SCU->SYSSTATUS&SCU_FLAG_LOCK));
  /*PLL as MCLK clock*/
  SCU_MCLKSourceConfig(SCU_MCLK_PLL);
  /*Enable VIC clock*/
  SCU_AHBPeriphClockConfig(__VIC,ENABLE);
  SCU_AHBPeriphReset(__VIC,DISABLE);
  /*USB clock = MCLK= 48MHz*/
  SCU_USBCLKConfig(SCU_USBCLK_MCLK);
  /*Enable USB clock*/
  SCU_AHBPeriphClockConfig(__USB,ENABLE);
  SCU_AHBPeriphReset(__USB,DISABLE);

  SetCNTR(0);
  SetISTR(0);
  SCU_AHBPeriphClockConfig(__USB48M,ENABLE);
  SCU_APBPeriphClockConfig(__GPIO9,ENABLE);
  SCU_APBPeriphReset(__GPIO9,DISABLE);
  SCU_APBPeriphClockConfig(__GPIO6,ENABLE);
  SCU_APBPeriphReset(__GPIO6,DISABLE);
  SCU_APBPeriphClockConfig(__GPIO2,ENABLE);
  SCU_APBPeriphReset(__GPIO2,DISABLE);
  SCU_APBPeriphClockConfig(__GPIO8,ENABLE);
  SCU_APBPeriphReset(__GPIO8,DISABLE);
  
  GPIO_DeInit(GPIO2);
  GPIO_DeInit(GPIO6);
  GPIO_DeInit(GPIO8);
  
  

  /*Configure GPIO9*/
  GPIO_DeInit(GPIO9);
  GPIO_StructInit(&GPIO_InitStructure);
  GPIO_InitStructure.GPIO_Direction = GPIO_PinInput;
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5|GPIO_Pin_7;
  GPIO_InitStructure.GPIO_Type = GPIO_Type_PushPull ;
  GPIO_Init (GPIO9, &GPIO_InitStructure);

  /*Configure GPIO6*/
//  GPIO_DeInit(GPIO6);
  GPIO_StructInit(&GPIO_InitStructure);
  GPIO_InitStructure.GPIO_Direction = GPIO_PinInput;
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4|GPIO_Pin_5;
  GPIO_InitStructure.GPIO_Type = GPIO_Type_PushPull ;
  GPIO_Init (GPIO6, &GPIO_InitStructure);
  
  /*Configure P6.7,pin 93*/
  GPIO_StructInit(&GPIO_InitStructure);
  GPIO_InitStructure.GPIO_Direction = GPIO_PinOutput;
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_7;
  GPIO_InitStructure.GPIO_Type = GPIO_Type_PushPull ;
  GPIO_InitStructure.GPIO_Alternate = GPIO_OutputAlt1;
  GPIO_Init (GPIO6, &GPIO_InitStructure);


  /*LCD Display -----------------------------------------------------------------*/ 
  LCD_Init();
  LCD_Clr();
  
  LCD_SetCursor(0x02);
  for(i=0;disp_ln1[i]!='\0';i++)
  	LCD_DISP_CHAR(disp_ln1[i]);
  	
  LCD_SetCursor(0x42);
  for(i=0;disp_ln2[i]!='\0';i++)
  	LCD_DISP_CHAR(disp_ln2[i]);


  /* Enable and configure the priority of the USB_LP IRQ Channel*/
  VIC_DeInit();
  VIC_Config(USBLP_ITLine, VIC_IRQ, 0);
  VIC_ITCmd(USBLP_ITLine, ENABLE);

//  GPIO_WriteBit(GPIO6,GPIO_Pin_7,1);

  /* USB  initialization */
  GPIO_WriteBit(GPIO6,GPIO_Pin_7,0);
  wInterrupt_Mask = IMR_MSK;
  USB_Init();



  while(1)
  {
  	for(i=0;i<10000;i++);
  	if (JoyState()!=0)
  	Mouse_Send(JoyState());
  }

}
/******************* (C) COPYRIGHT 2006 STMicroelectronics *****END OF FILE****/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人在线一区二区三区| 日产精品久久久久久久性色| 欧美疯狂性受xxxxx喷水图片| av午夜一区麻豆| 丁香六月综合激情| bt7086福利一区国产| av中文字幕一区| 在线视频欧美精品| 欧美日韩久久不卡| 欧美一区二区三区免费观看视频 | 亚洲免费观看高清完整| 中文字幕日本乱码精品影院| 久久久精品免费网站| 欧美国产精品一区| 亚洲视频1区2区| 亚洲自拍与偷拍| 视频一区二区三区在线| 精品一区二区在线观看| 国产精品亚洲视频| 色老综合老女人久久久| 欧美美女bb生活片| 久久久久久亚洲综合影院红桃| 国产日产欧美一区二区三区| 亚洲欧美日韩中文字幕一区二区三区| 一区二区三区毛片| 经典三级在线一区| 色综合天天狠狠| 91精品欧美综合在线观看最新 | 国产精品亚洲午夜一区二区三区 | 国产成a人无v码亚洲福利| 成av人片一区二区| 欧美日韩国产系列| 国产亚洲人成网站| 亚洲成av人综合在线观看| 黄色成人免费在线| 欧洲精品在线观看| 久久亚洲精品国产精品紫薇| 一区二区三区中文免费| 韩国欧美国产一区| 在线观看国产91| 久久久影视传媒| 日本在线不卡视频| 欧美亚洲综合在线| 亚洲激情六月丁香| 蜜桃视频在线观看一区二区| 粉嫩av一区二区三区在线播放| 91成人免费在线视频| 国产精品久久综合| 五月婷婷激情综合网| 成人免费福利片| 欧美大胆一级视频| 午夜视频久久久久久| 99国产一区二区三精品乱码| 精品国产凹凸成av人导航| 亚洲国产精品久久艾草纯爱| 99久久综合精品| 欧美—级在线免费片| 毛片不卡一区二区| 91超碰这里只有精品国产| 亚洲精品一二三| 91看片淫黄大片一级在线观看| www国产亚洲精品久久麻豆| 日韩激情视频网站| 欧美日韩国产免费一区二区| 亚洲一区精品在线| 色婷婷久久综合| 亚洲特级片在线| 成人av免费观看| 中文成人综合网| 成人涩涩免费视频| 久久久精品黄色| 国产精品白丝jk白祙喷水网站 | 欧美影院一区二区三区| 国产精品超碰97尤物18| 成人av电影免费在线播放| 久久九九99视频| 国产凹凸在线观看一区二区| 精品美女被调教视频大全网站| 欧美bbbbb| 精品久久久网站| 国产美女在线精品| 久久精品亚洲国产奇米99| 国产99久久久久久免费看农村| 久久久久久久久久久久久女国产乱| 精品制服美女久久| 久久久久国产精品厨房| 不卡一区在线观看| 一区二区在线观看免费视频播放 | 亚洲国产一二三| 欧美日韩成人综合天天影院| 香蕉av福利精品导航| 日韩午夜激情av| 国产乱色国产精品免费视频| 国产精品女同互慰在线看| 91美女在线看| 日韩国产欧美在线播放| 精品国产精品网麻豆系列| 国产成人综合视频| 国产精品大尺度| 91麻豆精品国产91久久久久久久久 | 日韩视频免费观看高清完整版| 极品美女销魂一区二区三区免费| 精品电影一区二区三区| 成人黄色软件下载| 亚洲国产精品一区二区www| 欧美va天堂va视频va在线| 不卡一二三区首页| 偷窥少妇高潮呻吟av久久免费| 久久婷婷久久一区二区三区| 色综合婷婷久久| 精品一区二区三区影院在线午夜 | 肉色丝袜一区二区| 久久精品免视看| 欧美日本免费一区二区三区| 国产精品一二三四区| 亚洲成av人片一区二区梦乃| 久久精品日产第一区二区三区高清版| 欧美午夜电影在线播放| 毛片av一区二区三区| 亚洲视频一区二区免费在线观看| 3atv一区二区三区| 91性感美女视频| 国产综合色精品一区二区三区| 亚洲一区二区在线免费观看视频 | 99久免费精品视频在线观看 | 国产精品天美传媒沈樵| 欧美日韩视频专区在线播放| 国产精品18久久久| 蜜臂av日日欢夜夜爽一区| 亚洲尤物在线视频观看| 国产精品久久久爽爽爽麻豆色哟哟| 欧美一区二区三区视频在线| 欧美三级中文字幕| 91视频一区二区三区| 成人做爰69片免费看网站| 蜜臀国产一区二区三区在线播放| 亚洲视频综合在线| 国产精品久久久久影院老司| 欧美精品一区二区三区在线播放 | 久久色.com| 欧美哺乳videos| 欧美日韩精品一区二区三区| 色诱视频网站一区| jizzjizzjizz欧美| 成人高清免费在线播放| 国产电影一区二区三区| 国内精品伊人久久久久av一坑| 日韩中文字幕一区二区三区| 亚洲成精国产精品女| 一区二区三区电影在线播| 亚洲啪啪综合av一区二区三区| 亚洲欧洲三级电影| 综合av第一页| 夜夜揉揉日日人人青青一国产精品| 亚洲日本va午夜在线影院| 亚洲品质自拍视频网站| 一区二区久久久| 亚洲成av人片一区二区| 天天亚洲美女在线视频| 麻豆国产91在线播放| 精品一区二区在线观看| 国产一区二区伦理| 国产不卡高清在线观看视频| 菠萝蜜视频在线观看一区| a亚洲天堂av| 欧美亚洲动漫精品| 欧美肥胖老妇做爰| 精品国产91洋老外米糕| 国产欧美精品一区| 亚洲三级免费观看| 亚洲成人在线免费| 青青草97国产精品免费观看| 国产一区二区主播在线| 成人av电影在线播放| 欧美三级一区二区| 欧美成人性战久久| 国产人伦精品一区二区| 樱桃视频在线观看一区| 日日噜噜夜夜狠狠视频欧美人| 久久91精品久久久久久秒播| www.成人网.com| 欧美怡红院视频| 久久精品一区二区三区不卡牛牛| 国产精品久久久久久久久免费桃花 | 久久青草欧美一区二区三区| 欧美激情一区二区三区蜜桃视频| 亚洲三级电影网站| 蜜桃一区二区三区四区| 99久久伊人网影院| 欧美一区午夜视频在线观看| 久久天天做天天爱综合色| 一区二区三区四区在线播放| 激情综合五月婷婷| 欧美在线观看一区| 国产午夜精品一区二区 | 欧美成人精品二区三区99精品| 久久一日本道色综合| 亚洲一区视频在线| jlzzjlzz亚洲女人18| 久久综合色婷婷|