2024年07月03日

微电脑催眠器

2004 年 2 月 4 日
 

  一、特点和用途
  1?利用单片机控制,体积小,功耗低;2?用电池供电,使用方便。
  本报曾在1998年第33期和1999年第14期登载了两种国外的生物反馈心态调节器,引起读者的极大兴趣。人的大脑在不同的精神状态发射出不同的脑电波,根据生物反馈原理,利用人为制造的类似脑波的δ、θ、α、β波,通过声、光或磁场对大脑进行刺激诱导,改变大脑的活动状态,从而达到调节人们心态的目的。人在睡眠状态时发射δ波,其范围是0?5Hz~4Hz,微电脑催眠器能自动产生与其接近的磁场,诱导大脑进入睡眠状态。
  通过本制作,熟练掌握AT89C2051的定时器的应用以及数据传送指令、条件转移指令等常用的实用编程方法。
  二、工作原理
  原理图如图1所示。D1为AT89C2051型单片机。C1和R1组成D1的上电复位电路,C4、C5为+5V电源滤波电容。D2是四异或门,与R2~R5等组成波形和频率变换电路。该变换电路的原理如下:当D1的P1口输出00H时,D2:A~D2:D的各输出端为低电平,因此A点电压为0V;当P1口输出01H时,D2:A的1脚为高电平,2脚为低电平,因此3脚为高电平,R2~R5的等效电路如图2(a)所示,R3~R5并联电阻约为31?3kΩ,与R2分压后A点电压为0?37V,当P1口输出02H时,D2:B的5脚为高电平,6脚为低电平,因此4脚为高电平,R2~R5的等效电路如图2(b)所示,R2、R4、R5并联电阻为33?88kΩ,与R3分压后A点电压为0?72V。同理,当P1口输出0FH时,D2:A~D2:D全输出高电平,A点电压为5V。P1口输出数据与A点电压的关系见附表。因此加在L1上的电压波形为正弦波。改变D1在其P1口输出信号的时间间隔,即可改变输出正弦波的频率。若时间设定为1小时,频率逐渐从4Hz变到0?5Hz,由L1产生类似δ波的磁场。L1的制作可参考本报1998年合订本下册第90页文章。当然本机还可再附加上电源延时关机电路,以便使用。
  三、软件设计
  这里以产生2Hz的频率为例介绍软件设计方法。P1口P3口均设置为输出状态,用P3?7口线驱动LED。用AT89C2051的内部定时器T0作时间基准,控制P1口输出信号的时间间隔,当P1口输出第16个数据和第32个数据时,将P3?7的状态翻转,从而使LED的闪亮频率与正弦波频率一致。若在A点产生2Hz的正弦波,则必须在P1?0口线输出32Hz的方波(P1?1~P1?4口线输出的方波的频率依次减半)。因此,P1口输出信号的时间间隔为31?25ms,因图1中晶振频率为6MHz,计算出机器周期T=12/fc=2(μs),采用定时器T0,工作于方式2(常数自动装入的8位定时器),产生0?25ms的定时。定时器初值为#82H,T0每中断一次,21H加1,当21H加到#7DH时(十进制125),即到31?25ms。然后更新P1口数据(加1)。
  程序清单如下:
  ORG 0000H
  AJMP MAIN
  ORG 000BH
  LJMP WTO
  ORG 30H
MAIN:MOV SP,#50H
  MOV 20H,#0;(向P1口送的数据)
  MOV P1,#0  ;(31?25ms在WTO中加1)
  MOV P3,#0
  MOV TH0,#82H
  MOV TH0,#82H
  MOV TMOD,#02H
  SETB EA
  SETB ETO
  SETB TRO
M:MOV P1,20H
  AJMP M
WTO:PUSH ACC
  PUSH PSW
  INC 21H
  MOV A,21H
  CJNE A,#7DH,TORETI
  MOV 21H,#0
  INC 20H
  INC 22H
  MOV A,22H
  CJNE A,#16,TORETI
  CPL P3?7
  MOV 22H,#0
TORETI:POP PSW
  POP ACC
  RETI
  END
  四、系统调试
  软件调试:1?将上面源程序输入PC机以后,以“L07?ASM”文件名存盘。2?运行“MCS51?EXE”调试软件,待屏幕显示调试窗口以后,按<F3>键,调入“L07?ASM”,按<F9>键进行汇编。3?按<ALT>+<F>键,将“L07?ASM”转换成编程器需要的格式的文件。选择“Save OBJ as…”项,按回车键待出现选择窗口后,按<Esc>确定文件名和文件格式。文件格式选“?ROM”,然后存盘。4?按<Esc>键前退一步。5?按<Alt>+<X>键返回DOS系统。
  用本报第40期第九版介绍的方法将“L07?ROM”固化到AT89C2051中。
  硬件调试:1?检查线路应焊接无误。2?先不插入AT89C2051,接通电源后用短路线分别在D1插座的{12}脚~{16}脚加如附表所示的P1口电压(“1”为+5V,“0”为接地。测量A点电压,当{12}脚接+5V(其余各脚接地)时,A点电压应为0?4V左右,当{13}脚接+5V时,A点电压应为0?7V左右,当{14}脚接+5V时,A点电压应为1?3V左右,当{15}脚接+5V时,“A”点电压应为2?6V左右,若符合要求则D2:A~D2:D工作正常,再按附表中“P1口数据”逐点试验,A点电压应基本符合附表要求。若相差较大,则检查R2~R5的阻值。将写入程序的AT89C2051插入电路中的IC插座上,接通电源后观察LED应闪亮,用指针式万用表测量N15脚电压,指针摆动证明系统工作正常。
?成都 夕阳 


站内搜索