线性CCD调试助手是拉普兰德电子技术配合其TSL1401线性CCD模块开发的上位机调试软件。该软件可以显示当前模块采集到的线阵数据,并以曲线图、灰度图、二值化图显示在电脑界面上。该软件具有良好的人际交互界面,非常容易上手使用,其良好的人性化设计是开发人员调试程序的首选。
【软件界面介绍】
1. 选择串口号、波特率、打开/关闭串口、刷新串口号
这些都是串口的常用操作,其中串口下拉列表只显示系统存在的COM,方便用户选取;刷新串口按钮的作用是重新扫描计算机当前的串口,这个适合用USB转串口模块的电脑,串口号会随时增加或减少,按此按钮会刷新当前系统存在的COM口。
2. 开始/停止采集、翻转图像
开始/停止采集按钮在串口打开后才有效,只有点击开始采集,软件才正式开始采集串口数据并显示图像;翻转图像选择框,用来决定显示的图像是否为水平翻转,因为考虑到不同线性CCD模块的采集起始位置可能不同,加入则功能可以便于图像方向的正常显示。
3. 采集设置组
阈值:用来设置二值化的临界值,大于此阈值的像素为白线、反之为黑线。
AD精度:下位机上传的像素数据的范围,N位精度最大值为2^N次方,默认为8位精度数据,串口每次传输1个字节。(正式版开放设置)
点阵宽度:即显示的最大线阵宽度,这里默认128,显示全部线阵数据。(正式版开放设置)
换行符:上一节提到的换行字节,这里默认为0xFF。(正式版开放设置)
4. 相关参数显示
测试版仅5个参数,具体含义见字面意义。
5. 串口数据发送
可以选择16进制发送或者直接发送字符串到以打开的串口,这个功能方便向下位机发送自定义命令。
6. 灰度值像素显示
显示点阵宽度中指定的像素数的灰度值,像素数值越小图像越暗。
7. 二值化像素显示
根据与阈值对比,将二值化的像素显示出来。
8. 数据线示波器
以虚拟示波器的形式显示当前线阵数据的波形,有时候波形更能直观的反应图像信息。
【软件使用流程】
1. 运行下位机,确保单片机串口已经连接至电脑。
2. 选择相应的串口,设置好波特率,打开串口。
3. 点击开始采集,此时图像应该已经显示在界面上。
4. 如果显示的方向和测试方向相反,可以勾选“反相图像”。
5. 调节阈值到合适水平,以正确显示黑线位置。
【下位机端数据格式】
下位机通过串口将数据发送到线性CCD调试助手,其发送的数据必须是16进制的形式。由于TSL1401最大每行采集128个像素点,因此单片机的下位机程序必须连续发送128个字节数据(此时默认1个字节代表一个像素数据,即AD采样精度为8位,最大值255)。
每行数据发送完毕必须再发送一个分割字节(换行符),以告知调试助手该行发送完毕。本软件目前默认以0xFF代表结束字节,如果下位机采集到了值为0xFF的点,为了防止与结束字节混淆,务必将该值改为其他值,例如改为0xFE。
串口发送的数据示意:
49 3B 33 2D 2E 2E 2D 2D 2D 2D 2D 2E 2E 2E 2E 2F 30 35 30 35 35 A6 A8 8F 80 5A 40
44 44 7D A8 A8 A8 A8 A8 A8 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9
A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 95 71 4F 53 45 5E A8 A8 A8 A8 A8 A9 A9
A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9
A9 A9 A9 A9 A9 A9 A9 A9 95 78 59 48 44 38 49 84 7B 72 53 40 FF 35 35 2D 2D 2E 2D
2E 2D 2E 2E 2E 2E 2F 2E 2E 2F 30 35 35 35 35 A5 A8 8F 83 60 49 44 43 75 A8 A8 A8
A8 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9
A9 A9 A9 A9 A9 A9 A9 A9 95 71 4F 50 4A 5D A7 A8 A8 A8 A8 A8 A9 A9 A9 A9 A9 A9 A9
A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9 A9
A9 A9 96 6F 54 40 3C 36 53 83 73 6A 53 40 FF
以上共129个字节,前128个为有效像素值,最后1个为换行符。