首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

基于单片机的线阵CCD驱动及采集系统的设计(2)

基于单片机的线阵CCD驱动及采集系统的设计(2)

2 硬件电路设计
如图2所示,CCD的驱动需要发送包括SH、φ1、φ2、RS等4个驱动脉冲,其中RS的频率范围是0.02MHz到2MHz,典型值是1MHz。这种高频率的脉冲,对单片机来说,难以独立完成,所以本系统选用了一定的数字电路进行辅助设计。同时由于C8051F020单片机的A/D转换最高值为500kHz,而CCD发送模拟信号的频率(即OS的频率)与RS相同,所以RS的频率亦选为500kHz。
具体方案是用单片机自带的PCA模块发送稳定的1MHz的方波脉冲,然后通过D触发器(74HC74芯片)进行2次分频,获得5V、0.5MHz和0.25M Hz的方波脉冲(两种频率都各有两路电平总是相反的脉冲),其中0.5MHz脉冲作为RS驱动脉冲,0.25MHz的两路脉冲分别作为φ1和φ2的脉冲。同时用定时器2检测RS,进行计数,确定SH的积分时间,发送符合要求的SH脉冲,同时SH的脉冲需要一个反相器,进行电平转换(3V~5V),和发送D触发器的控制脉冲。对于DOS的采集,本系统选用的是用OP27搭建的减法器和跟随器进行采集。
CCD的脉冲控制和信号A/D转换工作主要由C8051F020单片机完成。如前所述,TX0和RX0配置在P0.O和P0.1,进行RS232通讯;由P0.2口(PCA)发送1 MHz的稳定方波脉冲;P0.3(T2)进行RS (0.5 M Hz)的计数;A/D转换触发控制位(CNVSTR)连入引脚P0.4;P0.5通过定时器2控制,发送SH脉冲;P1.1为模拟输入口,接收模拟信号。
3 人机交互界面软件设计
本系统的软件设计包括C8051微控制器的应用程序和人机交互界面的Labview应用程序。

C8051微控制器的程序流程图如图3所示,配合硬件设置好PCA、ADC等功能的初始化后,直至接收计算机发送的信息,便开始读取CCD的数据,并存储到XDATA空间当中。结束一周期的数据的采集则关闭A/D转换,并判断计算机发送的信息里要求发送整个波形还是进行位置判断(本设计还包括一个判断极值的功能,为位置传感留下了接口),若是前者,则将所有的数据发送到串口的缓存中;若是后者,则判断山转换数据的最大值,再将最大值的位置信启、发送至串口,进行完一系列的过程后,则重新开始采集,依此循环。

Labview采用图形化的G语言进行编程,完成人机交互界面软件的功能。该软件可以实现整个波形图和位置信息的实时采集,历史数据的保存和读取,以及整个系统的开始、停止和复位等控制。图4是Labview的程序框图。
4 实验结果
4.1 电路板实物图
本方案已经完全实现,经测试,效果良好,可满足基本的科研检测或演示教学任务,以下是已经制板成功的电路板。

4.2 单缝衍射测试

当光经过细小的单缝,缝宽和光源的波长相当的时候,会产生明显的衍射现象,即光会改变直线传播,并按照一定的规律进行传播。理想状况下的单缝衍射,光屏会出现特定的光谱,中间条纹最亮,向两边逐渐减弱,同时会出现完全没有光的暗纹。图6即测试图样,上半部分是采集的电压值经定标后对应的光强波形图,与理论完全一致;下半部分是利用Labview的二维光强控件对真实情况的模拟,与肉眼观察的图样一致。

5 结束语
本文提供了一套完整的用单片机驱动采集CCD信号的方案,对软硬件都做了详细的介绍。其新颖之处是通过不占用内存的PCA配合D触发器和定时计数器完成驱动脉冲的产生。综上所述,C8051f020单片机能完成这项任务在于其支持一个16位的PCA模块,2个12位以上的定时计数器,2k以上的内部数据RAM,一个8位的多种触发方式的高速ADC以及UART串口。任何一个具有同样模拟外设的微控制器都能完成此方案,并且其中PCA模块可以用有源晶振代替,自带的RAM不足,完全可以用外部存储器补充,而8位ADC芯片在市场也很多,大多数单片机也都具备12位以上的定时计数器,所以这个方法完全可以推广应用,是一种普遍适用的应用方案
继承事业,薪火相传
返回列表