APP下载

基于52单片机的CCD驱动程序和电路设计

2017-06-29王改芳吴有才

实验技术与管理 2017年5期
关键词:驱动程序字节稳态

王改芳, 吴有才

(中国地质大学(武汉) 信息技术教学实验中心, 湖北 武汉 430074)

基于52单片机的CCD驱动程序和电路设计

王改芳, 吴有才

(中国地质大学(武汉) 信息技术教学实验中心, 湖北 武汉 430074)

根据单片机与光电检测课程实验的需要,开展实用性项目设计及启发式教学。继完成“基于51单片机的CCD驱动程序和电路设计”后,升级到由52单片机来实现,且复位脉冲ΦRS信号改由其他硬件产生。因为52单片机内存更大,从而有条件避免程序中的转移指令,减少周期内的指令数量,使得产生的驱动信号更为准确,频率更快,效果更好。

CCD驱动程序; 52单片机; 电路设计; 实践教学

1 CCD驱动脉冲

电荷耦合器件(charge-coupled device,CCD)常作为图像传感器的转换器件,其驱动脉冲包括两个阶段(图1中以虚线为界):前一阶段是光电转移用的光积分脉冲,后一阶段是自扫描用的转移脉冲。CCD的驱动脉冲由5种逻辑信号组成:Φp是为光敏栅施加的光积分脉冲;ΦSH为转移脉冲;ΦRS为复位脉冲;Φ1和Φ2为双相转移脉冲,Φ1和Φ2二者交替变化,在时间上相差π。因为ΦP由CCD片内提供,实际上驱动CCD只需要ΦSH、Φ1、Φ2和ΦRS4个信号[1-3]。CCD要求一个ΦSH周期中至少有1 118个Φ1脉冲,即TSH>1 118TΦ1。ΦRS信号边沿应对准实线位置,为简化编程先按虚线位置处理,然后用硬件延时校正[4-7]。

笔者曾带领学生完成了基于51单片机的CCD电路和驱动程序设计[4],由于51单片机的片内程序存储器只有4 KB,故必须使用转移指令,并加入一些空指令(NOP),从而减慢了驱动信号的频率[8]。于是考虑再采用片内程序存储器空间更大(达8 KB)的52单片机来实现。由于RS信号(复位信号)在光积分和自扫描两种状态下的输出波形没有改变,所以考虑用硬件来产生它,这样就只需要单片机产生3个驱动信号,因而精化了指令,提高了CCD的驱动信号频率。

图1 CCD驱动脉冲信号时序图

2 驱动程序设计

2.1 光积分脉冲信号的产生

光积分阶段(AB段)驱动信号示意图见图2。其中P1.2输出ΦSH信号,P1.1 输出Φ1信号,P1.0输出Φ2信号。给图2中所示的各点赋值见表1。

图2 光积分驱动脉冲信号示意图

点号二进制值十六进制值点10010B02H点20110B06H点30010B02H

所以光积分阶段(AB段)程序如下(设一个机器周期为1 TM,即1 μs):

MOV P1,#02H 2字节 2TM MOV P1,#06H 2字节 2TM MOV P1,#02H 2字节 2TM

2.2 转移脉冲信号的产生

在自扫描期间产生转移脉冲信号。此段驱动信号重复变化,故取一个变化周期(设为CD段),见图3。据图3给各点的赋值见表2。

图3 转移脉冲信号示意图

点号二进制值十六进制值点10001B01H点20010B02H

故自扫描阶段(CD段)程序如下:

MOV A,#01H 2字节 1TM MOV P1,A 2字节 1TM INC P1 2字节 1TM

其中,指令MOV A,#01H起到赋初值的作用,只在开始出现一次。其后两条指令为一个程序单元,周期性循环。明显看到单片机的输出信号大为简化,自扫描阶段的Φ1和Φ2信号一个周期输出的信号赋值仅为2次(文献[4]为4次),而且两信号值正好相邻,便于程序中的赋值。CCD要求后两条指令组成的程序单元至少循环1 118次。因为CCD输出周期至少为2 236个像元,而CD段可以输出2个像元,所以整个程序里至少需要1 118个程序单元。因为Φ1(或Φ2)的一个程序单元内用两条时间为1TM的指令,所以Φ1(或Φ2)周期为2 μs,频率为0.5 MHz,正好满足双相转移脉冲Φ1和Φ2的标准频率。

此处的循环如果用转移指令,因为一个转移指令的工作周期为2 TM,则会造成驱动信号的某些延时,使得驱动信号不对称、输出不稳定。但是如果不用转移指令,而是重复程序单元至少1 118次,则积分过程至少需要1 118×(2+2)=4 472字节。51单片机的片内程序寄存器为4 KB,即4096字节,装不下重复程序单元,不得不采用转移指令,然后又不得不加入一些空指令,因而降低了频率[4]。反之,52单片机片内程序存储器为8 KB字节,足够存储以上程序。52单片机的硬件电路和文献[4]的51单片机相近,只是仅用了单片机的P1.2—P1.0 3个端口,分别输出ΦSH、Φ1和Φ2这3个信号,而ΦRS信号由硬件产生。

3 RS信号的产生

3.1 最初的思路——利用单片机的ALE信号产生RS信号

ALE是地址锁存使能输出端,当CPU访问外部存储器时,ALE的输出作为外部锁存地址的低位字节的控制信号;当不访问外部存储器时,ALE端仍以1/6时钟脉冲频率固定地输出正脉冲,因此,它可用作对外输出的时钟或用于定时[1,9]。本项目没有外接任何存储器,所以ALE信号输出是稳定的方波信号。单片机的晶振为12 MHz,则ALE信号的频率为2 MHz。由于需要的是1 MHz的复位信号,所以想到用ALE信号二分频产生RS信号。分频器示意图见图4。

图4 分频器示意图

由于ALE信号不能经过分频,又设想是否可以用6 MHz晶振驱动另一片相同单片机以产生1 MHz的ALE信号,并加以利用。但经讨论后知两片不同的单片机产生的ALE信号之间的相位差为随机数,很难使得该信号和其他信号的时序吻合,故此想法也行不通。

3.2 可行的方法——利用单稳态触发器和微分电路产生RS信号

3.2.1 单稳态触发器实现延时

先对Φ1和Φ2作延时处理,再利用处理结果产生RS信号。相对于文献[4],这里采用另一种方法,即使用单稳态触发器。

(1) 单稳态触发器原理[2]:未加触发信号时,电路处于稳态(低电平);外加触发信号时,电路由稳态翻转到暂稳态(高电平);电容充电,电路由暂稳态自动返回至稳态。

输出脉冲宽度也就是暂稳态的维持时间:

tw≈0.7RC

(1)

因此可以根据需要确定R、C的值,以此得到需要的暂稳态时间。

图5 单稳态触发器延时波形示意图

通过计算,选用适当的R、C以获得理想的信号。对于第一次触发,因为Φ1周期为2 μs,可以设定Vi暂稳态时间tw为0.7μs,由式(1)得:0.7RC= 0.7 μs,所以可以选用R=2 kΩ、C=500 pF。

对于第二次触发,则要设定暂稳态时间为1 μs,由式(1)得:0.7RC=1 μs,所以可以选用R=2.853 2 kΩ、C=500 pF。

3.2.2 微分电路产生RS信号

观察图1可知,RS信号和Φ1及Φ2的跳沿紧密相关。微分电路就是将阶跃信号的跳沿转换为尖脉冲,所以可以对Φ1和Φ2微分后再进行处理,得出RS信号[3,10]。RS信号产生电路及波形见图6。图中Vo为径RC微分电路的输出信号,Voi为径二极管D限幅后的正脉冲。

图6 RS信号产生电路及波形

RC微分电路必须满足电路时间常数RC≪T/2,T为输入信号的周期[11]。输出电压Vs与输入电压Vo的关系为

(2)

当输入电压为阶跃信号时,考虑到信号源总存在内阻,在t=0时,输出电压为一个有限值,随着电容器C的充电,输出电压Vo将逐渐地衰减,最后趋近于零。方波电压Φ1经由微分电路,输出电压是一系列的正、负相间的尖顶脉冲。然后因二极管的单向导电作用,负载上就只剩下正向的尖顶脉冲,其时间间隔等于输入波的周期T[12]。

因为R、C必须满足RC≪T/2,T=2 μs,所以RC≪1 μs。同时,如果电容越小,容抗越大,其分压也越大,导致输出信号(即电阻R上的分压)过小[13]。所以, “≪”并不是一定小很多倍数量级,只要5~10倍即可。经实验电容选到500 pF,电阻选到300 Ω左右比较合适。

Φ2经过同样的电路后所得波形与最后Φ1输出波形相或,得到信号ΦRS见图7。

图7 信号时序图

4 结语

用示波器测得单片机P1口输出的波形与图7相符,证实Φ1和Φ2信号频率为0.5 MHz,等于CCD的标准驱动频率,CCD工作良好。相比文献[1],本文设计方案程序较长,占用存储空间较大,需要通过硬件产生RS信号,制作成本有所提高,适用于对反应时间、检测质量要求较高的场合。本设计完成的同时,提高了学生分析问题、解决问题的能力。

References)

[1] 刘军. 基于神经网络的智能温度仪表的研制[D]. 武汉:武汉理工大学, 2006.

[2] 边靖洲. 试论单稳态触发器工作原理及其在工程中的基本应用[J]. 现代制造, 2012(15):34-35.

[3] 冷小伟, 屠华. RC电路获取尖脉冲信号的研究[J]. 科技视界, 2012(29):288-289.

[4] 王改芳, 杨正祥. 基于51单片机的CCD驱动程序和电路设计[J]. 实验技术与管理, 2016,33(9):137-139.

[5] 张智辉,田地,杨义先.线阵CCD驱动电路设计的几种方法[J].仪表技术与传感器,2004(6):32-33.

[6] 李景林.CCD驱动方式的比较[J].微计算机信息,2010,26(2):192-193.

[7] 牟冰, 张爱军, 李冬萍,等. CCD器件与光学仪器配接的物像关系及相关技术[J]. 实验技术与管理, 2006, 23(9):32-34.

[8] 张化朋.用单片机驱动线阵CCD的探讨[J].光学技术,2000,26(4):342-347.

[9] 朱玲. 焊接专家系统及其实时控制研究[D]. 南京:河海大学, 2006.

[10] 吴迪. MCS-51单片机典型复位电路原理分析[J]. 辽宁师专学报(自然科学版), 2015, 17(1):18-20.

[11] 王亚飞, 陈迎潮, 杨曙辉,等. 利用微分电路减小PCB上串扰的方法[J]. 华南理工大学学报(自然科学版), 2012, 40(8):20-25.

[12] 孙振涛. 基于单片机及FPGA的时统测试系统设计与实现[J]. 工业控制计算机, 2016, 29(4):147-149.

[13] 杨雅涵, 于佐军. 基于单片机的温控光控智能窗帘设计[J]. 控制工程, 2016, 23(10):1542-1545.

Design of CCD driver and its circuit based on 52 single chip microcomputer

Wang Gaifang, Wu Youcai

(Experimental Teaching Center for Information Technology, China University of Geoscience, Wuhan 430074, China)

According to the experimental requirements of Single Chip Microcomputer and Photoelectric Detection course, the practical project design and heuristic teaching are carried out. Following the completion of the design of CCD driver and its circuit based on 51 single chip microcomputer, it upgrades to the 52 single chip microcomputer to realize the project design and the reset pulseΦRSsignal is generated by another hardware. As the 52 single chip microcomputer has a greater memory, it has the conditions to avoid the transfer instructions in the program and reduce the number of instructions in the cycle so that the driving signal is more accurate, the frequency is faster, and the effect is better.

CCD driver; 52 single chip microcomputer; circuit design; practical teaching

10.16791/j.cnki.sjg.2017.05.016

2016-11-28

湖北省教育厅科学研究项目(Q20106401);全国交通运输职业教育教学指导委员会2015年交通运输职业教育科研项目(2015B44)

王改芳(1975—),女,山西阳泉,在读博士研究生,讲师,主要研究方向为软件工程、数据处理和实验教学.

E-mail:bingfeng71@126.com

TN386.5

A

1002-4956(2017)5-0060-04

猜你喜欢

驱动程序字节稳态
可变速抽水蓄能机组稳态运行特性研究
碳化硅复合包壳稳态应力与失效概率分析
No.8 字节跳动将推出独立出口电商APP
电厂热力系统稳态仿真软件开发
元中期历史剧对社会稳态的皈依与维护
No.10 “字节跳动手机”要来了?
简谈MC7字节码
人类进入“泽它时代”
驱动程序更新与推荐
驱动程序更新与推荐