网站首页
IC库存
IC展台
电子资讯
技术资料
PDF文档
我的博客
IC72论坛
ic72 logo
资料首页最新产品 技术参数 电路图 设计应用 解决方案 代理商查询 IC替换 IC厂商 电子辞典
关键字: 技术文章 PDF资料 IC价格 电路图 代理商查询 IC替换 IC厂商 电子辞典

基于ARM处理器的HDLC通信的DMA实现

  摘要:以ARM7TDMI为内核的Samsung公司S3C4510B网络微控制器(Networking MCU)为基础,重点论述如何通过DMA(直接内存访问)方式实现HDLC通信。对软件设计中缓冲描述符、DMA状态配置和控制、ISR服务程序设计以及相关的硬件配置进行详细的描述,并讨论如何编写在操作系统下的驱动程序。 关键词:HDLC 缓冲描述符 循环链表 中断服务程序 DMA 目前在嵌入式产品开发设计中,通常是在OS(Operating System)厂商提供的BSP基础上进行开发工作;对于底层硬件的操作,程序设计人员很少关注或只是少量的修改。实际上很多产品,我们完全可以抛开操作系统的模式,避免不必要的系统开销,而对底层的硬件直接进行处理。这样,可以节省资源提高利用率。当然,这样也会人为地增加系统开发设计的难度。但是从长远的角度看,进行这样的设计思考还是非常必要的。现在一些产品的设计开发中,所缺少的实际上就是深入了解底层操作,这样往往使我们丢失了创新的机会。 本文主要分析如何在硬件基础上直接进行程序设计,介绍如何在底层进行HDLC通信控制操作,以及如何处理数据结构等方面的问题。对于进行驱动程序的设计以及进行系统设计,都提供了良好的借鉴。 1 S3C4510B以及HDLC模块 S3C4510B是三星公司生产的以ARM(Advanced RISC Machines)16/32BITs的RISC ARM7TDMI微处理器为内核的一种网络微控制器(NETMCU,Networking MCU),主要用于网络产品(如MUB、Router、HomePNA、SOHO)的开发设计。这款MCU在ARM7TDMI处理器的基础上,外加2个通道的HDLC控制器、I2C总线和2个通道串行接口、1个MAC控制模块以及统一的MII界面,提供10MHz/100MHz以太网的自适应连接。对于网络产品的设计提供了灵活的支持。 在软件开发设计方面,NetMCU使用的是ARM7TDMI处理器内核,所以支持ARM的开发工具(如WindRiver的Tornado、ARM的ARMstd251等)都对其适用,方便用户开发设计,最大限度地获得支持资源。 1.1 S3C4510B中的HDLC模块 S3C4510B的HDLC(High-level Digital Link Controller)控制器拥有2个串行通道。HDLC模块支持符合SDLC标准和HDLC标准的CPU/数据通道接口,包含2个DMA引警;支持使用对应帧的缓冲区描述符结构,而且可以灵活地配置通道物理编码模式(NRZ,FM,MAN),选择本地或者外部时钟;支持通过锁相环路从接收数据流提取时钟信号。使用的HDLC的帧结构如表1所列。

热门搜索:PDUMV20 PS240406 SPS-615-HG 2839211 TLM815NS SS480806 2320306 602-15 SS3612 2838733 2839648 ADS1013IDGSR PS3612RA TLM609NS B40-8000-PCB PS361206 SS7415-15 TLP712B 2320335 TLP1008TEL PSF3612 LED12-C2 2818135 02B0500JF BTA12-800TWRG
COPYRIGHT:(1998-2010) IC72 达普IC芯片交易网
客户服务:service@IC72.com 库存上载:IC72@IC72.com
(北京)联系方式: 在线QQ咨询:点击这里给我发消息 联系电话:010-82614113 传真:010-82614123
京ICP备06008810号-21 京公网安备 11010802032910 号 企业资质