关键词:刺激器单片机硬件软件
一、概述
生命系统中的神经、肌肉都是可兴奋组织,对于外界一定的刺激会发生反应,这种反应表现为神经冲动、肌肉收缩、血管张弛等等。外周神经刺激器就是用于外科手术麻醉过程中,通过刺激外周神经引起病人的肌肉颤搐来观察肌松药效的一种仪器。如果麻醉不深,用刺激器刺激前臂的尺神经,会引起姆指的内收动作;如果麻醉进入深度,则姆指的内收动作就会消失。外周神经刺激器的刺激脉搏宽是200us,电流强度在10mA--60mA分六档可调,它具有四种不同的工作方式:(1)单刺激(TWH)。刺激周期为1秒,(2)四次成串刺激(TOF)。刺激周期为15秒,(3)双重强直刺激(DBS)。刺激周期为15秒,(4)强直刺激后计数(PTC)。频率为50Hz持续时间5秒,停止3秒后,每秒发出一个单脉冲,共16个。每种工作方式均带指示,且有输出强度指示,输出信号的时间精度由软件控制。本文介绍的外周神经刺激器,采用PIC16C54单片机为核心元件,配合单稳态触发器,运算放大电路和刺激隔离电路等组成刺激系统,以实现刺激器的功能。二、硬件设计PIC16C54单片机是一种8位单片机,它个有体积小,功耗低,内部采用高速CMOS工艺,性能强,体密性高,内带“看门狗”和程序保密位,价格低等特点。外周神经刺激器硬件的原理框图如图1所示。
二、硬件设计PIC16C54单片机是一种8位单片机,它个有体积小,功耗低,内部采用高速CMOS工艺,性能强,体密性高,内带“看门狗”和程序保密位,价格低等特点。外周神经刺激器硬件的原理框图如图1所示。
16C54有两个双向I/O口线,其中A口作为输入,用来检测四种工作方式的按键情况,B口中除了RB0作为输入,用来检测电流强度控制键的按键情况外,其余都用作输出,其中RB2--RB7分别用来控制六档电流强度指示灯点亮和关闭;RB1用于输出脉冲信号,该信号经刺激隔离器,耦合到刺激电极上输出。
16C54的振荡源有四种,晶体振荡(XT),低功耗振荡(LP),高速振荡(HP)及RC振荡,我们这里运用的是4M的晶体振荡。实时时钟计数器RTCC和复位端MCLR均接高电平,处于无效状态,并且也避免了干扰。
三、软件设计
整个程序设计成“模块型”。除了主程序外,查询、点灯、关灯、四种刺激方式、发脉冲等均用子程序编写。
PIC16C54无硬件中断,所以对于刺激方式控制键和电流强度控制键状态的变化采用软件查询方式。又由于振荡电路用4M晶体起振,所以对于一般指令的执行周期为1us,而跳转指令则需要2us,运用这一时间指标,可以编写出延时程序。
为了提高本控制程序的工作效率,笔者采用延时和查询相结合的方法,即在一个脉冲周期中,在发指200us宽度的脉冲后的延时段,执行查询程序,直到延时段结束才中止查询。
与此同时,指示灯也与脉冲同频率地点亮和关闭,只是点灯的时间宽度为20ms,所以,查询延时程序必须在关灯前后分两段编写。这样一来,虽然本程序是采用软件查询方式,但执行起来的反应速度很快,效率很高,经临床应用效果很好。
图2就是本控制程序的主程序流程。
总之,本程序有一个特点,就是整个程序的编制流程考虑得非常周到。如果一个临床医生从来不懂仪器操作,但当他拿到笔者研制的外周神经刺激器后,不看任何说明书,仅从仪器面板上的按键说明,就可轻松自如地操作。这也是笔者在编程过程中所努力的方向。
外周神经刺激器刺激模式齐全,脉宽、频率精度高,工作方式、输出指示明了,操作简便,功耗低,结构小七巧,经三级医院临床试用,已证明具有很好的效果,能直观迅速地判断病人的反应情况,及时指导临床用药
。