1、得分实验箱操作熟练程度10分硬件连接程序设计及调试70分回答问题5分注:程序清单要求学生上交,如果没有调试成功,可根据程序清单酌情给分。程序清单:CODE SEGMENT ASSUME CS:CODEORG 1200HSTART: MOV AL,80H MOV DX,0FF2BH OUT DX,AL 8255A初始化(10分)AB2: MOV CX,8 设置循环次数(10分) MOV AL,0FEH 点亮发光二极管初始值(10分)AB1: MOV DX,0FF28H OUT DX,AL A口输出点亮发光二极管(10分) CALL DELAY ROL AL,1 改变A口输出内容(10分) LOO
2、P AB1 JMP AB2 循环实现(10分)DELAY PROC 延时子程序(10分) PUSH CX MOV CX,0FFFFHDEL1: LOOP DEL1 POP CX RETDELAY ENDPCODE ENDS END START(第一组)考题二、循环实现从右至左依次点亮8个LED灯。用8255的PB口作输出口,输出去驱动8个发光二极管L1L8,发光二极管输入端为低电平时被点亮,编程序实现循环从右至左依次点亮8个LED灯(一次只点亮一盏灯)。 MOV AL,7FH 点亮发光二极管初始值(10分) MOV DX,0FF29H OUT DX,AL B口输出点亮发光二极管(10分) RO
3、R AL,1 改变B口输出内容(10分)(第一组)考题三、循环实现从右至左依次点亮8个LED灯。用8255的PA口作输出口,输出去驱动8个发光二极管L1L8,发光二极管输入端为低电平时被点亮,编程序实现循环从右至左依次点亮8个LED灯(一次只点亮一盏灯)。 ROR AL,1 改变A口输出内容(10分)(第二组)考题一、实现按任意键使8个LED灯交替闪烁。用8255的PA口作输出口,输出去驱动8个发光二极管L1L8,发光二极管输入端为低电平时被点亮,编程序循环实现:8个LED灯的初始状态为全灭,按任意键使8个LED灯交替闪烁,即L1、L3、L5、L7和L2、L4、L6、L8交替被点亮。8255A
4、端口地址为0FF28H0FF2BH,键盘输入口地址为0FF23H,输出口地址为0FF21H。 ASSUME CS:MOV AL,0FFHMOV DX,0FF28H OUT DX,AL CALL DELAY LED灯初始状态全灭(10分) MOV AH,05AH MOV AL,0 MOV DX,0FF21HOUT DX,AL MOV DX,0FF23H IN AL,DXNOT AL AND AL,0FH JNZ AB1 判断是否有键按下(20分) JMP AB2 MOV AL,AH OUT DX,ALNOT AH JMP AB1 有键按下LED灯交替闪烁(20分)(第二组)考题二、实现拨动开关使
5、相应的LED灯闪烁。用8255的PB口作开关量输入口,输入开关K1K8的状态,开关向上拨相应插孔输出高电平,向下拨相应插孔输出低电平。PA口作输出口,输出去驱动发光二极管L1L8,发光二极管输入端为低电平时被点亮。编程序循环实现:拨动开关使相应的发光二极管闪烁。 MOV AL,82H OUT DX,AL 8255A初始化(20分) IN AL,DX 读入开关状态(10分) MOV DX,0FF28HCALL DELAY 根据开关状态点灯(20分) OUT DX,AL LED全灭并延时(20分) JMP AB1 循环实现(10分)(第二组)考题三、实现按任意键使8个LED灯交替闪烁。用8255的PB口作输出口,输出去驱动8个发光二极管L1L8,发光二极管输入端为低电平时被点亮,编程序循环实现:MOV DX,0FF29H(第三组)考题一、实现8个LED灯从左至右依次闪烁5下。用8255的PA口作输出口,输出去驱动8个发光二极管L1L8,发光二极管输入端为低电平时被点亮,编程序实现8个发光二极管从左至右依次闪烁5下,
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1