一种基于DSP的张力、深度、速度测量系统
4.5 中文图文液晶显示模块OCMJ4X8C
OCMJ4X8C为具有串/并接口且内部含有中文字库的液晶显示模块,具有较强的控制显示功能;液晶显示点阵为128 64,可显示4行,每行8个汉字;具有2Mbits的中文字型CGROM,该字型ROM中含有8192个16 16点阵中文字型库,可方便地显示汉字;具有16kbit的16 8点阵的ASCⅡ字符库,可可方便地显示英文字符和其他常用字符;提供了一个64 256点的GDRM绘图区域,可方便地构造图形;提供了4组16 16点阵的造字空间,可方便地造文字;能实现汉字、ASCⅡ码 、点阵图形、自选字形的同屏显示。
通过采用此液晶显示模块,实现了友好的中文图形及数字人机界面。
4.6 微型汉字打印机
本系统采用MP-A(D)16-8型打印机,该打印机带有2k字节的数据缓冲区及汉字字库,具有较快的打印汉字和图形的速度;具有丰富的文字修饰功能和方便的接口;带有16 16点阵与12 12点阵及国标一二级汉字库;可方便地打印汉字和德文、法文、英文、日文等文字;可打印全部ASCⅡ字符、数学符号、专用符号、自选符号、点阵曲线及条码等;能同行打印16 16、12 12、8 16、16 8、8 8、6 12点阵汉字或5 7、6 8、8 12、8 16点阵ASCⅡ字符。
5 系统软件设计
5.1 主流程介绍
程序流程见图2,本流程为系统的主流程。程序由汇编语言编程,采用模块化程序设计,调用某一模块时执行其相应的功能,便于修改和维护。设置两个检测单元,主循环中检测此单元的内容是否发生变化,若有变化,说明系统有异常,重新进行初始化设置。软件中,采用冗余技术及看门狗技术,确保程序正确执行。外部中断1完成键盘管理任务,当有键按下时,申请外部中断1中断,执行键盘监控程序;深度脉冲经整形后输入到外部中断0,进行脉冲记数。此时,由I/O口判断辨向脉冲的电平。规定低电平时编码器为正转,高电平时编码器为反转。正转时执行加法程序,反转时执行减法程序。张力信号经V/F变换后,转换为频率信号送入计数器1,完成张力信号的计算。定时器0产生系统的时钟信号 ,设定其为最高中断优先级。
图2 软件实现主流程
图3 键盘管理流程1
图4 键盘管理流程2
图5 键盘管理流程3
图6 键盘管理流程4
5.2 键盘监控流程介绍
图3~图7为系统键盘管理流程图,键盘管理芯片为8279,由外部中断1完成键盘操作程序。该系统共有16个键,6个功能键,10 个数字键。其中,每个功能键均为双功能复合键,各键分别为:K1/K2;角度/打印、记录模式;张力报警/张力增量报警;深度报警/即时深度;当量/速度报警;清零/恢复。K1/K2键为系统的入口键,只有先按此键,才能进入键盘操作,其键值为28H,由标志位K的值来判断是上档键功能还是下档键功能。位K为1时为上档键功能,位K为0时为下档键功能,系统初始化时标志位K清零。 K1模式为上档键功能,对应角度、张力报警、深度报警、当量及清零,键值分别为29H、30H、31H、38H及39H。K2模式为下档键功能,对应打印及记录模式、张力增量报警、即时深度、速度报警及恢复, 键值分别为39H、40H、41H、48H及49H。反复按压K1/K2键,键盘功能在K1模式及K2模式之间来回切换。数字键1、2、3、4、5、6、7、8、9及0的键值分别为01H、09H、11H、19H、21H、00H、08H、10H、18H及20H。键盘中断程序流程见图3~图7。
图7 键盘管理流程5
5.3 深度脉冲采样及张力信号采样流程介绍
由编码器产生的两路正交脉冲信号经CPLD处理后产生辨向脉冲及计数脉冲,分别输入到TMS320VC33处理器的I/O口和外部中断0,完成对编码器旋转方向的判别和对深度脉冲的累计,见图8。
图8 外部中断0中断服务程序流程
定时器0作为系统的公共时钟,产生张力A/D时钟及速度采样时钟。记数器1记录由张力模拟信号经A/D转换后产生的数字信号。定时器0的初始值对应的时间为A/D转换器的采样时间,该定时器启动后做减计数,减为0后产生中断信号。系统转入中断服务子程序,定时器0重新赋予初值,读取记数器1的数值到数据缓冲区,见图9。
图9 定时器T0 中断服务程序
6 结束语
该测量系统经过多次现场使用,测量准确、工作稳定。能可靠地记录下24小时以内的实时测量数据,顺利实现"黑匣子"功能,为用户查找事故原因提供了可靠依据,受到用户的好评。
参考文献
[1]苏涛主编,《DSP使用技术》,西安电子科技大学出版社
[2]曾繁泰主编,《VHDL程序设计》, 清华大学出版社
[3]宋万杰主编,《CPLD技术及其应用》,西安电子科技大学出版社
[4]杨振江主编,《A/D、D/A转换器接口技术实用线路》,西安电子科技大学出版社
应变传感器 光电编码器 DSP CPLD I2C总线 相关文章:
- WinCE下光电编码器的驱动程序设计(04-12)
- 基于MSP430F149单片机的光电编码器位置检测系统方案(02-07)
- 在采用FPGA设计DSP系统中仿真的重要性 (06-21)
- 基于 DSP Builder的FIR滤波器的设计与实现(06-21)
- 达芬奇数字媒体片上系统的架构和Linux启动过程(06-02)
- FPGA的DSP性能揭秘(06-16)