1.关于matlab曲线拟合以及根据拟合函数得到任意点的函数值大小
简易方式:将画出来的图,采用tool工具栏的数据游标来观察。
函数方式:ployval(p,xi)对应p函数下的xi点处的值大小。
2.关于仪器设备的序列号
手机序列号,也叫手机“串号”,是国际移动设备身份码(International Mobile Equipment Identity,其缩写为IMEI)的俗称。是由厂商设定的一个ID类似的东西。
厂家申请IMEI码是免费的,但从2009年10月开始,GSM联盟组织授权的中立发证机构――欧洲设备型号认证中心开始对中国手机厂家实施惩罚性收费,只要是中国手机厂家出厂的手机,每个机型的IMEI码的申请费用高达2000美元。------百度出来的,中国受歧视?
3.关于整机程序编写的思路
首先,上位机发送测试关键字AA到下位机,由下位机返回测试机的序列号XXXXX信息,相当于完成了测试通信,
然后,上位机发送命令字1234到下位机开始光强调节,并返回start_P_SW标志1到上位机指示灯,发送光强调节范围的选取值到下位机,1号光源点亮,进行100ms的光子计数,根据该计数值反馈调节的方向和档位。
每调节好一个光源返回一个标志信号以指示灯的形式显示出来,直到8个光源的强度调节完毕,(在调节过程中对于每一个光源,如果出现调节时间长度超过30s仍然没有调节完毕,则返回调节故障,提示用户检查源探是否不处于正常的测量情况下。)
光强调节完毕,按顺序执行下一步的正式测量过程,
正式测量过程包括以下几步:
首先,发送参数:发送命令字1111到下位机,如果下位机接收到该命令,则开始发送测量门宽控制信号到下位机,确定好门宽
发送开始计数命令字2222到下位机,下位机接收到该命令后将startflag置成有效状态,开始计数,由上位机的等待时间决定测量次数的大小,
测量完成或者检测到上位机的停止信号(完成该次测量后再停止),则startflag置成无效状态,检测到有效到无效的状态后,就开始数据的发送
数据发送过程是将FIFO中的数据按顺序读取出来,在上位机中按照8位传输实现。(实时测量数据的显示是通过fifo的边写边读来实现的,这个可以改读写使能信号来实现)
数据传输完成,就显示调节完成信号到上位机,点亮完成调节指示灯。
最终将得到的数据选取并计算,即可得到关心的血氧浓度变化情况(曲线以及对应的图像的显示),这将用于神经系统疾病的诊断,以及对人认知功能的研究。
说起来很简单的样子,但感觉实现起来没那么简单啊。
注意到:调节光源强度和后边的计数都会用到计数器,为节省资源,可采用多次复用实现,而如果要复用计数器的话,就需要对控制计数的门控信号进行处理:
想到的解决方案是将调节光源模块部分放入到信号控制部分里边,再加入一个光源调节控制信号adj_control的情况下
分为两个状态:
1.startflag=1无效&adj_control=0有效,输出的是调节光源强度gateenable和clr
2.startflag=0有效&adj_control=1无效,输出的是开始光子计数的gateenable和clr
所有的参数发送和接收都是在状态机中控制实现的,所以在signalcontrol模块中不涉及到使用串口出现传输数据的问题,也就是说用不到tdata和rdata及其使能信号
另外现有的调节过程实现的代码还需要简化一些。写的太长了。。。。。。。。。。。。。。。。