仪器驱动心得
这两周左右的时间,做了一个仪器的驱动,想闲聊几句
1.与上一个仪器不同,这一个仪器不是打包好的接口让我调用,而是传统的 指令->串口->接收数据模式
2.与之前的仪器不同的是这个仪器专用串口转TTL、专用串口转RS232,对树莓派引脚的使用、对PC 使用USB转串口 对5V电源稳压供电 有了进一步的要求。
针对以上两个软硬件问题我积累了以下各个经验;
1.串口读取过程简介 串口工具调用函数readall();分100次读取,直接判断QBytesarray是否contain “nak” “ack” ,结束循环
2.串口发送与读取之间 要等待100-500ms
3.发送可用位数判断
4.解压数据就是根据串口端接收数据格式处理数据,关键QBytesarray到十进制 16进制到十进制 ascii码 他们之间的互相转换
5.树莓派5V 5V GND TXD RXD 指的是外侧,注意树莓派 5V 可能带不动 仪器 需要转换电路板带动这是这次问题的关键 现象是正确的峰存在但很小,托在在很大的杂峰上
6.这次光谱仪关键也出现在参数问题、普通参数设置一定出不来图,必须设很大2000 2000,所以用普通正常参数不可能成功****现象是 峰很平缓(正常值),叠加上一个现象峰杂乱无章、多变、无规则、随功率非规律变化
7.这次测试焦距也有影响,焦距会影响数据正确性
8.这次刚开始读串口的时候,只出现第一次数据 之后为空 可能跟串口没有close 、 串口无意被其他 线程 占用串口tty0有关**