登录
|
注册会员
开启辅助访问
设为首页
收藏本站
扫一扫关注官方微信
论坛
BBS
M币充值
M currency prepaid phone
M币获取
附件中心
搜索
search
全新论坛MCU智学网上线,欢迎访问新论坛!稀缺资源、技术干货、参考设计、原厂资料尽在MCU智学网
MCU资讯论坛
»
论坛
›
单片机论坛
›
单片机应用于方案
›
基于c8051f020的远程电源监控系统设计
更新自动建库工具PCB Footprint Expert 2024.04 Pro / Library Expert 破解版
基于c8051f020的远程电源监控系统设计
[复制链接]
1863
0
ad***
管理员
发表在
电源技术
2014-4-14 08:32:00
|
查看全部
|
阅读模式
本文包含原理图、PCB、源代码、封装库、中英文PDF等资源
您需要
登录
才可以下载或查看,没有帐号?
注册会员
x
1 引言
目前,以太网(ether
ne
t)协议已经非常广泛地应用于各种计算机网络,如办公局域网、工业控制网络等场合,并且还不断地发展。基于以太网的新技术和联网设备不断出现,以太网已经成为事实上最常用的局域网络标准之一。但是,基于以太网的嵌入式系统目前并不是很多。其原因除了嵌入式系统本身运行速度较慢、资源较少且不足以实现以太网的各种协议外,更重要是设计以太网的接口及协议相对比较复杂,使人望而却步。本文将研讨基于
c8051
f
系列
单片机
系统的嵌入式系统与10
mbp
s以太网控制器芯片
rtl8019as
的接口电路实现及编程方法。
2 嵌入式以太网接口分析
2.1 接口组成
8位
mcu
的嵌入式设备通过以太网接口,将8位mcu采集的数据信息,传送到远程服务器。在这个过程中需要处理网络接口、接收数据的分析、发送数据段的封装等问题。
以10baset以太网为例,发送数据时应该做的工作是首先对需要发送的数据进行曼切斯特编码,然后对编码后的数据进行预处理,使其发送的数据适合10baset的以太网传输,最后把处理好的数据以适当的速度发送到以太网。同时为了保证数据的有效性,系统还应具有冲突检测和重发功能。在这个过程中,直接用8位mcu来实现该功能非常困难。解决的方法是用专门的网络接口芯片n
ic
网络接口卡(
nic
-network inteRFace card)来实现,这类芯片遵循ieee802.3所规定的csma/cd协议,除了提供物理链路所需的电气性能外,还提供曼切斯特编码、冲突检测和重发功能,可以用很少的外围电路一起完成数据的发送和接收功能。这样,8位mcu只需要nic芯片提供初始配置和数据接口,这对于8位mcu是没有问题的。基于以上的分析,8位mcu的嵌入式设备以太网接口部分构成如图1所示:
图1 嵌入式设备以太网接口组成
2.2 以太网控制芯片--rtl8019as
(1) rtl8019as的主要性能
符合以太网ii与ieee802.3(10base5、10base2、10baset)标准;
全双工,收发可同时达到10mbit/s的速率;
内置
16
kb的sram,用于收发缓冲,降低对主处理器的速度要求;
支持8/16位数据总线,8个中断申请线以及16个i/o基地址选择;
支持utp、aui、bnc自动检测,还支持对10baset拓扑结构的自动极性修正;
允许4个诊断
led
引脚可编程输出;
采用
cmos
工艺,功耗低。单一
电源
5v供电。
(2) rtl8019as的内部结构
rtl8019as芯片内部包含远程
dma
(直接存储器存取)接口、本地dma接口、
mac
(介质访问控制)逻辑、数据编码解码逻辑和
其它
接口。这里的dma与平时所说的dma有些不同:rtl8019as芯片的本地dma操作是由控制器本身完成;而远程dma并不是在没有主处理器的参与下数据能自动移到主处理器的
内存
中,它指主处理器给出起址和长度就可以读写芯片的ram缓冲区,每操作一次ram地址自动加1,而普通ram操作每次要先发地址再处理数据,速度较慢。内部结构如图2所示。
图2 内部结构图
3 嵌入式设备网络互连设计方案
3.1 电路原理设计
c8051f
020
是美国cygnal公司推出的一种混合信号
soc
型8位单片机,它是一种完全集成的混合信号系统级芯片,具有与8051兼容的微控制器内核,与
mcs
-51指令集完全兼容。内核采用流水线结构,机器周期由标准的12个系统时钟周期降为1个系统时钟周期,70%指令的执行时间为1个或2个系统时钟周期,处理能力大大提高,峰值性能可达25
mip
s。
同时,除具有标准8051的数字外设部件外,c8051- f020片内还集成了构成一个单片机数据采集、控制系统所需要的几乎所有模拟、数字外设及其他功能部件。这些外设或功能部件包括:用于
多种
模拟信号的模拟多路选择器、真正12位转换精度的
ADC
,还有能满足特殊功能所需的smbus(i2c兼容)、uart、
spi
、多个多功能计数器/
定时器
、以及看门狗定时器(wdt)和电源监视器等数字外设。
c8051f020
具有
100
脚的tqfp封装,功耗低,供电电压为2.7~3.3v,全部i/o、rst、jtag引脚均耐5v电压。其mcu具有p0~p7共64个通用i/o端口,每个端口引脚都可以被配置为推挽输出或漏级开路输出。对于rtl8019as,由于其工作电压是5v,而c8051f020的工作电压是3.3v,所以要c8051f020的输出能更好地驱动5v输入的oled,需要对系统进行额外配置。除了将对应端口的输出方式设置为“漏极开路”外,还应在电路上将每个端口通过一个上拉
电阻
接到5v电源,这样可以保证c8051f020的逻辑“1”输出能够被提升到5v。
单片机采用c8051f020芯片,以查询工作方式不断读取rtl8019as状态寄存器。以远程dma方式发送或读取rtl8019as的数据。详见图3。
图3
由于网络控制器具有 ethernet(ieee802.3)协议处理功能,系统便可直接
rj45
连接到以太网(再通过以太网接入 internet)。本文所设计的系统中选用的rj45
连接器
为lf1s
022
,它已经具有电平转换功能,简化了
PCB
设计。值得注意的是,设计pcb时,rj45连接器不能与
cpu
和网络芯片相距太远,以免对
数据传输
造成影响。
rtl8019as的tpin+(59脚), tpin-(58脚)脚是tp 的一对输入脚,能以10mbits/s 的速率从双绞线接收差分曼彻斯特编码的数据。tpout+(45脚)、tpout-(46脚)是一对曼彻斯特编码的差分tp输出信号。为了防止双绞线超载,该输出信号会被提前中断,这样可以减少拥塞。连接时,这四个管脚分别接到 lf1s022的7、6、5、4脚。连接器的其他管脚都通过一个
电容
与地连接。最后,还必须在50、51脚之间接入一个20mhz的
晶体振荡器
。
图3中扩展的rj45口接入互联网,rtl8019as通过本地dma方式将接收到的数据送到片内sram,或者从片内sram读取数据从rj45口发送出去。
网卡的复位信号rstdrv由单片机的p5.2产生,rstdrv为高电平有效,至少需要800ns的宽度。由p5.2引脚产生一个1&
mu
;s以上的高电平就可以使rtl- 8019as芯片复位。
rstdrv从高电平到低电平之后要等多久,单片机才可以对网卡进行操作?复位的过程将执行一些操作,比如将内部寄存器初始化等。这些至少需要2
ms
的时间。为确保完全复位,应该等待更久的时间之后才对网卡操作,比如100ms之后才对它操作。
对rstdrv可以接单片机的一个i/o口线进行网卡的复位,也可以直接将rstdrv跟单片机的reset引脚并联,单片机复位的时候,网卡也复位,以减少一个单片机的引脚使用。
3.2 网卡的初始化
网卡在能够正常工作以前,必须先对其进行初始化,一般带有操作系统的计算机上,网卡的初始化由其驱动程序完成。此例中由于c8051f020单片机是全裸机(不含驱动程序),不仅需要用户自己完成网卡的初始化,还需要用户自己设置网卡的mac(介质访问控制)地址以及对网卡进行读写访问。
初始化需要设置页0与页1的相关寄存器,页2的寄存器是只读的,不可以设置,页3的寄存器不是ne2000兼容的,不用设置。需初始化的寄存器包括cr、
dcr
、pbcr、pstart、pstop、isr、imr、
par
0~par5、
mar
0~mar7、curr、
tcr
、
rcr
等寄存器。初始化函数主要要完成以下诸项工作。
(1) 调用复位子程序队rtl8019as进行复位。有两种复位方式:一是硬件复位,通过拉高拉低reset引脚达到复位rtl8019as的目的;二是软件复位,向if端口读写数据从而使rtl8019as复位。
(2) 向命令寄存器cr写入0x21h使rtl8019as处于停止模式,设置寄存器。
(3) 设置数据配置寄存器dcr为使用fifo缓存、普通模式、8位数据传输模式,字节顺序为高位字节在前,低位字节在后。设置rbcr0、rbcr1寄存器为0,即读取ram字节数。
(4) 设置接收和发送缓冲区起止地址。pstart接收缓冲区的起始页地址0x46;pstop接收缓冲区的结束页地址0
x80
;bnry指向最后一个已经读取页的指针0x46;tpsr发送页的起始地址0
x40
;curr芯片写内存指针,它指向当前正在写的页的下一个页,即初始化时指向0x47。
(5) 设置rcr接收配置寄存器为0
xcc
,使用接收缓冲区,仅接收自己的地址的数据包(以及广播地址数据包)和多点播送地址包,小于64字节的包丢弃,校验错的数据包不接收。设置tcr发送配置寄存器为0xe0,启用crc自动生成和自动校验,工作在正常模式。
(6) 设置mar0~mar8为0,清除多播地址寄存器;设置isr为0xff,清除中断状态寄存器;设置中断屏蔽寄存器imr为0,屏蔽所有中断请求。
(7) 将物理地址写入par0~5物理地址寄存器。
(8) 最后设置tcr发送配置寄存器为0xe0;设置命令寄存器cr为0
x22
,芯片进入正常工作状态,rtl8019as初始化完成。
初始化时,必需指明嵌入式设备的
48
位硬件地址和广播地址,并正确设置它的ip地址、子网掩码和默认网关。工业控制一般都在一个同级局域网内部进行,因此可以直接令网关的ip地址为0。其主控制流程如图4所示。
4 结束语
本文分析了嵌入式设备与以太网接口的组成,简要介绍了rtl8019as和c8019f芯片,并给出了嵌入式mcu与以太网控制芯片的硬件连接及其软件设计。该设计以数据采集为例的,在工业生产中有很大的现实意义。
计算机网络
,
局域网
,
以太网
,
办公
,
工业
相关帖子
配网自动化系统
以太网网络连接解决方案
研华工业级工业以太网解决方案
MCGS双机备份实现方案2
MCGS双机备份实现方案1
I.MX6x工业行业最高端的开发平台
工业用流水线计(定)时器、计数器、转速表、报警器开发定制说明
stm32实现IP广播 做简单任务即可免费得开发板
我要把16路AD采样的信号量和摄像头传过来的二进制文件打包
关于ARM的22个常用概念
举报
回复
返回列表
*
滑块验证:
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册会员
本版积分规则
发表回复
回帖后跳转到最后一页
回复
转播
评分
分享
打开支付宝扫一扫,最高立得1212元红包
搜索
本版
帖子
用户
热搜:
传感器
51串口程序
电子管放大器
夾式電表
夾式電流
Mentor论坛
打印机
版块推荐
百宝箱
My 布拉格
无边框Z9
Z9Max
Z9mini
nubia动态
问题 & 建议
资源分享
爱拍
同城会
牛仔生活
查看论坛所有版块>>
每日签到
论坛任务
摄影技巧
跳蚤市场
互助问答
论坛导读
申请内测
红包中心
每日摇一摇
活动中心
网站地图
官方旗舰店
图文热点
VK1S38A SSOP24点阵数显LED驱动芯片/数码管
VK1S38A是一种带键盘扫描接口的数码管或点阵LED驱动控制专用芯片,内部集成有3
点阵LED数显屏驱动芯片/数码屏显示IC-VK162
VK1628是一种带键盘扫描接口的数码管或点阵LED驱动控制专用芯片,内部集成有3线
数显屏驱动原厂-VK1668 SOP24抗干扰数显LED
产品品牌:永嘉微电/VINKA 产品型号:VK1668 封装形式:SOP24 概述 VK166
抗干扰LED数码管显示屏驱动芯片/3线串行接
VK1Q68D是一种带键盘扫描接口的数码管或点阵LED驱动控制专用芯片。内部集成有3线
抗干扰能力强/点阵数显LED屏驱动/数码管驱
VK1S68C是一种带键盘扫描接口的数码管或点阵LED驱动控制专用芯片,内部集成有3 线串
更多
精华推荐
VK1S38A SSOP24点阵数显LED驱动芯片/数码管
点阵LED数显屏驱动芯片/数码屏显示IC-VK162
数显屏驱动原厂-VK1668 SOP24抗干扰数显LED
抗干扰LED数码管显示屏驱动芯片/3线串行接
抗干扰能力强/点阵数显LED屏驱动/数码管驱
可支持14×4的点阵LED显示面板数码管LED驱
数显驱动器原厂-数显LED显示驱动芯片VK1620
抗干扰数显驱动数码管LED驱动芯片VK1618 SO
更多
社区学堂
VK1S38A SSOP24点阵数显LED驱动芯片/数
点阵LED数显屏驱动芯片/数码屏显示IC-V
VK1S38A SSOP24点阵数显LED驱动芯片/数码管
VK1S38A是一种带键盘扫描接口的数码管或点阵LED驱动控制专用芯片,内部集成有3
点阵LED数显屏驱动芯片/数码屏显示IC-VK162
VK1628是一种带键盘扫描接口的数码管或点阵LED驱动控制专用芯片,内部集成有3线
数显屏驱动原厂-VK1668 SOP24抗干扰数显LED
产品品牌:永嘉微电/VINKA 产品型号:VK1668 封装形式:SOP24 概述 VK166
更多
客服中心
QQ:187196467
服务时间:周一至周日 8:30-20:30
在线客服
客服微博
产品咨询
售后中心
关注我们
关于我们
关于我们
友情链接
联系我们
帮助中心
网友中心
购买须知
支付方式
服务支持
资源下载
售后服务
定制流程
关注我们
官方微博
官方空间
官方微信
QQ:187196467
周一到周日 8:30-22:00 (全年无休)
7 x 24小时在线客服
手机版
Powered by
MCUZX!
X3.4 © 2008-2015
MCU资讯论坛
版权所有
京ICP备18035221号-2
客服QQ: 187196467
技术支持:
MCU资讯论坛
|
网站地图
快速回复
返回顶部
返回列表