基于NIOS II系统的异步串行通信功能的实现
2011-08-20颜丽莎朱力宏
颜丽莎 朱力宏
(郑州铁路职业技术学院,河南 郑州 450052)
NIOS II系统是Altera公司推出的32位RSIC嵌入式处理器。它具有完善的软件开发套件,包括编译器、集成开发环境、JTAG调试等,设计者能够用Altera Quarter II开发软件的SOPC Builde系统开发工具创建处理器系统,并能够根据需求添加其组件。[1]
通用异步收发器(UART),是嵌入式系统上很常用的一个串行接口,由于其方便、简单、易用等特性,在嵌入式系统中扮演着十分重要的角色。UART通过电平转换可实现RS232、RS485、RS422等工业标准的接口,在相关工业控制通信中应用十分广泛。UART通信主要通过RXD和TXD两条信号线,即可实现全双工串行通信。
在一些应用中,往往需要两三个甚至多个串口,选用现成的MCU方案,显然很难满足需求。由于UART作为一个组件与其相关外设的IP放在SOPC Builder里,可供用户直接调用。因此,基于FPAG芯片的NIOS系统,可根据需求方便地配置出多个,甚至是几十个串口,而且可任意分配引脚。因此,讨论和采用NIOS II系统实现串口通信功能具有重要的实际意义。
在以往的关于基于NIOS II系统串口使用的文章中,往往只针对于寄存器控制等某一细节问题进行讨论。实际使用中,串口的软件控制可以通过HAL系统库、寄存器等几种不同的控制方法实现。其每一种方法又各有优劣,适合于不同的应用场合。本文从NIOS II系统中串口硬件定制入手,重点讨论几种不同软件控制方法的实现及特点,并提供了详细的例程代码,为NIOS II系统的使用开发者提供设计参考。
1 硬件设计
本设计中要实现带NIOS II的FPGA系统与其它系统间的串行通讯,首先要建立硬件连接。……
