新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于16位单片机作为主控芯片的嵌入式设备解决方案

基于16位单片机作为主控芯片的嵌入式设备解决方案

作者:时间:2010-07-12来源:网络收藏

  5软件实现部分

  软件设计主要包括:以太网控制器初始化程序、驱动程序、TCP/IP协议栈程序、系统网络配置程序。以太网控制器驱动程序用于设置以太控制的工作状态即工作方式,分配收发数据的缓冲区;系统网络配置程序用于给监测系统分配IP地址及域名。限于篇幅,下面仅给出了采用汇编语言编写的RTL8019AS初始化的部分代码。

  .include hardware.inc;//配置单元定义

  .public _init //RTL8019AS初始化子程序

  _init:

  R1=0xffff; //初始化A口为输出

  [P_IOA_Attrib]=R1;

  [P_IOA_Dir]=R1;

  R1=0xfc07; //将IOB0~IOB2,IOB10~IOB15设置为输出,其他为输入

  [P_IOB_Attrib]=R1;

  [P_IOB_Dir]=R1;

  R1=0x0001;//选中00H寄存器

  [P_IOB_Data]=R1;

  R1=0x0021; //选择寄存器页面0,不工作

  [P_IOA_Data]=R1;

  [P_IOB_Data]=R1;

  R1=0x004c;//设置接收缓冲区,页地址为0x4c~0x7f

  [P_IOA_Data]=R1;

  R1=0x0001;//选中02H寄存器

  [P_IOB_Data]=R1;

  R1=0x0080;

  [P_IOA_Data]=R1;

  ...

  R1=0x0801; //选中01H寄存器

  R1=0x0001; //选中00H寄存器

  [P_IOB_Data]=R1;

  R1=0x0061; //选择寄存器页面1

  [P_IOA_Data]=R1;

  ...

  R1=0x0001;

  [P_IOB_Data]=R1;

  R1=0x0022; //选择寄存器页面0,进入工作状态

  [P_IOA_Data]=R1;

  retf; // 程序返回

  6 结束语

  利用16位SPCE061A驱动以太控制芯片RTL8019AS,实现信息家电经由网关接入internet的方式,可以方便、低廉地将信息家电的工作状态送往远程PC进行监控。这种低成本、高性能的方案,具有可靠灵活的特点,适用于通信速率不大,允许延时的家庭自动化。用户可根据需要,按上述方法,为传统的家电赋予接入internet的能力。


linux操作系统文章专题:linux操作系统详解(linux不再难懂)

上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭