新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于μC/OS-II 的激光测距系统设计

基于μC/OS-II 的激光测距系统设计

作者:时间:2014-05-13来源:网络收藏

 

本文引用地址:http://www.eepw.com.cn/article/246744.htm

系统的硬件工作原理是: 该系统主要由本振信号发生器、激光的发射电路和接收电路、混频及滤波电路、处理器与显示电路等部分组成。本振信号发生器可产生两个频率相差1KHz 的正弦信号,通过激光发射电路来调制发射激光的功率,再将发射激光和接收激光分别转换为相应电信号,然后通过混频和滤波放大电路将相位差信息转移到两个低频的信号上,最后由ARM 9 处理器采集这两个低频信号,并且计算出相位差并转换为距离,最后由显示模块显示出来。系统外围电路包括系统时钟、模数转换ADC、外部中断、定时系统、信号捕捉模块(Capture)、脉宽调制输出(PWM)等。

3 系统软件设计

由于本系统软件功能相对复杂,既有输入和输出模块,又要完成测量操作和数据的处理,对速度和实时性要求比较高,为此本文采用了μC/OS-II 实时操作系统。μC/OS-II 是一种简单、高效、源代码公开的实时嵌入式操作系统,μC/OS-II 提供的基本功能包括任务的建立、运行、删除、设置任务优先级、进行任务切换等,并且为任务之间的通信和共享资源的保护提供了事件标志、信号量、互斥信号量、邮箱四种机制。本文采用μC/OS-II 实时系统,充分体现了其简洁、高效的特点。软件设计主要是μC/OS-II 的移植和任务的编写。将操作系统移植到 处理器上,通过μC/OS-II 内核的任务调度,可解决传统嵌入式软件设计中出现的编程复杂、可维护性差以及系统的实时性得不到保证等问题。系统软件包括ARM 的程序设计,基于μC/OS-II 操作系统,选用Keil uVision3 集成开发环境,所有程序代码都采用C 语言来编写,具有较强的可移植性和可读性。

如图3 所示,系统软件由数据的采集、处理、显示等模块组成,这些模块由μC/OS-II 实时操作系统统一调度、运行,这样软件部分就变成了对各个任务模块程序的编写,数据的采集由AD 采集模块来完成,数据的处理由ARM 通信和数据处理模块、DA 转换模块等来完。显示主要是液晶的显示和驱动模块。其中底层驱动包括系统硬件的初始化、UART 接口的数据发送及接收的底层代码,液晶驱动模块包括液晶屏的点、线、汉字等内容显示的实现代码等等。

 

 

4 结束语

本文叙述了相位式激光测距的原理,较为详细地给出了系统的设计方案,并且采用 处理器和引入了嵌入式实时操作系统μC/OS-II.一方面,实时操作系统具有高效的多任务优先级管理、可裁减的内核结构、强大的扩展性和可移植性以及微秒级的中断管理等都更加有利于提高效率,有效的降低了应用程序开发的难度,有利于提高软件开发效率和开发周期的缩短。另一方面,嵌入式技术的应用和 处理器自身的性能给系统提供了优良的硬件条件,这样从整体上提高了测距系统的实时性、稳定性、抗干扰性,具有一定的实用价值。


上一页 1 2 下一页

关键词: ARM9 S3C2440A

评论


相关推荐

技术专区

关闭