单片机多功能人体秤设计 第10页

单片机多功能人体秤设计 第10页
MOV  T-MIN,A
MOV  DPTR,2004H;将时数据放到T-HOUR
MOV  A,@DPTR
MOV  T-HOUR,A
MOV  DPTR,2007H;将日数据放到T-DAY
MOV  A,@DPTR
MOV  T-DAY,A
MOV  DPTR,2008H;将月数据放到T-MON
MOV  A,@DPTR
MOV  T-MON,A
MOV  DPTR,2009H;将日数据放到T-YEAR
MOV  A,@DPTR
MOV  T-YEAR,A
RET            ;返回
串行通信子程序
Sout:MOV   TMOD,#20H  ;设置定时器T1为模式2
     MOV   TL1,#F3H   ;送初值
     MOV   TH1,#F3H    ;
     SETB  TR1         ;启动定时器
     MOV   SCON,#0D0H   ;设置串行口为模式3,允许接收
     MOV   PCON,#50H    ;设SMOD=1
     MOV   R0,  #40H    ;发送数据首地址到R0
     MOV   R7,  #0DH    ;数据块长度为送R7
 TRS:MOV    A,   @R0    ;区数据到A中
     MOV    C,  P       ;奇偶标志放入C中
     MOV    TB8,C       ;根据奇偶标志PS设置TB8
     MOV    SBUF,A      ;数据送到SBUF,启动发送
WAIT:JBC    TI,  CONT   ;查询TI=1,跳转并清TI为0
     SJMP    WAIT        ;否则TI=0未发送完毕
CONT:INC  R0             ;修改数据地址
     DJNZ R7,TRS          ;一组数据未发送完,继续
     RET                  ;发送完,子程序返回
测量身高子程序
TIME  EQU  60H
TIME1 EQU  61H
TIME2 EQU  62H
TIME3 EQU  63H
TIME4 EQU  64H
TIME5 EQU  65H
数据存储在40H-42H缓冲区中
MAIN:SETB  P1.7;使L297工作
      SETB  P1.6;控制步进电机正转
LOOP:SETB  P1.5;发送脉冲
      LCALL DELAY1MS
      MOV  73H,#00H;计脉冲数
www.751com.cn
      CLR  P1.5
      LCALL DELAY1MS
      JB  P1.4,LOOP;压头板是否到头部,不到跳转,否则顺序执行
SEVEN:MOV  TIME,#07H;脉冲数乘以0.7的压头板下降距离
       MOV  A,73H
       MOV  75H,A
       MOV  A,74H
       MOV  76H,A
       MOV  A,73H
       ADDC A,75H
       MOV  75H,A
       MOV  A,74H
       ADDC A,76H
       MOV  76H,A
       DJNZ TIME,SEVEN
       MOV  TIME,#0A0H
TE:   MOV  A,75H
       SUBB A,73H
       MOV  75H,A
       MOV  A,76H
       SUBB A,74H
       MOV  76H,A
       DJNZ TIME,TE
       MOV  A,#07H;2000毫米减压头板下降距离的人身高
     MOV  78H,A
       MOV  A,#0D0H
       MOV  77H,A
       MOV  A,77H
       SUBB A,75H
       MOV  77H,A
       MOV  A,78H
       SUBB A,76H
       MOV  78H,A
       MOV  A,#03H;将身高数据转化成BCD码送缓冲区
       MOV  7AH,A
       MOV  A,#0E8H
       MOV  79H,A
       MOV  A,#64H

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]  ... 下一页  >> 

Copyright © 2007-2012 www.chuibin.com 六维论文网 版权所有