NO | NAME | TYPE | Bit7 | Bit6 | Bit5 | Bit4 | Bit3 | Bit2 | Bit1 | Bit0 |
00h | CD | R/W | PSI | PS0 | RD2 | RD1 | RD0 | TXR | STA | STP |
1.初始化复位寄存器,地址1fh,代码如下。
mov nicIOAddr,#$1F;给出复位寄存器的地址
mov w,#0;写入数据0
call NICWrite;调写子程序,把数据写入
2.选择RTL8019as为用户配置模式,然后对9346CR寄存器进行写使能,再对RTL8019AS的配置寄存器2进行设置,代码如下。
clr nicIOAddr;选CR寄存器
mov w,#d1h;选第三页,停止传输操作
call NICWrite;写入数据
mov nicIOAddr,#$01;选9346CR寄存器
mov w,#d0h;配置寄存器写使能
call NICWrite;写入数据
mov nicIOAddr,#05h;选配置寄存器2
mov w,#0h;网络连接自动检测使能(10BaseT)
call NICWrite;写入数据
3.配置当前页寄存器(写时选择页07h寄存器,读时选择第二页07h寄存器)。
inc nicIOAddr;($07) CURR寄存器指向接收缓冲区的页(每页256个字节)
mov w,#RXBUF_START;把开始地址写入CUR寄存器中
call NICWrite;写入数据
4.配置接收缓冲区的大小(在页寄存器组中).
clr nicIOAddr;选择页寄存器
mov w,#01h;写入数据1
call NICWrite;写入数据
inc nicIOAddr;“页开始寄存器”($01, PSTART)设置接收缓冲区的开始页
mov w,#RXBUF_START
call NICWrite;写入数据
inc nicIOAddr;“页终止寄存器”($02, PSTOP)设置接收缓冲区的终止页
mov w,#RXBUF_END
call NICWrite;写入数据
5.设置边界寄存器
inc nicIOAddr;($03)BNRY()用作一个指针,指向数据缓冲区中的一页的接收数据
mov w,#RXBUF_START
call NICWrite;写入数据
6.设置中断寄存器(地址在页的07h)
mov nicIOAddr,#$07;ISR中断寄存器
mov w,#$FF
call NICWrite;写入数据
中断寄存器各个位的含义如表2所示。
8.设置接收配置寄存器(0C,RCR)
mov nicIOAddr,#$0C;RCR设置为扔掉错误的接收包;不支持多播地址的包;接收少于64字节的数据包;支持广播地址;物理目的地址必须和在PARO-5的接点地址相匹配;数据在存储器中缓冲;拒绝接收有错误的包。
mov w,#%11000110
call NICWrite;
表2 中断寄存器各个位的含义
位 | 符号 | 描 述 |
7 | RDC | NIC开始时置"1",开始命令写入CD时置"1"当包从缓冲区读取时置"0" |
6 | RDC | 当远程DMA操作完成时置"1" |
5 | CNT | 当网络计算器被设置时置"1" |
4 | OVW | 当接收缓冲区用完时置"1" |
3 | 当传输包由于网络问题而掉时被置"1" | |
2 | RXE | 当有以下情况时被置"1":CRC校验错; 帧对起错误;丢包 |
1 | PTX | 这个位指示发送包没有错误 |
0 | PRX | 这个位指示接收包没有错误 |
9.设置发送配置寄存器(0D,TCR)
inc nicIOAddr;TCR设置为包要进行地址匹配检查,CRC校验和帧对齐校验;物理目的地址必须和在PARO-5的接点地址相匹配;不支持多播地址的包;发送少于64字节的数据包。
mov w,#%11100000
call NICWrite
10.设置数据配置寄存器(0E,DCR)
inc nicIOAddr;数据配置在低8位,每次传送一个字节,而不是一个字
mov w,#%10111000
call NICWrite;调写子程序,把数据写入
11.开始接收数据
clr nicIOAddr;选择CR寄存器
mov w,#%00000010;Page0,数据设置为开始接收
call NICWrite;调写子程序,把数据写入
利用单片机对网络控制器进行上述设置后,再结合高层的TCP/IP协议,就可以在以太网上进行数据传输了。
利用8位微控制器配置网络控制卡的寄存器较为烦琐,上述过程和代码只是简要的介绍,用户也可针对自己的特殊需要进行一些特殊设置,总之,要以提高数据传输效率为原则。
免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。