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

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

?? demo.c

?? 基于ARM7的USB聲卡源代碼, LPC2300系列.
?? C
字號(hào):
/*----------------------------------------------------------------------------
 *      Name:    DEMO.C
 *      Purpose: USB Audio Demo
 *      Version: V1.10
 *----------------------------------------------------------------------------
 *      This file is part of the uVision/ARM development tools.
 *      This software may only be used under the terms of a valid, current,
 *      end user licence from KEIL for a compatible version of KEIL software
 *      development tools. Nothing else gives you the right to use it.
 *
 *      Copyright (c) 2005-2006 Keil Software.
 *---------------------------------------------------------------------------*/

#include <LPC23XX.H>                        /* LPC23xx definitions */

#include "type.h"

#include "usb.h"
#include "usbcfg.h"
#include "usbhw.h"
#include "usbcore.h"

#include "demo.h"
#include "LCD.h"


BYTE  Mute;                                 /* Mute State */
DWORD Volume;                               /* Volume Level */

#if USB_DMA
#pragma arm section zidata = "USB_RAM"
DWORD InfoBuf[P_C];                         /* Packet Info Buffer */
short DataBuf[B_S];                         /* Data Buffer */
#pragma arm section zidata
#else
short DataBuf[B_S];                         /* Data Buffer */
#endif

WORD  DataOut;                              /* Data Out Index */
WORD  DataIn;                               /* Data In Index */

BYTE  DataRun;                              /* Data Stream Run State */

WORD  PotVal;                               /* Potenciometer Value */

DWORD VUM;                                  /* VU Meter */

DWORD Tick;                                 /* Time Tick */


/*
 * Get Potenciometer Value
 */

void get_potval (void) {
  DWORD val;

  AD0CR |= 0x01000000;                      /* Start A/D Conversion */
  do {
    val  = AD0GDR;                          /* Read A/D Data Register */
  } while ((val & 0x80000000) == 0);        /* Wait for end of A/D Conversion */
  AD0CR &= ~0x01000000;                     /* Stop A/D Conversion */
  PotVal = ((val >> 8) & 0xF8) +            /* Extract Potenciometer Value */
           ((val >> 7) & 0x08);
}


/*
 * Timer Counter 0 Interrupt Service Routine
 *   executed each 31.25us (32kHz frequency)
 */

void tc0_isr (void) __irq {
  long  val;
  DWORD cnt;

  if (DataRun) {                            /* Data Stream is running */
    val = DataBuf[DataOut];                 /* Get Audio Sample */
    cnt = (DataIn - DataOut) & (B_S - 1);   /* Buffer Data Count */
    if (cnt == (B_S - P_C*P_S)) {           /* Too much Data in Buffer */
      DataOut++;                            /* Skip one Sample */
    }
    if (cnt > (P_C*P_S)) {                  /* Still enough Data in Buffer */
      DataOut++;                            /* Update Data Out Index */
    }
    DataOut &= B_S - 1;                     /* Adjust Buffer Out Index */
    if (val < 0) VUM -= val;                /* Accumulate Neg Value */
    else         VUM += val;                /* Accumulate Pos Value */
    val  *= Volume;                         /* Apply Volume Level */
    val >>= 16;                             /* Adjust Value */
    val  += 0x8000;                         /* Add Bias */
    val  &= 0xFFFF;                         /* Mask Value */
  } else {
    val = 0x8000;                           /* DAC Middle Point */
  }

  if (Mute) {
    val = 0x8000;                           /* DAC Middle Point */
  }

  DACR = val & 0xFFC0;                      /* Set Speaker Output */

  if ((Tick++ & 0x03FF) == 0) {             /* On every 1024th Tick */
    get_potval();                           /* Get Potenciometer Value */
    if (VolCur == 0x8000) {                 /* Check for Minimum Level */
      Volume = 0;                           /* No Sound */
    } else {
      Volume = VolCur * PotVal;             /* Chained Volume Level */
    }
    val = VUM >> 20;                        /* Scale Accumulated Value */
    VUM = 0;                                /* Clear VUM */
    if (val > 7) val = 7;                   /* Limit Value */
    FIO2CLR = LEDMSK;                       /* Turn Off all LEDs */
    FIO2SET = LEDMSK >> (7 - val);          /* LEDs show VU Meter */
  }

  T0IR = 1;                                 /* Clear Interrupt Flag */
  VICVectAddr = 0;                          /* Acknowledge Interrupt */
}


/* Main Program */

int main (void) {

  PINSEL1 = 0x00204000;                     /* Select AOUT,AIN0 */
  FIO2DIR  = LEDMSK;                        /* LEDs, port 2, bit 0~7 output only */

  PCONP  |= (1 << 12);                      /* Enable power to AD block    */
  AD0CR   = 0x00200E01;                     /* ADC: 10-bit AIN0 @ 4MHz */
  DACR    = 0x00008000;                     /* DAC Output set to Middle Point */

  /* Setup Timer Counter 0: Periodic Timer with Interrupt at DATA_FREQ Rate */
  T0MR0 = VPB_CLOCK/DATA_FREQ - 1;          /* TC0 Match Value 0 */
  T0MCR = 3;                                /* TCO Interrupt and Reset on MR0 */
  T0TCR = 1;                                /* TC0 Enable */

  /* Setup Timer Counter 0 Interrupt */
  VICVectAddr4 = (unsigned long)tc0_isr;    /* TC0 Interrupt -> Vector 4   */
  VICVectCntl4 = 0x02;                      /* TC0 Interrupt -> Priority 2 */
  VICIntEnable = 1 << 4;                    /* Enable TC0 Interrupt */

  //lcd_init();
  //lcd_clear();
  //lcd_print (" MCB2300  Audio ");
  //set_cursor (0, 1);
  //lcd_print ("  www.keil.com  ");

  USB_Init();                               /* USB Initialization */
  USB_Connect(TRUE);                        /* USB Connect */

  while (1);                                /* Loop forever */
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线观看免费成人| 精品播放一区二区| 在线播放国产精品二区一二区四区| 欧美在线观看一二区| 日韩一区二区在线观看视频| 久久久久久久一区| 亚洲激情校园春色| 蜜桃久久av一区| 97精品久久久午夜一区二区三区| 欧美性色黄大片| 久久先锋影音av鲁色资源| 亚洲男人天堂一区| 日本三级韩国三级欧美三级| 成人国产精品免费观看动漫| 91麻豆精品国产91久久久 | 日韩av网站在线观看| 国产一区二区剧情av在线| 色八戒一区二区三区| www成人在线观看| 视频在线在亚洲| 色偷偷久久人人79超碰人人澡| 精品人在线二区三区| 亚洲一区在线观看视频| 成人一级黄色片| 精品欧美久久久| 日韩电影在线一区二区| 色素色在线综合| 久久久精品免费网站| 青椒成人免费视频| 在线视频你懂得一区二区三区| 国产欧美日韩综合| 国产专区综合网| 日韩欧美高清在线| 爽好久久久欧美精品| 91福利国产成人精品照片| 国产精品免费人成网站| 国产原创一区二区三区| 欧美成人三级在线| 久久疯狂做爰流白浆xx| 日韩精品中午字幕| 日本免费在线视频不卡一不卡二| 在线免费观看日本一区| 亚洲色图制服诱惑| 成人自拍视频在线观看| 国产日韩欧美一区二区三区综合| 黄色日韩三级电影| 欧美成人精品福利| 日本不卡一区二区三区| 欧美二区乱c少妇| 日韩中文字幕一区二区三区| 欧美日韩成人在线| 日韩 欧美一区二区三区| 在线成人av影院| 麻豆精品久久久| 欧美xxxx老人做受| 国产精品影音先锋| 国产欧美日韩另类视频免费观看 | 久久99精品久久只有精品| 7777精品伊人久久久大香线蕉的| 亚洲成人黄色小说| 制服丝袜亚洲精品中文字幕| 欧美aa在线视频| 精品成人一区二区| 成人av免费在线| 一区二区三区.www| 欧美一卡二卡在线| 狠狠色丁香婷综合久久| 国产欧美一二三区| 色婷婷av一区二区| 天天亚洲美女在线视频| 久久品道一品道久久精品| 不卡av免费在线观看| 一区二区免费看| 欧美成人伊人久久综合网| 国产成人高清在线| 玉足女爽爽91| 日韩一级二级三级| 顶级嫩模精品视频在线看| 亚洲桃色在线一区| 在线电影一区二区三区| 国产寡妇亲子伦一区二区| 中文字幕中文在线不卡住| 欧美日韩免费高清一区色橹橹 | 日韩精品一区二区三区在线播放| 亚洲日本护士毛茸茸| 国产精品丝袜在线| 日韩国产精品大片| 欧美亚洲一区二区在线观看| 久久国产福利国产秒拍| 日韩不卡一区二区| 成人午夜在线免费| 欧美日韩你懂得| 精品国产麻豆免费人成网站| 一本到高清视频免费精品| 精品处破学生在线二十三| 成人永久aaa| 一区二区三区91| 日韩欧美激情四射| 色综合天天综合网天天狠天天| 一区二区三区精品| 日韩一级完整毛片| 97国产一区二区| 免费在线成人网| 亚洲男人电影天堂| 欧美韩国日本综合| 日韩欧美色综合| 91激情五月电影| 成人一区二区在线观看| 免费成人在线影院| 一区二区三区精品久久久| 国产午夜亚洲精品理论片色戒| 在线播放91灌醉迷j高跟美女| 93久久精品日日躁夜夜躁欧美| 精品无码三级在线观看视频| 亚洲激情自拍偷拍| 国产精品久久久久久久久免费丝袜 | 五月激情丁香一区二区三区| 国产精品初高中害羞小美女文| 欧美电视剧在线观看完整版| 欧美日韩在线免费视频| 99国产精品久久久久久久久久久| 国产真实乱对白精彩久久| 亚洲成av人片观看| 国产色产综合色产在线视频| 在线视频中文字幕一区二区| 国产成人综合亚洲网站| 日韩专区一卡二卡| 亚洲色图视频网| 国产欧美视频一区二区三区| 精品国产乱码久久久久久牛牛| 欧美精品电影在线播放| 欧美三级在线播放| 在线看不卡av| 在线免费精品视频| 在线亚洲免费视频| 91久久精品一区二区二区| 91蝌蚪国产九色| 99精品视频一区二区三区| 成人国产视频在线观看| 成人高清视频免费观看| 成人综合婷婷国产精品久久蜜臀 | 风间由美一区二区av101 | 91精品国产麻豆国产自产在线 | 韩国v欧美v日本v亚洲v| 美腿丝袜亚洲色图| 久久精品国产99国产精品| 蜜臀国产一区二区三区在线播放| 亚洲va欧美va人人爽午夜| 日韩中文字幕麻豆| 免费在线观看视频一区| 乱中年女人伦av一区二区| 另类的小说在线视频另类成人小视频在线| 日韩黄色片在线观看| 青青草一区二区三区| 狠狠色狠狠色综合系列| 国产91精品免费| av电影在线观看完整版一区二区| 91小视频免费看| 欧美日韩亚洲综合一区二区三区 | 激情五月婷婷综合| 国产福利一区二区| 91小视频免费观看| 在线成人午夜影院| 久久久久久久久久久久久女国产乱| 国产三级欧美三级日产三级99| 国产精品免费久久久久| 亚洲乱码中文字幕| 天堂在线亚洲视频| 国产一区二区剧情av在线| 99国产精品99久久久久久| 91久久国产最好的精华液| 日韩午夜电影av| 国产精品第一页第二页第三页| 亚洲自拍偷拍麻豆| 极品美女销魂一区二区三区免费| 国产999精品久久久久久| 色猫猫国产区一区二在线视频| 欧美日本在线一区| 久久奇米777| 亚洲最新视频在线播放| 狠狠色丁香九九婷婷综合五月| 97se亚洲国产综合在线| 91精品欧美综合在线观看最新| 国产亚洲一区二区三区| 亚洲一区二区在线免费观看视频| 精品一区二区综合| 色老综合老女人久久久| 久久午夜老司机| 一区二区三区精品| 国产成人精品亚洲日本在线桃色 | 国产成人精品亚洲日本在线桃色 | 亚洲电影中文字幕在线观看| 精品无人码麻豆乱码1区2区| 色琪琪一区二区三区亚洲区| 欧美一级黄色录像| 一级特黄大欧美久久久| 久久疯狂做爰流白浆xx| 欧美视频在线观看一区二区| 欧美电影免费观看高清完整版在线 | 91老师片黄在线观看|