51单片机网络通信及ARP协_高中议论文作文1200字以上

  本文主要以SST89E564RD型51单片机和RTL8019AS 网络接口芯片为例,研究了如何将51单片机与网络接口芯片进行硬件的电路连接,并通过将ARP协议进行简化和重新定义,实现了将51单片机接入TCP/IP进行网络通信,对该领域的研究具有一定的借鉴意义。

  1 51单片机与网络控制器的连接

  RTL8019AS 网络接口芯片是台湾 Realtek 公司的代表性产品之一,该芯片基于 ISA 总线结构,性能稳定且价格低廉,在工业企业领域有非常广泛的应用[ 1 ]。

  1.1 RTL8019AS接口芯片的主要特性

  RTL8019AS芯片主要优点有:

  一是支持热插拔(即插即用)的动态检测;

  二是完全兼容当前主流的NE2000 模式并可在8 位与 16 位两种模式下工作;

  三是有跳线与非跳线两种模式可供选择;

  四是支持全双工通信模式,双工通信时信道的传输速率可达到10Mbps;

  五是内置数据预取功能;

  六是内置 16K 字节的闪存;

  七是支持 8/16两种前端总线工作模式,内置8 个中断申请线,同时有16 个I/O地址可供选择。

  1.2 51单片机与RTL8019AS连接实现网络通信的电路设计

  1.2.1 RTL8019AS 与 93C46 接口电路

  93C46接口电路内部存储容量为1Kbits,是四线串行接口EEPROM。RTL 8019 AS芯片在上电或者初始化复位时,首先要从该芯片中读取预设的配置信息才能完成初始化。 93C46 内部存储器的前三个地址空间用于存放 RTL8019AS芯片的上电初始化信息;后5个地址空间用于记录本机地址;0AH-11H 的地址空间分配给制造商存储产品的信息;

  12H~7FH 的地址空间用于记录即插即用信息。RTL 8019 AS 的EECS引脚连接93C46的CS引脚,EESK引脚连接SK引脚,EEDI引脚连接DI,EEDO引脚连接DO引脚,即由EECS 提供片选信号,EESK 提供时钟信号,EEDI 与 EEDO 定义为串行数据I/O通道。

  1.2.2 RTL8019AS 与 SST89E564RD 接口电路的硬件连接

  SST 系列单片机是美国 SST公司生产的一种中高端51系列单片机,SST89 E564RD 单片机是其SST系列单片机中的一个型号。将RTL8019AS 的SD0-SD7 引脚与SST89E564RD 的P0.0-P0.7引脚相连,相连后的引脚通过锁存器与A0-A7引脚相接,同时将74HC573的A0-A5引脚与 RTL 8019AS 的SA0-SA5引脚相接,将SST89E564RD的P0口用作D/A端口。

  此外,SST89E564RD的 P2.0-P2.6 引脚与 静态存储芯片TMS62256 的高7位地址线引脚相接,组合成访问 TMS的15位地址总线。将SST 89E564 RD的SMEMRB 引脚接+5V,同时将IOCHDRY引脚悬空,JP 引脚为跳线模式,IOCS 16B引脚接地,使 RTL8019AS 工作在 8 位模式[ 2 ]。

  1.3 网络接口电路的地址定义

  RTL8019AS中 SA0-SA19 的连接方式如下:SA5-SA7以及SA10-SA19 接 GND,SA8-SA9 接+5V电压,SA0-SA4 接74HC573的A0-A5引脚。SST 单片机可以通过 P0.0-P0.4来选中RTL8019AS 的 32 个I/O端口并相应地对其进行R / W操作。此外,将RTL8019AS 的IORB 和 IOWB 引脚分别与SST89E564RD单片机的 RD 和 WR 相连作为R/W选通信号。

  然后在 93C46 接口电路的低位00H 单元中写入 00H,将IOS0-IOS3 赋值为 0,这样就可将RTL8019AS 选择 I/O 端口的基本寻址地址定义为 300H,地 址 空 间 就为 00300H-0031FH。

  2 51单片机系统网络通信中 ARP 协议设计与实现

  2.1 ARP协议工作流程

  根据TCPIP协议的定义,任何的需要远程通信和访问的主机在进行任何形式的通信前必须获得用于传输的本地地址。如果通信发起的源主机和通信目的端主机在同一个子网网段,那么这种通信形式不需要进行网关的数据交换,本地地址就是目的主机的硬件地址。否则通信发起者就要通过本地路由器(网关)的地址向目的主机进行IP地址和物理地址的沟通。 本文只考虑不需要使用路由器的情况。

  在不使用路由器的前提下,ARP 进行地址解析的步骤如下:通信发起端在网络中广播接收端的 IP 地址,然后与广播地址一致的计算机在收到广播后会相应地发送一个应答,该应答中包含了该应答计算机的IP 地址和实际物理地址的相关信息,接着发送端用接收到的地址信息进行数据分组和传输,最后发送端将获取到 MAC 地址信息存入本地缓存,作为下次通信数据传输的地址配置信息,这个本地缓存就是ARP 缓存。

  如果数据传输的地址相同,那么发送端就可以通过读取 ARP 缓存来获取 MAC 地址,如果数据传输的地址与以往不同,则重复上文的步骤直到获取物理地址。

  2.2 51单片机网络通信时ARP 协议中缓存机制分析与实现

  ARP 缓存条目可以使用静态或者动态两种方式生成。使用静态的方式生成 ARP 缓存条目时占用系统的资源较多,运行效率不高,所以通常采用动态方式生成 ARP 缓存。ARP 条目的定时刷新主要通过定时器来实现,缓存的生存期由单片机定时器初始值和刷新定时器的时间间隔的乘积确定,ARP 条目的查询操作定义可考虑直接对缓存中的IP 地址进行逐个比较来完成查询操作,具体的定义为:发送方先在 ARP 缓存中查询目的方主机的地址,如果在缓存中能够查找到,说明此前进行过该路由的通信过程,则可以在获得目的主机的MAC 地址后开始进行数据传输;否则就需要进行上文提到的获取ARP缓存的步骤,发送ARP请求报文直至对方的进行应答。

  2.3 ARP报文格式

  一个完整的 ARP 头部包含 28个字节的数据,在硬件类型部分选用 DIX 型以太网帧(值为 1);协议类型部分选用 IP 协议(注册值为0x0800);硬件地址长度部分为 6字节;PLEN 为 IP 地址长度部分值为4字节;操作代码部分,当请求操作时值为 1,应答操作时值为 2。

上一篇 2023年04月28日11时07分18秒
下一篇 2023年04月28日11时08分28秒

相关推荐

  • 可爱的小鸡_五年级记叙文作文300字

      这些小鸡像人一样,一日三餐,日出而行,日落而眠。吃的东西五花八门,有剩菜剩饭,过期的米饭、小米、糯米,还有生白菜叶等等它们都要吃。有时,小鸡们吃完饭,还要在一起“唱歌”。它们一起“叽叽”地叫,好像在比谁的声高,谁的歌声动听,就像在搞一场有声有色的“小鸡联欢会”,有趣极了!   小鸡们最爱抢食吃,这不,又发生了一场“小鸡争食战”。   一天下午,我抓了一把大米打算去喂小鸡。没想到,我刚一过去,小鸡们就跑到我身边聚集起来。原来它们发现我拿了大米。我只好把撒在地上,小鸡们马上争先恐后地吃起来。有的小鸡马上吃光自己周围的大米,去吃别人没有注意到的大米;有的小鸡则按兵不动,趁另两只小鸡打架时,连忙吃…

    作文 2023年07月06日
    11
  • 小鸡_二年级说明文作文100字

      “叽,叽,叽”,咦,从哪里传来的声音?哦,原来是我家后面养着一群小鸡呢。   那群小鸡非常可爱,它们的羽毛毛绒绒的,颜色也很漂亮,有黄的,有黑的,还有花的呢。   有一次 ,我看到小鸡在吃像沙粒一样的小石子,我很疑惑,就去问问妈妈,妈妈笑着说:“小鸡没有牙齿,吃下去的食物不能消化,所以它们要吃点小石子把食物磨碎。”我恍然大悟,原来是这样呀。…

    作文 2023年07月06日
    11
  • 可爱的小鸡_六年级记叙文作文600字

      多么可爱的小鸡啊!可是我却碰都不敢碰一下.因为在它们的身边还有一位高大威武的“保护者”——鸡妈妈.鸡妈妈是一个非常称职的母亲,要是谁敢碰她孩子的一根汗毛,她不把你打个落花流水是绝不会放过你的.所以,我还真不敢惹她.   十几天后,原本35只的小鸡结果死的只剩21只了.这十几天来也一直是我在照顾它们.虽然如此,可是小鸡们对我还是很陌生,一直很防着我,鸡妈妈也没对我改变一点态度.在院子里,小鸡见到我比见到鬼还要害怕,闪的飞快!第一次给它们喂食就好像我要杀它们似的,躲的远远的,鸡妈妈也恨不得我琢两下.可真是委屈死我了,真是冤呐!   一个多月以后,小鸡们都开始长身体了,当然,随着年龄的增长,它们…

    作文 2023年07月06日
    11
  • 可爱的小鸡_七年级记叙文作文400字

      在一个阳光明媚的下午,我背着书包向家走,在学校门口我看到了卖小鸡的人,觉得很可爱,想买几只,我摸了摸口袋,里面的钱只够买两只。我就分别给它们各取了一个名字,稍微大一点就叫“哥哥”,稍微小一点的就叫“弟弟”它们毛茸茸的,特别可爱。妈妈经过我们学校的时候我遇见了妈妈,然后我们就一起回家。   在回家的路上,我听到小鸡的叫声很大,而且头一直往外看,这是怎么回事呢?妈妈说:“它们可能可能太饿了!”我让妈妈快点骑,到家后,我淘了一点小米,煮熟后放凉了盛到一个盘子端给小鸡们吃。他们长得很可爱,两只小小的眼睛,黄色的羽毛,瘦小的腿和四只小爪子。小鸡的嘴很尖,脖子也很长。他们不仅长得可爱,还很淘气。记得有…

    作文 2023年07月06日
    11
  • 可爱的小鸡_小学记叙文作文400字

      一只小鸡出壳了,浑身湿漉漉的,看起来毛很杂乱,可怜极了,像个小乞丐。   小鸡刚出蛋壳时,很怕冷,就和其它小鸡挤在一起取暖,我想可能是鸡蛋里面的气候比外面暖和吧。   小鸡再长大一些,就开始调皮起来了,它们张着软软的翅膀,在篮子里活蹦乱跳,我猜想,它们一定是想跳出篮子,看看外面的蓝天白云、花草和树木。慢慢的小鸡的翅膀变硬了,它们身上的颜色也变了许多,有白色、有灰色、有赤褐色,看起来非常鲜艳。它们玩的时候,用尖尖的小嘴你啄我我啄你。玩完了,就跟着母鸡妈妈找食物吃,等母鸡妈妈找到食物后,就会“咯咯咯”地发出声音,好像在说:“孩子们,我找到食物了,快来吃吧!”小鸡们听到母鸡的叫声,就会一窝蜂地跑…

    作文 2023年07月06日
    11
  • 小鸡_八年级记叙文作文500字

      一身黄色的绒毛,一张尖尖的小嘴儿,加上红色的小爪子,凑成了机灵可爱的小鸡。   我曾经养过三只可爱的小鸡,一只紫色的,两只黄色的。在养它们的时候还发生了不少趣事呢,至今使我回味无穷。   刚买来时,他们挤在一块,叽叽的叫着。我赶紧抓了一把米喂它们。他们争先恐后的跑来啄食。   趁它们吃食的时候,我给它们想好了名字:那只紫色的小鸡叫淘淘;那只黄色的背上有一点花纹的叫花花;那只绒毛黄的没有一点杂色的小鸡叫朵朵。   每天放学我都把小鸡放出来,让它们在草地上捉虫子吃。   一次,我看见它们捉虫子吃,淘淘从土里啄出了一条蚯蚓,旁边的花花看见了,连忙抢过来就跑。这那成,淘淘赶紧去追。这时朵朵看见了,…

    作文 2023年07月06日
    11
  • 给小鸡洗澡_三年级记叙文作文400字

      小时候,我做了一件让人啼笑皆非的事。   这件事是我5岁的那一年做的。一天,我看见外婆在喂鸡,喂鸭,还带着鸭去池塘游泳。   我看见那些鸭的羽毛很光滑,一定是它们经常游泳,可鸡却被关在笼子里,叽叽喳喳地叫着.我想:那些鸡真可怜,羽毛总是湿湿的,一定很不舒服。外婆为什么不给它们洗澡呢?如果我去给小鸡洗澡,外婆一定会表扬我。想到这里,我马上跑回家,从家里拿出一个大盆,拿到鸡圈子的旁边,然后装满水,再一个一个的抓起来放在水里,不知道为什么,那些鸡总是拼命地叫,拼命反抗,拼命地跳出来,抓进去一个又跳出一个,搞得我全身都湿透了,我很气愤。   后来,外婆回来了,看见我全身都湿透了,就问:“你为什么全…

    作文 2023年07月06日
    11
  • 可爱的小鸡_五年级记叙文作文500字

      山东博兴实验小学五年级一班   王少琦   外婆家养了一群可爱的小鸡,它们每天都叽叽喳喳地叫个不停,伴着知了的叫声,合成了一首美妙的音乐。   每天,它们都在它们的领地里奔跑、嬉戏。一会飞上窝顶;一会你追我赶;一会又安静地趴在太阳地里梳理羽毛、睡大觉。   它们的食物是小米饼。每当它们饿了的时候,我就拿一块小米饼,先把米饼弄碎,我又把小鸡的饭碗从鸡棚里吊出来,然后把碎米饼放在碗里。我从不把碗直接放在地上,因为我想看它们跳高。我把小鸡的饭碗吊在离地二十多厘米的空中,那些馋嘴的小东西们就飞快地跑过来,可能它们还没真正睡醒吧,我看到有的小鸡还跌跟头呢。大家你拥我挤的凑到饭盆下。有一只不愿意跑,或…

    作文 2023年07月06日
    11
  • 小鸡_小学记叙文作文500字

      爸爸在庙会时给我买了一只小鸡,我高兴得一蹦三尺高。兴冲冲地把它放在小院子里,我找了个小盒子,放上柔软的干草和一堆白绵花,上面的花纹被我涂地白一块,黑一块。我把盒子前面剪了个小门,装上“窗帘”,这样,小屋就完成了。   我把小鸡放了进去,它似乎很满意,开心地叫了起来,呆在里面死也不肯出来。我打开“天窗”,只见它的身子金黄金黄的,像一团黄色的绒球,黑宝石般的小眼珠转来转去,观察着四周。两只“小耙子”在不停地挖地,似乎在找虫子吃。我从“天窗”撒了点米。它好奇地叫了几声好像在说:“难道下米雨了!”   下午,我把小门打开,带它出去散步。我把它放在草堆里,一跳下去就吃了起来,吃到小虫子还不时叫了几声…

    作文 2023年07月06日
    11
  • 抱歉,小鸡_五年级记叙文作文500字

      今年春天,我家的老母鸡开始孵小鸡了。   今天放学回家,妈妈告诉我:“小鸡要出壳了。”我从没见过小鸡是怎样出生的,今天我就当一回“接生婆”,迎接小鸡问世吧。   于是,我放下书包就飞奔到鸡窝旁,眼睛一眨不眨地盯着母鸡和它腹下的鸡蛋。可等了好久也不见有动静,我有些不耐烦了,正要起身,突然看见有一个蛋裂开了一条缝,一张黄色的小尖嘴露了出来。接着,小鸡的头从蛋壳里钻出来。过了一会儿,小鸡整个身体都出来了。它身上毛茸茸的,有一点湿,挣扎了好一会儿才站起来,靠在母鸡身边,叽叽地叫着。我想:小鸡生得这么慢,照这样下去,这么多蛋要生到什么时候才能结束?不如我来帮帮它吧!   我随手从母鸡的身子下掏出一个…

    作文 2023年07月06日
    11