📄 cs8900_8h-source.html
字号:
00258 <span class="comment">// EEProm Commands</span>00259 <span class="preprocessor">#define EEPROM_WRITE_EN 0x00F0</span>00260 <span class="preprocessor"></span><span class="preprocessor">#define EEPROM_WRITE_DIS 0x0000</span>00261 <span class="preprocessor"></span><span class="preprocessor">#define EEPROM_WRITE_CMD 0x0100</span>00262 <span class="preprocessor"></span><span class="preprocessor">#define EEPROM_READ_CMD 0x0200</span>00263 <span class="preprocessor"></span>00264 <span class="comment">// Receive Header of each packet in receive area of memory for DMA-Mode</span>00265 <span class="preprocessor">#define RBUF_EVENT_LOW 0x0000 // Low byte of RxEvent</span>00266 <span class="preprocessor"></span><span class="preprocessor">#define RBUF_EVENT_HIGH 0x0001 // High byte of RxEvent</span>00267 <span class="preprocessor"></span><span class="preprocessor">#define RBUF_LEN_LOW 0x0002 // Length of received data - low byte</span>00268 <span class="preprocessor"></span><span class="preprocessor">#define RBUF_LEN_HI 0x0003 // Length of received data - high byte</span>00269 <span class="preprocessor"></span><span class="preprocessor">#define RBUF_HEAD_LEN 0x0004 // Length of this header</span>00270 <span class="preprocessor"></span>00271 <span class="comment">// typedefs</span>00272 00273 <span class="comment">// constants</span>00274 00275 <span class="comment">// prototypes</span>00276 00277 <span class="preprocessor">#include "<a class="code" href="nic_8h.html">nic.h</a>"</span>00278 00279 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> cs8900BeginPacketRetreive(<span class="keywordtype">void</span>);00280 <span class="keywordtype">void</span> cs8900RetreivePacketData(u08* packet, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> packetLength);00281 <span class="keywordtype">void</span> cs8900EndPacketRetreive(<span class="keywordtype">void</span>);00282 00283 00284 <span class="keywordtype">void</span> cs8900Init(<span class="keywordtype">void</span>);00285 <span class="keywordtype">void</span> cs8900Write(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> address, <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> data);00286 <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> cs8900Read(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> address);00287 00288 <span class="keywordtype">void</span> cs8900Write16(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> address, <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> data);00289 <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> cs8900Read16(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> address);00290 00291 <span class="keywordtype">void</span> cs8900WriteReg(<span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> address, <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> data);00292 <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> cs8900ReadReg(<span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> address);00293 00294 <span class="keywordtype">void</span> cs8900CopyToFrame(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *source, <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> size);00295 <span class="keywordtype">void</span> cs8900CopyFromFrame(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *dest, <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> size);00296 00297 u08 cs8900LinkStatus(<span class="keywordtype">void</span>);00298 00299 <span class="keywordtype">void</span> cs8900IORegDump(<span class="keywordtype">void</span>);00300 <span class="keywordtype">void</span> cs8900RegDump(<span class="keywordtype">void</span>);00301 00302 <span class="preprocessor">#endif</span>00303 <span class="preprocessor"></span><span class="comment">//@}</span>00304 <span class="comment"></span>00305 00306 <span class="comment">/****************</span>00307 <span class="comment"></span>00308 <span class="comment">// CS8900 device register definitions</span>00309 <span class="comment"></span>00310 <span class="comment">// Crystal ESIA product id.</span>00311 <span class="comment"></span>00312 <span class="comment">#define CS8900_ESIA_ID (0x630e)</span>00313 <span class="comment"></span>00314 <span class="comment">//IO Registers.</span>00315 <span class="comment">#define CS8900_IO_RX_TX_DATA_PORT0 (0x0000)</span>00316 <span class="comment">#define CS8900_IO_TX_TX_DATA_PORT1 (0x0002)</span>00317 <span class="comment">#define CS8900_IO_TxCMD (0x0004)</span>00318 <span class="comment">#define CS8900_IO_TxLength (0x0006)</span>00319 <span class="comment">#define CS8900_IO_ISQ (0x0008)</span>00320 <span class="comment">#define CS8900_IO_PACKET_PAGE_PTR (0x000a)</span>00321 <span class="comment">#define CS8900_IO_PP_DATA_PORT0 (0x000c)</span>00322 <span class="comment">#define CS8900_IO_PP_DATA_PORT1 (0x000e)</span>00323 <span class="comment"></span>00324 <span class="comment"> * Packet Page Registers.</span>00325 <span class="comment"></span>00326 <span class="comment"> * Bus Interface Registers.</span>00327 <span class="comment"></span>00328 <span class="comment">#define CS8900_PP_PROD_ID (0x0000)</span>00329 <span class="comment">#define CS8900_PP_IO_BASE (0x0020)</span>00330 <span class="comment">#define CS8900_PP_INT (0x0022)</span>00331 <span class="comment">#define CS8900_PP_DMA_CHANNEL (0x0024)</span>00332 <span class="comment">#define CS8900_PP_DMA_SOF (0x0026)</span>00333 <span class="comment">#define CS8900_PP_DMA_FRM_CNT (0x0028)</span>00334 <span class="comment">#define CS8900_PP_DMA_RX_BCNT (0x002a)</span>00335 <span class="comment">#define CS8900_PP_MEM_BASE (0x002c)</span>00336 <span class="comment">#define CS8900_PP_BPROM_BASE (0x0030)</span>00337 <span class="comment">#define CS8900_PP_BPROM_AMASK (0x0034)</span>00338 <span class="comment">#define CS8900_PP_EEPROM_CMD (0x0040)</span>00339 <span class="comment">#define CS8900_PP_EEPROM_DATA (0x0042)</span>00340 <span class="comment">#define CS8900_PP_RX_FRAME_BCNT (0x0050)</span>00341 <span class="comment"></span>00342 <span class="comment"> * Configuration and Control Registers.</span>00343 <span class="comment"></span>00344 <span class="comment">#define CS8900_PP_RxCFG (0x0102)</span>00345 <span class="comment">#define CS8900_PP_RxCTL (0x0104)</span>00346 <span class="comment">#define CS8900_PP_TxCFG (0x0106)</span>00347 <span class="comment">#define CS8900_PP_TxCMD_READ (0x0108)</span>00348 <span class="comment">#define CS8900_PP_BufCFG (0x010a)</span>00349 <span class="comment">#define CS8900_PP_LineCFG (0x0112)</span>00350 <span class="comment">#define CS8900_PP_SelfCTL (0x0114)</span>00351 <span class="comment">#define CS8900_PP_BusCTL (0x0116)</span>00352 <span class="comment">#define CS8900_PP_TestCTL (0x0118)</span>00353 <span class="comment"></span>00354 <span class="comment"> * Status and Event Registers.</span>00355 <span class="comment"></span>00356 <span class="comment">#define CS8900_PP_ISQ (0x0120)</span>00357 <span class="comment">#define CS8900_PP_RxEvent (0x0124)</span>00358 <span class="comment">#define CS8900_PP_TxEvent (0x0128)</span>00359 <span class="comment">#define CS8900_PP_BufEvent (0x012c)</span>00360 <span class="comment">#define CS8900_PP_RxMISS (0x0130)</span>00361 <span class="comment">#define CS8900_PP_TxCol (0x0132)</span>00362 <span class="comment">#define CS8900_PP_LineST (0x0134)</span>00363 <span class="comment">#define CS8900_PP_SelfST (0x0136)</span>00364 <span class="comment">#define CS8900_PP_BusST (0x0138)</span>00365 <span class="comment">#define CS8900_PP_TDR (0x013c)</span>00366 <span class="comment"></span>00367 <span class="comment"> * Initiate Transmit Registers.</span>00368 <span class="comment">#define CS8900_PP_TxCMD (0x0144)</span>00369 <span class="comment">#define CS8900_PP_TxLength (0x0146)</span>00370 <span class="comment"></span>00371 <span class="comment">* Address Filter Registers.</span>00372 <span class="comment">#define CS8900_PP_LAF (0x0150)</span>00373 <span class="comment">#define CS8900_PP_IA (0x0158)</span>00374 <span class="comment"></span>00375 <span class="comment"> * Frame Location.</span>00376 <span class="comment">#define CS8900_PP_RxStatus (0x0400)</span>00377 <span class="comment">#define CS8900_PP_RxLength (0x0402)</span>00378 <span class="comment">#define CS8900_PP_RxFrameLoc (0x0404)</span>00379 <span class="comment">#define CS8900_PP_TxFrameLoc (0x0a00)</span>00380 <span class="comment"></span>00381 <span class="comment"> * Bit Definitions of Registers.</span>00382 <span class="comment"> * IO Packet Page Pointer.</span>00383 <span class="comment">#define CS8900_PPP_AUTO_INCREMENT (0x8000)</span>00384 <span class="comment"></span>00385 <span class="comment"> * Reg 3. Receiver Configuration.</span>00386 <span class="comment">#define CS8900_RX_CONFIG_SKIP_1 (1 << 6)</span>00387 <span class="comment">#define CS8900_RX_CONFIG_STREAM_ENABLE (1 << 7)</span>00388 <span class="comment">#define CS8900_RX_CONFIG_RX_OK (1 << 8)</span>00389 <span class="comment">#define CS8900_RX_CONFIG_RX_DMA (1 << 9)</span>00390 <span class="comment">#define CS8900_RX_CONFIG_RX_AUTO_DMA (1 << 10)</span>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -