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

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

?? dma.c

?? CC2430的液晶顯示程序
?? C
字號:
/******************************************************************************
Filename:     dma.c
Target:       cc2430
Revised:      16/12-2005
Revision:     1.0

Description:
    This example shows how to set up a DMA transfer between two RAM locations.
    See also other examples for DMA setup (e.g. AES, ADC_SERIES, FLASH).

******************************************************************************/
#include <string.h>
#include "RF04EB.h"
#include "app_ex.h"
#include "menu.h"
#include "lcd128_64.h"
#include "hal.h"

// Prototypes
void initDma(void);
void dma_main(void);


/******************************************************************************
* @fn  initDma
*
* @brief
*      Initializes components for the DMA transfer application example.
*
* Parameters:
*
* @param  void
*
* @return void
*
******************************************************************************/
void initDma(void)
{
   SET_MAIN_CLOCK_SOURCE(CRYSTAL);
   INIT_RLED();
   INIT_YLED();
}


/******************************************************************************
* @fn  dma_main
*
* @brief
*      Sets up the DMA to transfer data between to RAM locations, trigged by
*      external interrupt generated by button S1. Checks validity of data
*      after transfer.
*
* Parameters:
*
* @param  void
*
* @return void
*
******************************************************************************/
#ifdef COMPLETE_APPLICATION
void dma_main(void){
#else
void main(void){
#endif
   DMA_DESC dmaChannel;
   char sourceString[56] = "This is a test string used to demonstrate DMA transfer."; //56 bytes
   char destString[56];
   INT8 i;
   INT8 errors = 0;


   initDma();

   ClearScreen();
   Print(0,5,"---DMA TEST---",1);
   Rectangle(2 , 2 , 108 , 5);

   //Clearing the destination
   memset(destString,0,sizeof(destString));

     // Setting up the DMA channel.
   SET_WORD(dmaChannel.SRCADDRH, dmaChannel.SRCADDRL,   &sourceString); // The start address of the data to be transmitted
   SET_WORD(dmaChannel.DESTADDRH, dmaChannel.DESTADDRL, &destString);   // The start address of the destination.
   SET_WORD(dmaChannel.LENH, dmaChannel.LENL, sizeof(sourceString));    // Setting the number of bytes to transfer.
   dmaChannel.VLEN      = VLEN_USE_LEN;  // Using the length field to determine how many bytes to transfer.
   dmaChannel.PRIORITY  = PRI_HIGH;      // High priority.
   dmaChannel.M8        = M8_USE_8_BITS; // Irrelevant since length is determined by the LENH and LENL.
   dmaChannel.IRQMASK   = FALSE;         // The DMA shall not issue an IRQ upon completion.
   dmaChannel.DESTINC   = DESTINC_1;     // The destination address is to be incremented by 1 after each transfer.
   dmaChannel.SRCINC    = SRCINC_1;      // The source address inremented by 1 byte after each transfer.
   dmaChannel.TRIG      = DMATRIG_NONE;  // The DMA channel will be started manually.
   dmaChannel.TMODE     = TMODE_BLOCK;   // The number of bytes specified by LENH and LENL is transferred.
   dmaChannel.WORDSIZE  = WORDSIZE_BYTE; // One byte is transferred each time.


   // Using DMA channel 0.
   // Setting where the DMA channel is to read the desciptor and arming the DMA channel.
   DMA_SET_ADDR_DESC0(&dmaChannel);
   DMA_ABORT_CHANNEL(0);
   DMA_ARM_CHANNEL(0);

   //Waiting for the user to start the transfer.
   /*
   if(LanguageSel == 1)
   {
       Print6(3,35, "Press OK",1);
       Print6(4,20, "to start DMA.",1);
   }
   else
   {
     Print(3,4,"按OK鍵開始:",1);
   }
   */

       Print6(3,35, "Press OK",1);
       Print6(4,20, "to start DMA.",1);
 //  lcdUpdate((char*)"Press S1",(char*)"to start DMA.");
   while(K_OK != ScanKey());
   while(ScanKey() != 0Xff);
   halWait(5);

   // Clearing all DMA complete flags and starting the transfer.
   DMAIRQ = 0x00;
   DMA_START_CHANNEL(0);

   // Waiting for the DMA to finish.
//   while(K_OK != ScanKey());
   /*
   if(LanguageSel == 1)
   {
       Print(3,8, "  Waiting...  ",1);
   }
   else
   {
       Print(3,4,"請稍等...",1);
   }
   */
    Print(3,8, "  Waiting...  ",1);
   while(!(DMAIRQ & DMA_CHANNEL_0));
   /*
   if(LanguageSel == 1)
   {
       Print6(3,20, "  Press UP  ",1);
       Print6(4,20, "to continue...",1);
   }
   else
   {
       Print(3,4,"按UP鍵繼續...",1);
   }
     */
       Print6(3,20, "  Press UP  ",1);
       Print6(4,20, "to continue...",1);
   while(K_UP != ScanKey());
   while(ScanKey() != 0Xff);
   halWait(5);
   // Verifying that data is transferred correctly
   for(i=0;i<sizeof(sourceString);i++)
   {
     if(sourceString[i] != destString[i])
         errors++;
   }


   //Displaying the result
   if(errors == 0)
   {
     /*
       if(LanguageSel == 1)
       {
           Print6(3,20, "Dma transfer",1);
           Print6(4,20, "correct!       ",1);
       }
       else
       {
           Print(3,4,"   DMA正確!  ",1);
       }
     */
           Print6(3,20, "Dma transfer",1);
           Print6(4,20, "correct!       ",1);
   }
   else
   {
     /*
       if(LanguageSel == 1)
       {
           Print6(3,20, "Error in DMA",1);
           Print6(4,20, "   Transfer    ",1);
       }
       else
       {
           Print(3,4,"   DMA錯誤!  ",1);
       }
     */
           Print6(3,20, "Error in DMA",1);
           Print6(4,20, "   Transfer    ",1);
   }
   Print6(7,13,"<CANCEL TO ESC>",1);
   while (K_CANCEL != ScanKey());
   while(ScanKey() != 0Xff);
   halWait(5);
   return;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区不卡在线播放| 欧美va亚洲va国产综合| 成人晚上爱看视频| 久久久五月婷婷| 国产成人精品www牛牛影视| 国产欧美一区二区精品婷婷| 国产电影精品久久禁18| 国产精品二区一区二区aⅴ污介绍| 欧美色视频在线| 亚洲国产精品一区二区www在线| 欧美精品日日鲁夜夜添| 美国十次综合导航| 国产三级精品三级在线专区| 成人激情免费电影网址| 亚洲影院久久精品| 精品久久一二三区| 99re这里只有精品首页| 天天综合天天综合色| 久久免费电影网| 91丝袜呻吟高潮美腿白嫩在线观看| 亚洲一本大道在线| 精品噜噜噜噜久久久久久久久试看| 国产精品1区二区.| 亚洲一区在线视频| 久久久久久久久久看片| 色综合天天狠狠| 精品一区二区国语对白| 成人免费一区二区三区在线观看| 欧美色中文字幕| 国产成人小视频| 日韩黄色免费电影| 亚洲欧洲精品一区二区三区| 91麻豆精品91久久久久久清纯| 国产成人综合网站| 视频在线观看91| 国产精品麻豆99久久久久久| 91精品国产综合久久精品| av亚洲产国偷v产偷v自拍| 天堂在线一区二区| 国产午夜精品美女毛片视频| 欧美午夜影院一区| 成人精品高清在线| 精品在线你懂的| 亚洲在线观看免费| 国产精品免费网站在线观看| 91精品国产入口| 99久久综合精品| 国产真实乱子伦精品视频| 午夜精品久久一牛影视| 中文字幕视频一区二区三区久| 欧美哺乳videos| 欧美日本免费一区二区三区| 日韩写真欧美这视频| 91小视频免费看| 粉嫩aⅴ一区二区三区四区五区 | 国产精品初高中害羞小美女文| 欧美网站一区二区| 91在线视频播放| 久久精品国产澳门| 日本丶国产丶欧美色综合| 国产一区二区三区久久悠悠色av| 久久先锋资源网| 国产性色一区二区| 亚洲三级视频在线观看| 国产精品久久久久久久久免费相片| 国产精品国产馆在线真实露脸 | 久久噜噜亚洲综合| 国产女主播一区| 亚洲精品免费一二三区| 午夜精品免费在线| 国产精品99久久久| 91福利视频在线| 91精品国产91久久久久久一区二区| 精品国精品国产| 中文字幕一区二区日韩精品绯色| 亚洲综合精品自拍| 精品一区二区三区在线视频| 9久草视频在线视频精品| 欧美区在线观看| 欧美高清在线精品一区| 亚洲成人动漫在线免费观看| 国产又黄又大久久| 欧美性xxxxx极品少妇| 久久亚洲影视婷婷| 亚洲综合色在线| 国产剧情一区二区| 欧美午夜电影网| 久久久天堂av| 亚洲一区二区av在线| 国产一区二区不卡在线| 欧美亚洲尤物久久| 国产日韩视频一区二区三区| 成人av在线播放网站| 欧美日韩一二三| 久久你懂得1024| 亚洲成人1区2区| 丁香啪啪综合成人亚洲小说| 日本道色综合久久| 国产欧美一区二区精品久导航| 香蕉成人啪国产精品视频综合网| 福利91精品一区二区三区| 精品视频免费在线| 国产精品美女视频| 狠狠色伊人亚洲综合成人| 欧美日韩免费观看一区三区| 中文字幕va一区二区三区| 久久精品国产一区二区| 欧美性大战久久久久久久蜜臀| 国产精品狼人久久影院观看方式| 久久精品国产成人一区二区三区| 欧美日韩中字一区| 亚洲欧美一区二区不卡| 国产精品一区久久久久| 欧美一区二区三区免费| 亚洲综合色视频| 91丨porny丨在线| 国产精品色一区二区三区| 韩国精品一区二区| 日韩欧美一二三区| 天天亚洲美女在线视频| 欧美日韩一区二区三区视频| 亚洲激情网站免费观看| 97超碰欧美中文字幕| 中文一区二区在线观看| 国产美女娇喘av呻吟久久| 欧美成人性战久久| 久久不见久久见免费视频7| 欧美一区二区三区白人| 视频一区国产视频| 欧美日韩亚洲另类| 亚洲电影在线免费观看| 在线一区二区观看| 一区二区三区欧美| 91久久久免费一区二区| 亚洲激情一二三区| 欧洲av一区二区嗯嗯嗯啊| 亚洲精品乱码久久久久久久久 | 亚洲午夜在线视频| 在线区一区二视频| 一区二区三区四区高清精品免费观看 | 精品一区二区在线观看| 精品久久久久香蕉网| 青草av.久久免费一区| 欧美一区二区三区四区五区| 青青国产91久久久久久| 精品少妇一区二区三区在线播放| 久久99精品国产.久久久久| 日韩欧美成人午夜| 免费国产亚洲视频| www久久精品| 高清不卡一区二区在线| 亚洲色图在线视频| 欧美三级视频在线播放| 日韩高清在线电影| 热久久国产精品| 日韩一二三区视频| 国产成人av影院| 成人欧美一区二区三区小说| 欧美影视一区在线| 日本不卡不码高清免费观看| 日韩免费视频一区二区| 国产自产高清不卡| 国产精品欧美一区二区三区| 一本大道久久精品懂色aⅴ| 亚洲电影欧美电影有声小说| 欧美一二三区在线| 国产不卡在线一区| 一区二区三区小说| 欧美变态tickle挠乳网站| 成人综合在线观看| 亚洲大片一区二区三区| 久久美女高清视频| 91福利国产精品| 久久se精品一区二区| 国产精品国产成人国产三级| 欧美日韩一级片在线观看| 国产真实精品久久二三区| 18欧美乱大交hd1984| 欧美高清性hdvideosex| 狠狠色丁香久久婷婷综| 亚洲欧美日韩电影| 欧美一卡二卡在线观看| 99久久99久久精品免费看蜜桃 | 亚洲午夜久久久久久久久电影网 | 欧美一级高清片在线观看| 国产·精品毛片| 亚洲成年人网站在线观看| 日本一区二区在线不卡| 69堂国产成人免费视频| www.欧美日韩| 精品一区二区三区欧美| 洋洋av久久久久久久一区| 精品88久久久久88久久久| 欧美在线影院一区二区| 国产xxx精品视频大全| 无码av中文一区二区三区桃花岛| 国产精品久久久久aaaa| 精品国免费一区二区三区| 欧美色倩网站大全免费| 成人免费高清视频在线观看|