论文部分内容阅读
为了满足在不更换遥控器的情况下,能实现对不同品牌不同型号的投影仪及相关设备(如投影幕)的控制,并将投影仪和投影幕的控制集中在一个控制界面中,研究与设计了一款基于ARM的投影仪控制器。本文首先分析了基于ARM的投影仪控制器产品的基本要求,针对要求设计了投影仪控制器系统的总体方案,包括硬件系统、软件系统、客户端软件。硬件系统主要包括有电源电路、复位及时钟电路、调试电路、继电器电路、USB转串口电路、RS232串口电路、薄膜按键面板电路等,本文选用Protel99SE为平台,对各电路进行了设计。系统采用STM32F103R8T6作为主控芯片、FT232RL作为RS232-USB串口转换芯片、MAX232作为电平转换芯片,构建了基于ARM的投影仪控制器的硬件系统。在分析了前后台框架与嵌入式系统的优缺点后,本系统提出了一种新型的编程框架——链表式模块化编程框架,该编程框架汲取了两者的优点,克服了其缺点。它包括有主任务链表、信号响应链表、定时任务链表、薄膜按键面板功能模块、用户串口控制命令。各链表之间耦合度低,维护方便。软件系统以嵌入式C语言(KEILMDK)为开发平台,设计出了软件系统的主任务模块执行过程图、信号响应链表模块执行过程图、定时任务链表模块执行图以及薄膜按键面板功能模块执行图,开发出了主任务链表程序、信号响应链表程序、定时任务链表程序、薄膜按键面板功能模块程序以及用户串口控制命令程序,编写了软件系统的主程序、子程序和软件的整体程序等代码。为了满足客户实现不同品牌的投影仪统一控制的要求,为本系统开发了一款客户端软件,选用Java作为开发语言,采用Eclipse作为开发平台,选用SWT为软件提供相关控件。最后成功地完成了系统的硬件调试、软件调试、软硬件联合调试,并介绍了具体的调试方法及过程。本项目设计的基于ARM的投影仪控制器,能够根据用户需求来实现对不同品牌不同型号的投影仪的控制,达到了设计的要求,实现了预期的目标。