其中,R3=R4=2R2,当VIN>0V时,则运放A为跟随器,其输出VHALF等于VIN/2,而运放B作用为一个减法器,其输出电压VOUT = VIN。当VIN<=0V时,则VHALF = 0V,此时电路是一个单位增益反相器,输出VOUT = -VIN,时相关系如图8所示。
(2) 双极性控制电路:用于控制单极性信号的偶次周期时间间隔内得到反极性的电流输出,实现单极性信号的双极性输出。采用了单片机MSP430产生的极性相反的一组脉冲和三极管来控制输出极性的转换。三极管工作在开关状态,通过脉冲信号控制不同组合三极管的导通和关闭来实现负载上电流的流向,从而实现极性的控制,其原理如图4所示。
图9 双极性控制原理
当开关K1和K4闭合,并且K2和K3断开时,负载RL上的电流方向由左向右;而当开关K2和K3闭合,并且K1和K4断开时,负载RL上的电流方向由右向左,实现了单极性信号在负载上的双极性输出。
(3) 恒流源输出电路:实现输出幅度的控制以及恒定电流输出,输出电流不受负载变动的影响。电路由轨到轨单电源运算放大器MCP6004、CMOS管、电源以及刺激电极(即负载RL)组成,如图10所示。
图10 压控恒流输出电路
供电电压足够高时,输出电流的幅度由输入电压与电阻RL的比值来决定,而与输出的负载无关。
3、系统软件设计
软件程序包括主程序和时钟中断程序,程序流程如图11、12所示。主程序进行变量初始化、片内(D/A、液晶驱动、TimerA)模块以及端口的初始化,然后打开总中断进入低功耗模式。时钟中断程序用于监测治疗时间,并根据刺激参数产生特定频率、幅度的随机信号和外围电路控制信号,完成刺激信号的合成和输出控制。
图11 主程序流程 图12 时钟中断流程
4、结果
通过修改MSP430单片机FLASH中下载的调幅信号波形数据,而无需改变任何软件和硬件结构,无极性恒流电刺激器就可以输出各种的不同信号调幅的无极性指数脉冲,如随机信号调幅的无极性指数脉冲,图13所示。
图13 随机信号调幅的无极性指数脉冲
5、结论
无极性恒流电刺激器采用了MSP430微控制器,可以根据需要输出各种信号调幅的无极性指数脉冲,而无需更改软件和硬件结构,具有灵活性好、输出电流不受负载阻抗变化、安全可靠的特点; 另外,设计结合了便携式设计方法,采用体积贴装芯片, 也无需外接D/A转换器件、液晶驱动模块等,减小了整机的体积,提高了整机的性价比。