计算机应用 | 古代文学 | 市场营销 | 生命科学 | 交通物流 | 财务管理 | 历史学 | 毕业 | 哲学 | 政治 | 财税 | 经济 | 金融 | 审计 | 法学 | 护理学 | 国际经济与贸易
计算机软件 | 新闻传播 | 电子商务 | 土木工程 | 临床医学 | 旅游管理 | 建筑学 | 文学 | 化学 | 数学 | 物理 | 地理 | 理工 | 生命 | 文化 | 企业管理 | 电子信息工程
计算机网络 | 语言文学 | 信息安全 | 工程力学 | 工商管理 | 经济管理 | 计算机 | 机电 | 材料 | 医学 | 药学 | 会计 | 硕士 | 法律 | MBA
现当代文学 | 英美文学 | 通讯工程 | 网络工程 | 行政管理 | 公共管理 | 自动化 | 艺术 | 音乐 | 舞蹈 | 美术 | 本科 | 教育 | 英语 |

数控直流稳压电源-机电毕业论文网(4)

2013-08-30 01:02
导读:。 ;*************************************************** ;以下接口定义根据硬件连线更改 ADCS BIT P2.5 ;使能接口 ADCLK BIT P2.4 ;时钟接口 ADDO BIT P2.3 ;数据输出接口(复用)

;***************************************************

;以下接口定义根据硬件连线更改

ADCS     BIT   P2.5         ;使能接口

ADCLK    BIT   P2.4         ;时钟接口

ADDO     BIT   P2.3         ;数据输出接口(复用)

ADDI     BIT   P2.3         ;数据输入接口

CS       BIT   P3.0         ;H=DATA,L=COM

SID      BIT   P3.1         ;H=READ,L=WRITE

SCLK     BIT   P3.6         ;

KEYBUF   EQU   30H

COM      EQU   41H          ;控制字暂存单元

DAT      EQU   42H          ;显示数据暂存单元

CODER    EQU   43H          ;字符代码暂存单元

ADDR     EQU   44H          ;地址暂存单元

ORG 0

LJMP    START

ORG 3

LJMP    KEYSCAN

ORG 30H

START:MOV SP,#90H

      LCALL DEL_40MS

      LCALL INI

      MOV 70H,#00H

      MOV 71H,#00H

      MOV 34H,#02              ;装入通道功能选择数据值

      SETB  IT0

      SETB  EX0

      MOV   P1,#0FH            ;将P1口低4位设为输入,高4位清零

      SETB  EA

      MOV  KEYBUF,#00H         ;起初输出0V电压

      MOV R2,#01H              ;置送数时送数空间不同的标志位。

      CLR A

      MOV 24H,A                ;清零24h,25h,31H,32H,33H。

      MOV 25H,A

      MOV 31H,A

      MOV 32H,#05H

      MOV 33H,#00H

      MOV   ADDR,#80H

      MOV   DPTR,#WEL_1

     MOV   40H,#16

      LCALL W_LINE

      MOV   ADDR,#90H

      MOV   DPTR,#WEL_2

      MOV   40H,#9

      LCALL W_LINE

      MOV   ADDR,#95H

      MOV   DPTR,#WEL_3 

      LCALL W_LINE1

      MOV   ADDR,#88H

      MOV   DPTR,#WEL_4

      MOV   40H,#16

      LCALL W_LINE

      MOV   ADDR,#98H

      MOV   DPTR,#WEL_5

      MOV   40H,#16

      LCALL W_LINE

      LCALL DEL_1500MS

LOOP: LCALL LIGHT                ;调显读数与示子程序

      SJMP  LOOP

;****************************************************

;键盘扫描程序

;键码存在KEYBUF单元,格式为数字0-9和.号,还有enter键

;****************************************************

KEYSCAN:PUSH    PSW

          PUSH  ACC

          PUSH  DPH

          PUSH  DPL

          CLR   RS1

          SETB  RS0              ;选择1区工作寄存器

          LCALL DELAY

          MOV   A,P1

          CPL   A

          ANL   A,#0FH

          JZ    FINISH

          MOV   DPTR,#TAB1

          MOV   P1,#0EFH         ;扫描第一行

          LCALL  DELAY

          MOV   P1,#0EFH

          MOV   A,P1

          CPL    A

          ANL  A,#0FH

          JZ        K1               ;第一行没键按下,则扫描第二行

          SJMP  KEND

K1: MOV P1,#0DFH                 ;扫描第二行

    LCALL  DELAY

    MOV P1,#0DFH

    MOV A,P1

    CPL A

    ANL A,#0FH

    JZ  K2                       ;第二行没键按下,则扫描第三行

    ADD A,#5

    SJMP    KEND

K2: MOV P1,#0BFH                 ;扫描第三行

    LCALL  DELAY

    MOV P1,#0BFH

    MOV A,P1

    CPL A

    ANL A,#0FH

    JZ  K3                       ;第三行没键按下,则扫描第四行

    ADD A,#10

    SJMP    KEND

K3: MOV P1,#7FH                  ;扫描第四行

    LCALL  DELAY

    MOV P1,#7FH

    MOV A,P1

    CPL A

    ANL A,#0FH

    JZ  FINISH                   ;第四行没键按下,则返回

    ADD A,#15

KEND:MOVC   A,@A+DPTR

    MOV KEYBUF,A;

    MOV    33H,#01H              ;置有中断标志

    SJMP    FINISH

FINISH:MOV  P1,#0FH              ;为下一次扫描作准备

    POP DPL

    POP DPH

    POP ACC

    POP PSW

    RETI

TAB1:DB 00H,01H,02H,00H,03H;,00H,00H,00H,33H

     DB 00H,04H,05H,00H,06H;,00H,00H,00H,00H

     DB 00H,07H,08H,00H,09H;,00H,00H,00H,0AH

     DB 00H,0AH,00H,00H,0BH;,00H,00H,00H,46H

;**************************

;LCD的初始化子程序

;**************************

INI:

    MOV   COM,#30H       ;功能设定,基本指令

    LCALL WCOM

    MOV   COM,#30H       ;基本指令,8-bit模式,基本指令

    LCALL WCOM

    MOV   COM,#0CH       ;显示开,游标关,反白关

    LCALL WCOM

    MOV   COM,#01H       ;清除显示

    LCALL WCOM

    MOV   COM,#06H       ;进入设定点,游标7右移,画面不移动

    LCALL WCOM

    RET

W_LINE:

    MOV   COM,ADDR

    LCALL WCOM

    MOV   R4,40H         ;连续写入N/2个中文或者N个西文字符

W_L1:

    MOV   A,#00H

    MOVC  A,@A+DPTR

    MOV   CODER,A

    LCALL WCODE

    INC   DPTR

    DJNZ  R4,W_L1

    RET

W_LINE1:

    MOV   COM,ADDR

    LCALL WCOM 

W_L11:  

    MOV   A,70H

    ANL   A,#0FH

    MOVC  A,@A+DPTR

    MOV   CODER,A

    LCALL WCODE

    MOV   A,#0BH

    MOVC  A,@A+DPTR

    MOV   CODER,A

    LCALL WCODE

    MOV   A,71H

    SWAP  A

    ANL   A,#0FH

    MOVC  A,@A+DPTR

    MOV   CODER,A

    LCALL WCODE

    MOV   A,71H

    ANL   A,#0FH

    MOVC  A,@A+DPTR

    MOV   CODER,A

    LCALL WCODE 

    MOV   A,#0AH

    MOVC  A,@A+DPTR

    MOV   CODER,A

    LCALL WCODE

    ;DJNZ  R4,W_L1

    RET

WCOM:

    LCALL STWC

    MOV   A,COM

    LCALL W4_D         ;送入高四位指令

    LCALL W4_0         ;连续送入四个0

    LCALL W4_D         ;送入高四位指令

    LCALL W4_0         ;连续送入四个0

    CLR   CS

    LCALL DEL_2MS

    RET

WCODE:

    LCALL STWD

    MOV   A,CODER

    LCALL W4_D

    LCALL W4_0

    LCALL W4_D

    LCALL W4_0

    CLR   CS

    LCALL DEL_2MS

    RET

 

STWC:

    SETB  CS

    SETB  SID

    MOV   R3,#5         ;连续送入5个"1",起始

STWC1: SETB  SCLK

    CLR   SCLK

    DJNZ  R3,STWC1

    CLR   SID

    MOV   R3,#3

STWC2:

    SETB  SCL

上一篇:电子设计自动化实验环境的建设与管理-机电毕业 下一篇:没有了