实验一 数据排序实验
1,实验目的:    熟悉51指令系统,掌握程序设计方法。
2,实验内容:    编写并调试一个排序子程序,其功能为用冒泡法将内存RAM中几个单字节无符号的正整数,按从小到大的次序重新排列。
3,程序框图:
                   
4,实验步骤:    RAM 50H5AH 中放入不等的数据,用断点方法运行本实验程序后检查50H5AH中的内容是否按从小到大的次序排列。
5,思考:    修改程序把50H5AH中内容从大到小排列。
6,程序清单:
            ORG 0000H
            LJMP QUE
            ORG 09B0H
QUE:              MOV R3,#50H
QUE1:              MOV A,R3                    ;指针送R0
        MOV R0,A
        MOV R7,#0AH                ;长度送R7
        CLR 00H                    ;清标志位
        MOV A,@R0
QL2:              INC R0
        MOV R2,A
        CLR C
        MOV 22H,@R0
        CJNE A,22H,QL3              ;相等吗?
        SETB C
QL3:              MOV A,R2
        JC QL1                      ;大于交换位置
        SETB 00H
        XCH A,@R0
        DEC R0
        XCH A,@R0
        INC R0                      ;大于交换位置
QL1:            MOV A,@R0
        DJNZ R7,QL2
        JB 00H,QUE1                ;一次循环中有交换继续
LOOP:            SJMP LOOP                      ;无交换退出
            END
硬件实验
硬件实验可使学生能进一步掌握单片机系统扩展和输入输出程序的设计方法,熟悉对扩展系统的软件、硬件设计,调试方法和技巧。

实验二    P1口转弯灯实验
 1,实验目的: 进一步了解P1口的使用,学习汇编语言编程方法及调试技巧。
2,实验内容:    P1.0 接开关5V,右转弯灯闪亮,P1.1接开关5V时左转弯灯闪亮,P1.0,P1.1同时接5V或接地时,转弯灯均不闪亮。
3,实验程序框图:
4,实验接线图:
5,实验步骤:    P1.0 K1P1.1K2P1.4P1.7L1L4L7L10,连续运行本程序,应看到转弯灯正确闪亮,在用单步方式调试本程序时需修改延时子程序,(例可把延时程序第一个字节改成返回指令22H),以便观察。
6,程序清单:
           ORG 0000H
            LJMP PX00
            ORG 0C30H
PX00:        MOV P1,#0FFH              ;初始化
PX03:      MOV A,P1
            MOV B,A
            ANL A,#03H
    CJNE A,#01H,PX01          ;满足只是P1.0为高条件?
    JB 00H,PX04              ;闪烁标志位
    CLR P1.4
    CLR P1.5                  ;开右灯
汇编语言指导书    SETB P1.6
    SETB P1.7                ;关左灯
    MOV R2,#20H
    LCALL DELY                ;延时
    SETB 00H                  ;置标志位
    LJMP PX03                  ;继续查状态
PX04:        SETB P1.4
    SETB P1.5
    SETB P1.6                  ;关灯
    SETB P1.7
    MOV R2,#20H
    LCALL DELY                ;延时
          CLR 00H                    ;清标志位
    AJMP PX03                  ;继续查状态
PX01:        CJNE A,#02H,PX02          ;满足只是P1.1为高条件吗?
    JB 01H,PX05                ;判标志位
    SETB P1.4
    SETB P1.5                  ;开左灯
    CLR P1.6
    CLR P1.7                  ;关右灯
    MOV R2,#20H
    LCALL DELY                ;延时
    SETB 01H                  ;置标志位
    LJMP PX03                  ;继续查
PX05:      SETB P1.4
    SETB P1.5
    SETB P1.6                  ;关灯
        SETB P1.7
        MOV R2,#20H
        LCALL DELY                ;延时
        CLR 01H                    ;清标志位
        LJMP PX03                  ;继续查状态
PX02:      SETB P1.4
        SETB P1.5
        SETB P1.6                  ;关灯
        SETB P1.7
        LJMP PX03                  ;继续
   
DELY:      PUSH 02H
DEL2:      PUSH 02H
DEL3:        PUSH 02H                  ;延时
DEL4:        DJNZ R2,DEL4
        POP 02H
        DJNZ R2,DEL3
        POP 02H
        DJNZ R2,DEL2
        POP 02H
        DJNZ R2,DELY
        RET
        END

实验三    工业顺序控制
1,实验目的:掌握工业顺序控制程序的简单编程,中断的使用。
2,实验预备知识:在工业控制中,象冲压、注塑、轻纺、制瓶等生产过程,都是一些连续生产过程,按某种顺序有规律地完成预定的动作,对这类连续生产过程的控制称顺序控制,象注
塑机工艺过程大致按“合模→注射→延时→开模→产伸→产退”顺序动作,用单片机最易实现。
3,实验内容:由 P1.01.6控制注塑机的七道工序,模拟控制七只发光二极管的点亮,低电平有效,设定每道工序时间转换为延时时间,P3.4为开工启动开关,高电平启动。P3.3为外部故障输入模拟开关,低电平报警,P1.7为报警声音输出,设定第6道工序只有一位输出,第七道工序三位有输出。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。