简述球磨机负荷检测系统的软件设计
基于嵌入式以太网球磨机负荷检测系统的软件设计主要是指在系统硬件设计的基础上,编写应用程序,在TMS320VC5471处理器上运行,用来控制整个系统的工作。球磨机系统的程序设计主要包括数据采集的控制、 FFT功率谱估计的控制、神经网络的移植、串口、以太网通信的控制及LCD液晶显示的控制等。
系统的初始化:上电复位后,ARM开始从0x00000000H地址空间执行程序,存放在该处地址的指令为中断向量表。该向量表包括八条跳转指令,即:复位指令、未定义指令、软中断指令、预取错误、数据错误、保留、IRQ中断、FIQ中断。 执行的是复位指令,其做一些最基本的设置:
1、设置存储器片选寄存器CS0、CS1、CS2、CS3、CS4
这五个寄存器的位表示意义相同,其中位31-13保留;位12表示当写零等待状态外部存储器时是否需要插入1个等待状态,此处设为0;位11-9表示不同存储器组切换时需插入的空操作周期数,此处插入2个周期;位8表示存储器访问的端机制,此处设为1;位7是写使能位,此处设为1;位6-5表示存储器的宽度,此处设为10,表示存储器字长为32位长;位4-0表示等待状态数,此处设为00111,即7个等待状。所以CS0-CS4五个寄存器的值为0x5c7H。
2、设置API Memory的等待状态、DSP BOOT状态的哑循环及空操作等
3、设置DSP复位状态
复位控制寄存器CLKM_CNTL_RESET的位0表示ARM是否释放DSP复位。程序执行到此处应从复位状态释放DSP,所以设为0。设置完成后,调用一跳转指令(B_c_int00),转到ARM的MAIN函数。ARM的MAIN函数的 一条指令是调用函数dsp_start(),其作用是通知DSPBootloader已经作完了,接着DSP开始从0FF80H地址运行。当然,ARM处理器同时也在运行,两个CPU使用中断机制相互通信。
ARM7在设置DSP的复位状态时,首先将CLKM_CNTL_RESET的DSP_NRESET位置,使DSP保持复位状态。然后,ARM把DSP的Bootloader装载到共享的API中。当装载完DSP的Bootloader后,ARM将复位控制寄存器CLKM_CNTL_RESET的DSP_NRESET位清零,DSP脱离复位状态,获得控制权,并开始运行Bootloader。接着ARM把在DSP上运行的应用程序装载到共享的API Memory中,DSP采用中断机制和ARM相互通信,把应用程序从API Memory读到目的地址运行。