以经典和现代控制理论与数字信 处理器DSP技术与嵌入式技术相结合的微机励磁调节器,在计算速度、抗电磁干扰、可靠性等方面有了极大的改进。
前言
励磁系统是发电机组重要的辅助装置,它对发电厂的自动化、发电机组运行的可靠性有着重要作用。随着科学技术发展,励磁方式已从直流电机励磁系统发展到可控硅励磁,自动调节器从原来的模拟式发展到微机数字式。
1.励磁调节器的组成原理
图二 ARM+DSP嵌入式硬件图
2.2 嵌入式操作系统选择
在ARM 芯片上可以实现多种操作系统的移植,比如Window-CE、VXWorks等,由于Linux具有以下特点: 1)开放的源码,丰富的软件资源;2)内核功能强大,性能高效、稳定,多任务易于裁减; 3)完善的 络通信、图形、文件管理机制;4)支持大量的周边硬件设备; 5) 价格低廉可以有效降低产品成本。基于开发成本考虑,最后选用了ARM-Linux系统。
2.3 ARM 与 DSP连接
HPI是一个并行串口,ARM通过它可以之间访问DSP存储空间以及地址映射道存储空间的外围设备。HPI主要由地址寄存器HPIA,数据寄存器HPID,以及控制寄存器HPIC组成,ARM先通过对控制寄存器和地址寄存器设置,然后根据控制信 进行对数据寄存器读写操作。ARM处理器在与HPI的读/写前,首先要完成自身工作模式等一系列初始化,其源代码如下:
SYSCFG=0xeTffe22;/*关掉ARM中Cache*/
EXTDBWTH=0K0ffff556; /*使外部I/O接口工作于32位模式*/
EXTAC0NO=0x08610000/*配置外部I/O接口各读写时序关系*/
这段代码通过对寄存器的操作,配置好ARM处理器工作模式后,对外部I/O接口就可以进行读写,从而完成对HPI接口的相应操作了。HPI接口可以用I/O端口方式,也可以用I/O存取方式。系统平台采用I/O存取方式,将HPI访问地址寄存器HPIA、数据寄存器HPID、控制寄存器HPIC映射到内存物理地址为0x3fd40000开始的空间,通过访问存储器指令对HPI进行操作。
HPI物理地址定义如下:
#define HPI-Base Ox3fd40000
#define Vpint /* volatile unsigned int */
#define HPICW (Vpint(HPI-Base +0x00))
#define HPICR (Vpint(HPI-Base +0x40)) /* 定义HPIC寄存器 */
#define HPIAW (Vpint(HPI-Base +0x10))
#define HPIAR (Vpint(HPI-Base +0x50)) /* 定义HPIA寄存器 */
#define HPIDW (Vpint(HPI-Base +0x20))
#define HPIDR (Vpint(HPI-Base +0x60)) /* 定义HPID寄存器 */
开始通信时ARM向DSP发送命令(如数据采集),通过HPI口中断DSP,使DSP进入相应子程序;同时DSP将数据存入缓冲区,一帧长度为256字节。当ARM向DSP请求数据时,向DSP发送一个帧同步命令字,并同时中断DSP,DSP响应中断将数据送入HPI口RAM,存完一帧数据后DSP向ARM发中断,ARM响应中断,清除该中断把HPI口中数据取出存入RAM中,并送终端显示并循环刷新。 ARM的部分程序流程图如下图所示:

图三 ARM部分程序流程图
HPI读写数据部分代码:
for(i=0 ;i { HPICW=0x00000000; /*初始化HPI口的控制寄存器*/ HPIAW=0x800000000; /*初始化HPI口的地址寄存器*/ hpiBaseAddr[i]=HPIDR; /*通过HPI读出数据,送到数组中暂存*/ CpLen=HPISize; if ( copy_to user (buffer , (_u8*)(&hpi>HpiBaseAddr[j]), CpLen )) return-EFAULT; /*将数据拷贝到用户缓冲区*/ return CpLen } 在开发DSP为内核的控制单元中,大部分代码采用了C语言来编写,利用Ti公司提供的开发环境CCS IDE(Code Composer Studio Integrated Development Environment )进行程序编译、汇编和链接,并对程序进行仿真调试,最后将生成的DSP可执行代码下载到DSP的Flash中。 3.结论及创新点 创新点:(1) 系统用ARM处理器代替单片机,使系统性能得以大大提高; (2) 采用ARM、DSP双核嵌入式系统,充分发挥了ARM和DSP的各自优势;(3)工业级大液晶显示器触摸屏,替代传统LCD,友好人机界面易学易用。 文章知识点与官方知识档案匹配,可进一步学习相关知识CS入门技能树Linux入门初识Linux24992 人正在系统学习中 声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!