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

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

?? rtl8019.lst

?? 無線控制器 控制電梯永久在線 控制電梯
?? LST
?? 第 1 頁 / 共 2 頁
字號:
C51 COMPILER V6.12  RTL8019                                                                05/19/2009 14:55:39 PAGE 1   


C51 COMPILER V6.12, COMPILATION OF MODULE RTL8019
OBJECT MODULE PLACED IN .\RTL8019.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE ..\Netif\RTL8019.c BROWSE DEBUG OBJECTEXTEND PRINT(.\RTL8019.lst) OBJECT(.\
                    -RTL8019.obj) 

stmt level    source

   1          /*
   2           * Copyright (c) 2003 Electronic Engineering department of NAN KAI university
   3           * All rights reserved.
   4           *
   5           * Redistribution and use in source and binary forms, with or without modification,
   6           * are permitted provided that the following conditions are met:
   7           *
   8           * 1. Redistributions of source code must retain the above copyright notice,
   9           *    this list of conditions and the following disclaimer.
  10           * 2. Redistributions in binary form must reproduce the above copyright notice,
  11           *    this list of conditions and the following disclaimer in the documentation
  12           *    and/or other materials provided with the distribution.
  13           * 3. The name of the author may not be used to endorse or promote products
  14           *    derived from this software without specific prior written permission.
  15           *
  16           * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
  17           * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
  18           * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
  19           * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
  20           * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
  21           * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  22           * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  23           * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
  24           * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
  25           * OF SUCH DAMAGE.
  26           *
  27           * Author: zlin <wzzlin@eyou.com>
  28           *
  29           */
  30          #include "..\GloblDef\GloblDef.h"
  31          #include "..\TCPIP\TCPIPmem.h"
  32          #include "..\Netif\RTL8019.h"
  33          
  34          /* to prevent call RTLSendPacket() when RTLSendPackt() is already is called, InSending
  35          is used. example when process run in RTLSendPacket() and a interrupt ocurr then call 
  36          RTLSendPacket again, then the Register would have changed when interrupt return. */
  37          static BYTE DT_XDATA InSending;
  38          
  39          static BYTE DT_XDATA StartPageOfPacket;
  40          /* receive head information */
  41          /*struct RTLReceiveHeader
  42          {
  43          	BYTE ReceiveStatus;
  44          	BYTE NextPacketStartPage;
  45          	BYTE PacketSizeLow;
  46          	BYTE PacketSizeHigh;
  47          }Head;for some unknown resean Head must be a gloal value. */
  48          static BYTE DT_XDATA Head[4]; 
  49          
  50          /* last trasmit start page */
  51          static BYTE DT_XDATA LastSendStartPage;
  52          
  53          /* read rtl8019 register. port is reg address */
  54          /*BYTE ReadReg(WORD port) 
C51 COMPILER V6.12  RTL8019                                                                05/19/2009 14:55:39 PAGE 2   

  55          {
  56          	return *((BYTE xdata *)port);
  57          }*/
  58          #define ReadReg(port) (*((BYTE DT_XDATA *)port))
  59          
  60          /* write value to register */
  61          /*void WriteReg(WORD port,BYTE value) 
  62          {
  63          	*((BYTE xdata *)port) = value;
  64          }*/
  65          #define WriteReg(port,value) (*((BYTE DT_XDATA *)port) = value)
  66          
  67          /* select which page of register to use*/
  68          /* TO DO:set bit 7-6 in CR, CR_TXP must be 0(if 1 the packet is retrasmit) */
  69          #define RTLPage(Index) WriteReg(CR,(ReadReg(CR) & 0x3B)|(BYTE)(Index << 6))
  70          
  71          /* reset rtl8019 and init registers, LocalMacAddr is MAC address */
  72          void RTLInit(BYTE LocalMACAddr[]) REENTRANT_MUL
  73          {
  74   1      	BYTE temp;
  75   1      	int i;
  76   1      	
  77   1      	/* after hardware reset a longdelay is necessary for rtl to self-initial */
  78   1      	for(i=0; i < RTL_DELAY_AFTER_HARDWARE_RESET; i++);	
  79   1      	
  80   1      	/* reset: write to reset prot */
  81   1      	temp = ReadReg(RESET_PORT);
  82   1      	WriteReg(RESET_PORT,temp);
  83   1      	
  84   1      	/* init RTL registers*/
  85   1      	WriteReg(CR,(CR_PAGE0 | CR_ABORT_COMPLETE_DMA | CR_STOP_COMMAND)); /* set page0, stop command. command is
             - stop after power up. */
  86   1      
  87   1      	WriteReg(PSTART_WPAGE0,	RECEIVE_START_PAGE);	/* Pstart	*/
  88   1      	WriteReg(PSTOP_WPAGE0,	RECEIVE_STOP_PAGE);		/* Pstop	*/
  89   1      	WriteReg(BNRY_WPAGE0,		RECEIVE_START_PAGE);	/* BNRY		*/
  90   1      	WriteReg(TPSR_WPAGE0,		SEND_START_PAGE0);	/* TPSR		*/
  91   1      
  92   1      	WriteReg(RCR_WPAGE0,		0xCE);	/* RCR: refer to define of RCR in Rtl8019as.h */
  93   1      	WriteReg(TCR_WPAGE0,		0xE0);	/* TCR: refer to define of TCR in Rtl8019as.h */
  94   1      	WriteReg(DCR_WPAGE0,		0xC8);	/* DCR: refer to define of DCR in Rtl8019as.h */
  95   1      
  96   1      	WriteReg(IMR_WPAGE0,0);				/* RTL recieve interrupt enabled */
  97   1      	WriteReg(ISR_WPAGE0,		0xFF);	/* write FF to clear up all interrupt status */
  98   1      
  99   1      	RTLPage(1);
 100   1      
 101   1      	WriteReg(CURR_WPAGE1,RECEIVE_START_PAGE + 1);	
 102   1      	
 103   1      	/* MAR0 */
 104   1      	/*WriteReg(0x08,0x00);	
 105   1      	WriteReg(0x09,0x41);
 106   1      	WriteReg(0x0a,0x00);
 107   1      	WriteReg(0x0b,0x80);
 108   1      	WriteReg(0x0c,0x00);
 109   1      	WriteReg(0x0d,0x00);
 110   1      	WriteReg(0x0e,0x00);
 111   1      	WriteReg(0x0f,0x00);*/
 112   1      
 113   1      	/* set phisical address */
 114   1      	WriteReg(PRA0_WPAGE1,LocalMACAddr[0]);
 115   1      	WriteReg(PRA1_WPAGE1,LocalMACAddr[1]);
C51 COMPILER V6.12  RTL8019                                                                05/19/2009 14:55:39 PAGE 3   

 116   1      	WriteReg(PRA2_WPAGE1,LocalMACAddr[2]);
 117   1      	WriteReg(PRA3_WPAGE1,LocalMACAddr[3]);
 118   1      	WriteReg(PRA4_WPAGE1,LocalMACAddr[4]);
 119   1      	WriteReg(PRA5_WPAGE1,LocalMACAddr[5]);
 120   1      
 121   1      	/* transimit start page */
 122   1      	LastSendStartPage = SEND_START_PAGE0;
 123   1      	StartPageOfPacket = RECEIVE_START_PAGE + 1;
 124   1      
 125   1      	/* in the beginning, no packet is in sending */
 126   1      	InSending = FALSE;
 127   1      
 128   1      	/* initial over, start command and receive */
 129   1      	WriteReg(CR,(CR_PAGE0 | CR_ABORT_COMPLETE_DMA | CR_START_COMMAND));
 130   1      }
 131          
 132          /* write buffer to rlt ram */
 133          void RTLWriteRam(WORD address, WORD size, BYTE DT_XDATA * buff) REENTRANT_SIG
 134          {
 135   1      	BYTE DT_XDATA *Endp;
 136   1      	BYTE PrePage;	/* store page */
 137   1      	PrePage = ReadReg(CR);
 138   1      	RTLPage(0);
 139   1      	WriteReg(RSARH_WPAGE0,(BYTE)((address>>8)&0x00ff));
 140   1      	WriteReg(RSARL_WPAGE0,(BYTE)address);
 141   1      	WriteReg(RBCRH_WPAGE0,(BYTE)((size>>8)&0x00ff));
 142   1      	WriteReg(RBCRL_WPAGE0,(BYTE)size);
 143   1      	WriteReg(CR,(0x00 | CR_REMOTE_WRITE | CR_START_COMMAND));
 144   1      	for(Endp = buff + size; buff < Endp;)
 145   1      	{
 146   2      		WriteReg(REMOTE_DMA_PORT,*(buff++));
 147   2      	}
 148   1      	/* complete dma */
 149   1      	WriteReg(RBCRH_WPAGE0,0);
 150   1      	WriteReg(RBCRL_WPAGE0,0);
 151   1      	WriteReg(CR,((PrePage&0xC0) | CR_ABORT_COMPLETE_DMA | CR_START_COMMAND));
 152   1      }
 153          
 154          /* read rlt ram data to buffer */
 155          void RTLReadRam(WORD address,WORD size,BYTE DT_XDATA * buff) REENTRANT_MUL
 156          {
 157   1      	BYTE DT_XDATA * Endp;
 158   1      	BYTE PrePage;	/* store page */
 159   1      	
 160   1      	PrePage = ReadReg(CR);
 161   1      	RTLPage(0);
 162   1      	WriteReg(RSARH_WPAGE0,(BYTE)((address>>8)&0x00ff));
 163   1      	WriteReg(RSARL_WPAGE0,(BYTE)address);
 164   1      	WriteReg(RBCRH_WPAGE0,(BYTE)((size>>8)&0x00ff));
 165   1      	WriteReg(RBCRL_WPAGE0,(BYTE)size);
 166   1      	WriteReg(CR,(0x00 | CR_REMOTE_READ | CR_START_COMMAND));
 167   1      	for(Endp = buff + size; buff < Endp;)
 168   1      	{
 169   2      		*(buff++) = ReadReg(REMOTE_DMA_PORT);
 170   2      	}
 171   1      	/* complete dma */
 172   1      	WriteReg(RBCRH_WPAGE0,0);
 173   1      	WriteReg(RBCRL_WPAGE0,0);

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩国产精选| 亚洲aⅴ怡春院| 国产原创一区二区| 欧美一区二区国产| 午夜久久电影网| 欧美亚洲图片小说| 亚洲国产三级在线| 在线观看www91| 亚洲一区二区三区在线看| 色视频成人在线观看免| 亚洲狼人国产精品| 欧洲生活片亚洲生活在线观看| 国产精品欧美一区喷水| 99久久精品免费看国产免费软件| 国产视频在线观看一区二区三区 | 艳妇臀荡乳欲伦亚洲一区| 成人高清免费在线播放| 国产精品福利一区二区| 色综合久久88色综合天天6| 洋洋成人永久网站入口| 日韩一区二区电影网| 国产伦精一区二区三区| 国产精品麻豆一区二区| 欧美日高清视频| 国产精品资源在线看| |精品福利一区二区三区| 精品视频一区三区九区| 国产一区二区主播在线| 中文字幕精品在线不卡| 欧美无乱码久久久免费午夜一区| 首页综合国产亚洲丝袜| 久久久亚洲精品一区二区三区| 成人午夜精品在线| 蜜臀av性久久久久蜜臀aⅴ| 日韩一区欧美小说| 精品日韩在线观看| 色婷婷av一区| 成人av影院在线| 久久99精品久久久久久久久久久久 | 日本不卡一二三| 一区二区三区国产精华| 久久久国产精品午夜一区ai换脸| 欧美日韩高清在线播放| 97精品国产露脸对白| 激情都市一区二区| 三级不卡在线观看| 亚洲成人精品一区| 一区二区理论电影在线观看| 中文字幕日韩av资源站| 国产午夜精品一区二区| 精品日韩99亚洲| 日韩视频免费观看高清完整版在线观看| 成人av网站在线观看免费| 热久久一区二区| 蜜臀久久99精品久久久久久9| 一区二区三区四区激情| 亚洲一区二区在线观看视频| 日本一区二区三区在线不卡| 欧美成人福利视频| 久久久久国产精品麻豆| 久久网这里都是精品| 国产欧美精品一区二区三区四区| 久久―日本道色综合久久| 国产亚洲欧美一级| 国产精品乱码人人做人人爱| 日韩一区在线播放| 亚洲成av人片观看| 精品一区二区日韩| 国产91丝袜在线播放0| av一二三不卡影片| 在线观看av一区二区| 日韩欧美国产精品| 亚洲天天做日日做天天谢日日欢 | 亚洲午夜私人影院| 精品一区二区三区久久久| 成人免费高清在线| 欧美伦理电影网| 国产日韩精品视频一区| 亚洲二区在线视频| 国产精品一区二区久久不卡| 波多野结衣中文字幕一区| 欧美日韩一区二区三区四区| 欧美精品一区二区三| 一级精品视频在线观看宜春院 | 欧美一a一片一级一片| 日韩欧美激情在线| 亚洲午夜一区二区三区| 91在线视频免费观看| 日韩一级大片在线观看| 亚洲精品高清视频在线观看| 久久精品国产77777蜜臀| 在线精品观看国产| 国产精品毛片大码女人| 国产一本一道久久香蕉| 91精品啪在线观看国产60岁| 一区二区三区国产| 成人爱爱电影网址| 久久蜜桃av一区精品变态类天堂 | 成人精品国产福利| 久久无码av三级| 国产高清一区日本| 久久影视一区二区| 国产精品99久久久| 亚洲国产成人一区二区三区| 国产精一区二区三区| 久久久久久久久久美女| 国产一区不卡在线| 日本一区二区视频在线观看| 国产成人aaaa| 亚洲精品亚洲人成人网在线播放| 91性感美女视频| 亚洲精品久久久蜜桃| 欧美日韩一区二区三区四区五区| 一区二区三区高清在线| 欧美日韩黄色影视| 另类小说视频一区二区| 国产午夜精品一区二区 | 麻豆精品在线看| 国产亚洲精久久久久久| 91美女精品福利| 丝袜诱惑亚洲看片| 久久久久久久久一| 91麻豆国产香蕉久久精品| 亚洲123区在线观看| 欧美va在线播放| 欧美吻胸吃奶大尺度电影| 亚洲宅男天堂在线观看无病毒| 91美女在线观看| 日韩黄色免费电影| 中文字幕精品一区二区精品绿巨人| 成人永久看片免费视频天堂| 亚洲欧美激情一区二区| 欧美日本在线播放| 国内久久精品视频| 日韩免费观看高清完整版在线观看| 久久国产人妖系列| 亚洲综合免费观看高清完整版在线 | 99国产精品99久久久久久| 日韩高清在线电影| 亚洲免费在线观看视频| 久久久久高清精品| 日韩欧美一区在线观看| 欧美日韩午夜影院| 色伊人久久综合中文字幕| 国产精品香蕉一区二区三区| 肉丝袜脚交视频一区二区| 一区二区理论电影在线观看| 国产精品国产三级国产a| 中文字幕乱码一区二区免费| 日韩小视频在线观看专区| 6080日韩午夜伦伦午夜伦| 欧美伊人久久大香线蕉综合69| 91福利在线播放| 欧美日韩一区视频| 91精品国产免费久久综合| 欧美妇女性影城| 欧美一级生活片| 亚洲精品在线免费观看视频| 久久先锋影音av鲁色资源网| 亚洲精品一区二区三区四区高清| 久久综合色一综合色88| 欧美韩日一区二区三区| 中文字幕一区二区三区在线观看| 国产精品国产三级国产普通话99 | 国产一区二区三区蝌蚪| 久久国产福利国产秒拍| 国产传媒欧美日韩成人| 99久久精品99国产精品| 欧美日韩一区不卡| 国产日产亚洲精品系列| 亚洲精品精品亚洲| 精品一区二区三区在线播放视频| 国产成a人无v码亚洲福利| 97久久超碰精品国产| 欧美男女性生活在线直播观看| 日韩精品一区在线观看| 国产精品国产精品国产专区不蜜| 午夜激情久久久| 成人免费观看av| 日韩午夜在线观看视频| 亚洲人成精品久久久久久 | 国产精品久久夜| 免费观看91视频大全| 日本道精品一区二区三区| 精品国内片67194| 日韩精品福利网| 色综合一区二区三区| 国产午夜精品美女毛片视频| 日韩av不卡一区二区| 欧美亚洲日本国产| 综合电影一区二区三区| 丁香亚洲综合激情啪啪综合| 91精品国产综合久久久久久久久久| 亚洲女性喷水在线观看一区| 粉嫩av亚洲一区二区图片| 欧美电影免费观看高清完整版在| 亚洲高清免费视频| 欧美日韩视频在线第一区| 亚洲国产婷婷综合在线精品| 欧美体内she精高潮|