8255 0 方式应用: 声光报警器接口设计

合集下载

基于人工按钮声(2000HZ)光报警器的设计(C程序设计语言

基于人工按钮声(2000HZ)光报警器的设计(C程序设计语言

接口课程设计任务书学生姓名专业班级指导老师工作单位计算机科学与技术学院题目:基于人工按钮声(2000HZ)光报警器的设计(C程序设计语言)一、内容:在MIFID微机实验台上按下SW3按钮,发出声音报警,同时指定发光二极管LED点亮报警。

接口硬件电路图见说明书。

二、要求:1、指定发光二极管LED点亮报警的数据存储在文件中。

2、按下SW3按钮,输出为0。

由并行接口8255A的PC2接收SW3按钮的开关量。

然后使并行接口8255A的PC6产生2000频率的方波,使喇叭发出声音报警,同时从文件中取出一个8位二进制数从PA口输出,点亮发光二极管LED报警。

3、如果键盘输入任意键,则退出声光报警。

4、设计程序运行时的界面友好。

三、进度安排:序号内容所用时间1 接口电路设计2天2 编写程序1天3 调试程序1天4 撰写课程设计报告1天合计5天指导教师签名:年月日系主任(责任教师)签名:年月日1 问题描述在MIFID微机实验台上按下SW3按钮,发出声音报警,同时指定发光二极管LED点亮报警。

要求:(1)指定发光二极管LED点亮报警的数据存储在文件中。

(2)由并行接口8255A的PC2接收SW3按钮的开关量。

然后使并行接口8255A的PC6产生2000频率的方波,使喇叭发出声音报警,同时从文件中取出一个8位二进制数从PA口输出,点亮发光二极管LED报警。

(3)如果键盘输入任意键,则退出声光报警。

(4)设计程序运行时的界面友好。

2 具体设计2.1 实验资源(1)MFID实验平台上的 J(8253)、I(8255)、R(音乐发生器)和模块电源四个电路模块;(2)8255的4个端口地址为300H~303H,其中A口为300H,B口为301H,C口为302H,命令口为303H;(3)8253的四个端口地址为304H~307H,其中通道0为304H,通道1为305H,通道2为306H,命令口为307H。

2.2 设计分析2.2.1 设计原理报警音通过8253以可编程控制方式来控制其频率和延时,可分别发出高低频音;报警灯通过从8255的A口选择不同的字控制8个LED灯的显示,其显示数据通过文件读入到数组中,待启动时将数据依次读入A口。

8255应用课程设计

8255应用课程设计

8255应用课程设计一、教学目标本节课的教学目标是让学生掌握8255芯片的基本原理和应用方法。

知识目标要求学生了解8255芯片的内部结构、工作原理及其与微处理器的接口技术;技能目标要求学生能够运用8255芯片完成简单的输入输出操作;情感态度价值观目标则是培养学生对电子技术的兴趣,提高学生解决问题的能力。

二、教学内容本节课的教学内容主要包括8255芯片的基本原理、内部结构、接口技术及其应用。

具体包括以下几个部分:1.8255芯片的基本原理:介绍8255芯片的功能、特点及其在计算机系统中的应用。

2.8255芯片的内部结构:详细讲解8255芯片的各个模块,如控制逻辑、数据寄存器、状态寄存器等。

3.8255芯片的接口技术:讲解8255芯片与微处理器之间的接口技术,包括数据通信、控制信号的连接等。

4.8255芯片的应用实例:通过实际案例,让学生了解如何使用8255芯片完成输入输出操作。

三、教学方法为了提高教学效果,本节课将采用以下几种教学方法:1.讲授法:教师讲解8255芯片的基本原理、内部结构和接口技术。

2.讨论法:学生分组讨论8255芯片的应用实例,分享学习心得。

3.案例分析法:分析具体案例,让学生了解8255芯片在实际应用中的作用。

4.实验法:安排实验室实践环节,让学生动手操作,巩固所学知识。

四、教学资源为了支持本节课的教学,我们将准备以下教学资源:1.教材:提供《8255应用教程》等教材,为学生提供理论知识的学习材料。

2.参考书:推荐《微机原理与应用》、《计算机组成原理》等参考书,拓展学生的知识面。

3.多媒体资料:制作课件、视频等多媒体资料,帮助学生更好地理解教学内容。

4.实验设备:准备8255芯片实验板、微处理器等实验设备,为学生提供实践操作的机会。

五、教学评估本节课的评估方式将包括平时表现、作业和考试三个部分。

平时表现主要评估学生在课堂上的参与程度、提问回答等情况,占总评的20%;作业主要包括课后练习和实验报告,占总评的30%;考试则是对学生掌握8255芯片基本原理和应用方法的全面考察,占总评的50%。

微机原理与接口技术课程设计电子报警器设计

微机原理与接口技术课程设计电子报警器设计

课程设计任务书学生姓名:专业班级:电子信息工程2班指导教师:工作单位:题目:电子报警器设计一、设计条件:1.运用所学的微机原理和接口技术知识;2.微机原理和接口技术实验室的实验箱设备。

二、要紧任务:(包括课程设计工作量及其技术要求和说明书撰写等具要求)假想制作一个防盗器件。

具体要求:程序运行时扬声器发出警报声,使得8个LED指示灯不断光闪,光闪周期为2秒,14秒倒计时终止后液晶显示器显示相关警报信息。

警报信息显现后LED灯熄灭,程序按任意键退出后声不响光不闪。

依照设计任务和要求,在设计前必需对微机原理与接口技术中的8255和8253芯片熟悉了解和把握。

设计中要紧要完成的是发声报警和发光报警这两个部份功能,故在程序设计中只要设计触动键盘中的数字键即8个LED不断光闪,同时内扬声器发出警报声,且在屏幕上显示警报信息。

在设计发声报警时利用了8253可编程按时记数器。

在设计发光报警时利用了8255芯片。

在程序设计中利用INT 10H实此刻屏幕上显示相关的警报信息。

三、时刻安排:指导教师签名:年月日基于微机原理电子警报器的设计摘要在现今高速进展的中,人们对自身所处的环境愈来愈关切,居家平安已成为现今小康之家优先考虑的。

当您上班家中无人,或仅有老人孩子在家,或您晚上在家熟睡,您必需确保家庭成员和财产的绝对平安。

众多住宅小区的安防防犯要紧倚靠安装防盗窗、防盗门和人工防犯。

如此不仅有碍美观,不符合防火的要求、而且不能有效地避免坏人的侵入。

随着生活水平的不断提高,人们的平安防范意识也在不断的增强,各类智能防盗报警器应运而生,并非断地向各个领域深切,报警器是一种为避免或预防某事件发生所造成的后果,以声音、提示等形式来警示或提示咱们应当采取某种行动的电子产品。

随着科技的进步,家居安防中的机械式报警器愈来愈多地被先进的电子报警器代替,如防盗报警器、防火报警器、煤气天然气泄露报警器等。

而且电子报警器在平安智能家居监控报警系统起愈来愈重要的作用。

微型计算机课程设计声光报警器的设计与制作

微型计算机课程设计声光报警器的设计与制作

目录1 需求分析 (1)1.1开发背景 (1)1.2课程设计目的 (1)1.3课程设计要求 (1)1.4资源配置 (1)1.5开发环境介绍 (1)2 概要设计 (2)2.1硬件介绍 (2)2.1.1 可编程并行接口8255A (2)2.1.2 发光二极管LED (4)2.1.3 低电压音频功率放大器LM386 (4)2.1.4 74 LS04 (5)2.1.5 LM336- 2.5V基准二极管 (5)2.2实现原理 (6)2.3设计步骤 (6)3 详细设计 (7)3.1绘制电路图 (7)3.1.1 电路原理图 (7)3.1.2 电路PCB图 (7)3.2搭建电路板 (8)3.2.1 元器件清单 (8)3.2.2 硬件连线 (8)3.3流程图 (9)3.4程序设计 (10)4 调试与操作说明 (11)4.1调试要求 (11)4.2调试与操作 (11)5 总结体会 (12)致谢 (13)附录 (14)参考文献 (19)1 需求分析1.1 开发背景现代生活中,报警器的应用随处可见,银行装有防盗报警器,医院、学校装有安全报警器,普通家庭中也装有报警器,启动报警器,生命和财产安全都得到了保障。

随着科技的进步,报警器的制作也越来越先进,发展也越来越快。

各式各样的报警器,也将应用于更多领域,深入到人们生活的各个方面。

1.2 课程设计目的熟悉可编程并行接口芯片8255的使用,学习开关量接口电路及其控制程序的设计方法。

1.3 课程设计要求1、产生8种彩灯(8位LED)的走马灯花样。

2、产生8种不同的声音。

3、产生声音的同时,伴有彩灯闪亮。

4、键控发声:在键盘上定义8个数字键(0~7),每按1个数字键,喇叭发一种频率的声音,按ESC键,停止发声。

5、键控发光:在键盘上定义8个数字键(0~7),每按1个数字键,LED的1位发光,按Q或q键,停止发光。

1.4 资源配置1.电源:机内供电2.电缆线:采用单线/26芯扁平电缆3.I/O端口地址:8255A的4个端口地址为300H-303H,其中A口=300H, B口=301H,C 口=302H,命令口=303H4.软件资源:C语言集成开发环境软件1.5 开发环境介绍1、PC兼容机2、Windows 20003、MFID多功能微机实验平台(含PCI总线驱动板)4、MF2KI 集成开发环境,提供了丰富的汇编语言和C/C++语言程序开发工具2 概要设计2.1 硬件介绍2.1.1 可编程并行接口8255A8255A是一个具有两个8位(A口和B口)和两个4位(C口高/低4位)并行I/O端口的接口芯片;它为Intel系列CPU与外部设备之间提供TTL电平兼容的接口,如打印机,A/D,D/A 转换器,键盘,步进电机以及需要同时两位以上信息传送的一切形式的并行接口。

微型接口技术课程设计声光

微型接口技术课程设计声光

1 需求分析1.1 课程设计目的利用MFID实验平台,通过在MF2KI集成开发环境中对声-光效果(报警器)的设计与制作,深入了解与掌握利用可编程8255A进行开关量控制的原理与方法。

1.2 课程设计要求和任务1.2.1 设计要求1. 利用DIP8的8位开关,控制LED产生8种彩灯(8位LED)的走马灯花样的同时,又控制喇叭,产生8种不同频率的声音;按任意键,LED彩灯熄灭,同时喇叭停止发声。

2. 键控发声设计。

在键盘上定义8个数字键(0~7),每按1个数字键,使喇叭发一种频率的声音,按任意键,停止发声。

3.键控发光实验。

在键盘上定义8个数字键(0~7),每按1个数字键,使LED的1位发光,按任意键,停止发光。

1.2.2 设计任务1.进行声-光效果(报警器)系统电路硬件设计,画出电路原理图、PCB 图或元器件布线图;2.安装或焊接元器件;3.进行声-光效果控制程序设计(采用CPP语言);4.系统联调,提交一个符合上述4种要求的声-光效果的系统设计。

1.3 课程设计环境1.PC兼容机2.Windows 20003.MFID多功能微机实验平台(含PCI总线驱动板)4.MF2KI集成开发环境5.面包板或外设功能模块板6.安装或焊接工具1.4 实验资源配置1. 电源:机内供电;2. 电缆线:采用单线/26芯扁平电缆;3. 元器件:外设功能模块中包含8255A,74LS04,功放LM386,LED8个,排阻2个,喇叭SPK1个,开关2个,电阻,电容及导线若干;4.I/O端口地址:8255A的4个端口地址为300H-303H,其中A口=300H,B口=301H,C口=302H,命令口=303H;5.软件资源:MF2KI集成开发环境软件提供丰富的C语言程序开发工具。

2 概要设计2.1设计内容按下SW3开关,开始报警,即喇叭发声,同时LED灯闪光。

打开开关1,灯1、3、5、7闪亮,关闭开关SW3;断开开关闭合开关2,再按下SW3,灯2、4、6、8闪亮。

实验九 可编程接口芯片8255应用(交通灯控制)

实验九 可编程接口芯片8255应用(交通灯控制)

实验九可编程接口芯片8255应用(交通灯控制)双击自动滚屏发布者:admin 发布时间:2005-9-8 阅读:2151次一、实验目的1、学习扩展简单I/O接口的方法以及双色灯的使用。

2、进一步学习微处理器的编程技术。

二、实验要求编写程序,以8255作为输出口,控制4个双色LED灯(可发红、绿、黄光)红绿交替闪亮。

三、实验说明1、双色LED是由一个红色LED管芯和一个绿色LED管芯封装在一起,公用负端。

当红色正端加高电平,绿色正端加低电平时,红灯亮;红色正端加低电平,绿色正端加高电平时,绿灯亮;两端都加高电平时,黄灯亮。

2、本实验要求8255工作于方式0,四个双色灯红绿交替闪亮。

四、实验电路及连线将DG1~DG4,DR1~DR4用导线连至8255的PC0~PC7,8255的CS片选接至138译码处的200H~207插孔。

芯片在实验机的位置五、实验参考程序D1 EQU 10HD2 EQU 200HDA TA SEGMENTPB DB ?DA TA ENDSSTACK SEGMENT STACKSTA DW 50 DUP(?)TOP EQU LENGTH STASTACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART: PUSH CSPOP DSMOV DX,203H ;设置为全输出MOV AL,80HOUT DX,ALMOV DX,202HOUT DX,AL ;清LEDMOV DX,202H ;全红MOV AL,0F0HOUT DX,ALMOV BX,7fHCALL DL YBG: MOV AL,01101001B ;南北绿,东西红OUT DX,ALMOV BX,D2CALL DL YMOV CX,03HXH1: AND AL,0F6H ;绿灭OUT DX,ALMOV BX,D1CALL DL YOR AL,09H ;绿亮OUT DX,ALMOV BX,D1CALL DL YLOOP XH1OR AL,90H ;南北黄OUT DX,ALMOV BX,D1CALL DL YMOV BX,D1CALL DL YMOV AL,10010110B ;南北红,东西绿OUT DX,ALMOV BX,D2CALL DL YMOV CX,03XH2: AND AL,0F9HOUT DX,ALMOV BX,D1CALL DL YOR AL,06HOUT DX,ALMOV BX,D1CALL DL YLOOP XH2OR AL,60HOUT DX,ALMOV BX,D1MOV BX,D1CALL DL YJMP BGDL Y PROC NEARPUSH CXDDD: MOV CX,0FFFHCCC: LOOP CCCDEC BXCMP BX,0JNE DDDPOP CXRETDL Y ENDPCODE ENDSEND START六、思考题有紧急车辆或紧急情况出现,如何处理?程序如何设计?七、实验报告要求1、实验内容为必做内容,其中,思考题须自行设计电路、连线及编写程序。

单片机可编程8255接口实验报告

单片机可编程8255接口实验报告

单片机可编程8255接口实验报告可编程8255接口实验报告㈠实验目的1.掌握可编程并行接口芯片的基本工作原理及其使用方,熟悉8255可编程并行I/O扩展接口。

2.掌握8255可编程并行I/O扩展接口方法,能够利用8255可编程并行接口芯片设计简单应用系统。

㈡实验器材1. G6W仿真器一台2. MCS-51实验板一台3. PC机一台4.电源一台㈢实验内容及要求1.声光报警器实验8255是可编程的通用并行输入输出扩展接口。

8255芯片的片选信号CS4 及口地址选择线AA0、AA1分别由8051的地址线提供。

8255的A口设置为输入数据端口,B口设置为输出数据端口,通过控制位操作控制字将C口某一位置位或复位,B口与发光二极管LED相连,C口与蜂鸣器相连,读取A 口数据,只要有一位为“1”,则点亮发光二极管LED(B口输出为低,LED 亮,反之,LED 灭),同时蜂鸣器响(若 C口某一位置1,蜂鸣器不响)。

2.交通灯控制实验通过并行接口8255实现十字路nb 口交通灯的模拟控制。

L6~L8与PC5~PC7相连,作为南北路口的交通灯,L1~L3与PC0~PC2相连,作为东西路口的交通等。

编程使六个灯按以下规律变化:南北路口的“绿”灯(L8)、东西路口的“红”灯(L1)同时亮30秒(要求有倒计时显示);南北路口的“黄”灯(L7)闪烁若干次,同时东西路口“红”灯(L1)继续亮;南北路口的“红”灯(L6)、东西路口的“绿”灯(L3)同时亮30秒(要求有倒计时显示);东西路口的“黄”灯(L2)闪烁若干次,南北路口的“红”灯(L6)继续亮;重复以上步骤。

㈣实验步骤1.连接8255芯片的片选信号CS4及口地址选择线AA0、AA1,并根据片选信号及口地址选择线确定8255的各I/O口地址和控制字寄存器的地址。

2.声光报警器实验的连线①8255的A口的8位根据需要接入高低电平。

②8255的B口中任一口与TEST相连,运行程序,即可观察L9发光二极管。

可编程并行IO接口8255案例

可编程并行IO接口8255案例

第 6 章可编程并行I/O接口8255A案例6.1:8255读取并显示开关状态1)要求:正确设定8255A并行端口的工作方式,设计电路并编制程序,实现将PB口的开关状态通过PA口的发光二极管显示出来。

2)目的:通过了解8255A芯片引脚的内部结构,掌握输入输出的实验方法,正确应用8255A的各个端口。

案例6.1实现——8255读取并显示开关状态1.实现过程设定8255A的PA口和PB口为方式0,并指定PB口所连接的开关为输入,PA口所连接的发光二极管为输出,通过编写程序,由8086CPU将PB口的开关状态读入并通过PA口输出,以显示开关的状态。

2.电路原理图的设计利用Proteus对本案例仿真连接如图 6.1所示。

该仿真电路以错误!未找到引用源。

作为基本的原理图。

采用74LS373作为地址锁存器保存端口地址,对于8255A的片选信号CS直接接地使其处于有效状态。

在程序中设定PB 为输入端口,PA为输出端口。

电路将8个开关的状态通过8255A的PB口送入CPU,经过处理后,将数据从8255A的PA送出到发光二极管进行显示。

例如,若开关k0处于闭合状态,则发光二极管D1应处于发光状态。

图 6.1 8255A读取开关状态并显示仿真效果图3.案例汇编程序设计该案例中所使用的程序代码如下所示。

CODE SEGMENT 'code'ASSUME CS:CODESTART: ;假设A口、B口、C口及控制端口地址分别为:20H, 22H, 24H, 26H MOV AL,82H ;控制字,1 0000 010,A口输出(初始输出全为0),B口输入OUT 26H,AL ;送控制端口N: IN AL,22H ;从B口读入OUT 20H,AL ;从A口输出JMP NCODE ENDS案例6.2:8255A实现键盘接口1)要求:正确设定8255A并行端口的工作方式,设计电路并编制程序,利用PC口的高4位和低4位实现键盘的扫描,并利用数码管显示对应键值。

《声光报警器》word版

《声光报警器》word版

微机原理课程设计报告书课题名称姓名学号院、系、部专业通信工程指导教师声光报警器一、设计目的(1)进一步巩固和加深《微机原理与接口技术》这门课程中所学的理论知识。

(2)学会查阅相关手册与资料,培养独立分析与解决问题能力。

(4)通过设计了解8255A芯片和8253芯片的内部结构,工作方式,引脚的功能以及I/O 口的使用。

掌握8255A和8253的控制字的意义,功能和设置方法。

(5)学习并实践模拟声光报警器的实现方法。

二、设计内容与要求具体要求:按动键盘某任一数字键使得内扬声器发出警报声,使得8个LED 指示灯忽明忽暗显示出报警信息。

三、设计思路根据设计任务和要求,在设计前必须对微机原理与接口技术中的8255和8253芯片熟悉了解和掌握。

设计中主要要完成的是发声报警和发光报警这两个部分功能,故在程序设计中只要设计触动键盘重的数字键即8个LED不停光闪,同时内扬声器发出警报声。

在设计发声报警时利用了8253可编程定时记数器,在设计发光报警时利用了8255芯片。

四、设计所用芯片及工作原理报警器PC机的主机箱内装有一只小喇叭,它是由定时器8253/54和并行芯片8255/8255A控制发声的,主板上由喇叭控制驱动电路,同时在ROM,BIOS中的BEEP子程序,它能根据BX中发出的计数值控制定时器8253/54,从而产生频率为896HZ的声音。

8253是可编程的内部定时器,它根据程序提供的计数值和工作模式产生各种形式和各种频率的计数/定时脉冲,提供给系统的各个部件使用。

8253定时器内部有3个独立工作的计数器:COUNTER1,COUNTER2,COUNTER3,每一个计数器都分配有一个端口地址,分别为40H、41H、42H。

内部的公用控制寄存器端口地址为43H。

对8253编程时,首先设定控制字,以选择计数器、确定工作模式和计数的格式。

在PC机中8253的3个时钟端口的输入频率都是1.19318MHZ。

其中计数器2可以控制扬声器的发声。

8255并口控制器应用实验

8255并口控制器应用实验

8255并口控制器应用实验一、实验目的1. 掌握8255 的工作方式及应用编程。

2. 掌握8255 典型应用电路的接法。

二、实验内容1. 基本输入输出实验。

编写程序,使8255 的A 口为输出,B 口为输入,完成拨动开关到数据灯的数据传输。

要求只要开关拨动,数据灯的显示就改变。

2.流水灯显示实验。

编写程序,使8255 的A 口和B 口均为输出,数据灯D7~D0 由左向右,每次仅亮一个灯,循环显示,D15~D8 与D7~D0 正相反,由右向左,每次仅点亮一个灯,循环显示。

四、实验原理与步骤实验步骤(1)基本输入输出实验实验说明:本实验使8255的端口A作为输出口工作在方式0,端口 B 作为输入口工作在方式0。

用一组开关信号接入端口B,端口A 输出线接至一组数据灯上,然后通过对8255 芯片编程来实现输入输出功能。

图3-2 8255基本输入输出实验参考接线图实验步骤如下:①实验接线图如图3-2所示,按图连接实验线路图。

②运行Tdpit 集成操作软件,根据实验内容,调用程序代码(T8255-1.ASM),填写程序代码中的空缺处,编译、链接。

③运行程序,改变拨动开关,同时观察LED 显示,验证程序功能。

实验代码如下:IOY0 EQU 9860H ;片选IOY0对应的端口始地址MY8255_A EQU 9860H ;8255的A口地址MY8255_B EQU 9861H ;8255的B口地址MY8255_C EQU 9862H ;8255的C口地址MY8255_MODE EQU 9863H ;8255的控制寄存器地址STACK1 SEGMENT STACKDW 256 DUP(?)STACK1 ENDSCODE SEGMENTASSUME CS:CODESTART: MOV DX,MY8255_MODE ;初始化8255工作方式MOV AL, 82H ;工作方式0,A口输出,B口输入OUT DX,ALLOOP1: MOV DX,MY8255_B ;读B口IN AL,DXMOV DX,MY8255_A ;写A口OUT DX,ALMOV AH,1 ;判断是否有按键按下INT 16HJZ LOOP1 ;无按键则跳回继续循环,有则退出QUIT: MOV AX,4C00H ;结束程序退出INT 21HCODE ENDSEND START(代码结束)(2)流水灯显示实验实验说明:使8255 的A 口和B 口均为输出,数据灯D7~D0 由左向右,每次仅亮一个灯,循环显示,D15~D8 与D7~D0 正相反,由右向左,每次仅点亮一个灯,循环显示。

8255应用课程设计

8255应用课程设计

8255应用课程设计一、课程目标知识目标:1. 理解并掌握8255可编程并行接口芯片的基本工作原理及应用方法;2. 学习8255芯片在微机接口电路中的应用,并能结合具体实例进行分析;3. 掌握8255芯片与其他接口设备的连接方式,了解其接口特性。

技能目标:1. 能够正确运用8255芯片进行简单的接口电路设计,实现数据输入/输出功能;2. 学会利用8255芯片进行并行通信,具备实际操作和调试能力;3. 能够针对实际问题,运用所学知识进行接口电路设计和调试,提高解决问题的能力。

情感态度价值观目标:1. 培养学生对待科学技术的严谨态度,激发学生对电子技术的兴趣和热情;2. 培养学生的团队协作精神,学会与他人共同分析问题、解决问题;3. 增强学生的创新意识,鼓励学生勇于尝试,提高学生的实践能力。

课程性质:本课程为电子技术专业课程,以实践性为主,注重理论与实践相结合。

学生特点:学生已具备一定的电子技术基础,具有较强的学习能力和动手能力。

教学要求:教师应引导学生掌握8255芯片的基本原理和应用方法,注重培养学生的实践操作能力和创新能力。

在教学过程中,关注学生的学习进度,确保课程目标的实现。

通过课程学习,使学生能够将所学知识应用于实际问题的解决中。

二、教学内容本课程教学内容主要包括以下几部分:1. 8255可编程并行接口芯片基本原理:介绍8255芯片的结构、工作模式、控制字等基本概念,使学生掌握8255芯片的基本原理。

教材章节:第二章第五节“8255可编程并行接口芯片”2. 8255芯片的应用实例:分析8255芯片在微机接口电路中的应用,如键盘输入、LED显示等,帮助学生了解8255芯片在实际电路中的应用。

教材章节:第二章第六节“8255芯片的应用实例”3. 并行通信原理及接口设计:讲解并行通信的原理,以及8255芯片在并行通信中的应用,指导学生进行接口电路设计。

教材章节:第三章第一节“并行通信原理及接口设计”4. 8255芯片与其他接口设备的连接:分析8255芯片与其他接口设备的连接方法,如ADC、DAC等,拓展学生的知识面。

8255应用实例——报警系统

8255应用实例——报警系统

8255应用实例——报警系统设某报警系统如图所示。

开关K0、K1打开时系统为正常状态,绿色指示灯LD亮。

开关K0或K1闭合时,表示异常状态,要求报警,开关K0闭合,红色指示灯HD0亮;开关K1闭合,红色指示灯HD1亮。

试设计一程序,使其能完成上述任务,并要求系统能连续工作。

1. 地址: C B AA9 A8 A7 A6 A5 A4 A3 A2 A1 A01 0 0 0 0 0 1 0 0 0 0208H PA1 0 0 0 0 0 1 0 0 1 0209H PB1 0 0 0 0 0 1 0 1 0 020AH PC1 0 0 0 0 0 1 0 1 1 020BH 控制寄存器2. K0或K1闭合,CPU从PA0或PA7读入0;反之,读入1。

3. 方式控制字方式0:基本输入输出方式;方式控制字为 1 0 0 1 0 0 0 0 即 90H程序为MOV DX,020BHMOV AL,90HOUT DX,AL4. 从口A读入开关K0、K1的状态,并测试MOV DX,0208HIN AL,DXTEST AL,01H ;测试K0状态,K0连接PA0JZ HD0 ;如条件满足,K0闭合,应红灯HD0亮MOV DX,0208HIN AL,DXTEST AL,80H ;测试K1状态,K1连接PA7JZ HD1 ;如条件满足,K1闭合,应红灯HD1亮5. 从口C输出信息1,使灯亮有两种方法:1)用输出方法 OUT DX,AL2)用口C位控制字方式此处采用第二种方法。

令红灯HD0亮,PC0应为1,控制字为 0 0 0 0 0 0 0 1 即01H MOV DX,020BHMOV AL,01HOUT DX,AL令红灯HD1亮,PC1应为1,控制字为 0 0 0 0 0 0 1 1 即03H令绿灯LD亮,PC7应为1,控制字为 0 0 0 0 1 1 1 1 即0FH 6. 程序流程7. 程序如下:START:MOV AL,90H ;初始化,设置方式0MOV DX,020BH ;PA为输入,PC为输出OUT DX,ALLOOP1:MOV CL,00HMOV AL,00H ;令灯全灭MOV DX,020AHOUT DX,ALMOV DX,0208H ;读口AIN AL,DXT0: TEST AL,01H ;测试K0状态JZ HD0T1: TEST AL,80H ;测试K1状态JZ HD1CHK: CMP CL,00HJZ LDDLY: CALL DLY5S ;调用延时子程序,延时5秒JMP LOOP1HD0: MOV AL,01H ;报警,令红灯HD0亮MOV DX,020BHOUT DX,ALOR CL,01H ;使标志CL≠0JMP T1HD1: MOV AL,03H ;报警,令红灯HD1亮MOV DX,020BHOUT DX,ALOR CL,01H ;使标志CL≠0JMP CHKLD: MOV AL,0FH ;正常状态,绿灯LD亮MOV DX,020BHOUT DX,ALJMP DLY。

声光报警接口设计

声光报警接口设计

3.3.6 声光报警接口设计在单片机测控系统了生故障或处于某种紧急状态时,单片机系统应能给出报警信号,报警信号可分为闪光报警、鸣音报警和语言报警。

闪光报警可用某一I/O 口驱动LED 闪烁,只要该I/O 口发出具有一定频率的高低电平信号,即可使LED 闪烁。

闪烁报警程序比较简单,本节不作介绍,仅介绍鸣音报警接口和语音报警接口。

1.鸣音报警接口鸣音报警接口有二种:一种是蜂鸣音报警接口,另一种是音乐报警。

(1)蜂鸣音报警蜂鸣音报警器约需10mA 的驱动电流,而我们的单片机其I/O 口可以输出4-20mA 的电流,故可以直接连接而不需驱动器;当然如果单片机负载大的话,可以增加驱动集成电路,如7406或747,也可以用一个晶体三极管驱动。

如下图3-43所示: NPNLS?SPEAKERR2R1AGND 8051P3.2VCC图3-43 蜂鸣器驱动电路(2)音乐报警蜂鸣音报警接口虽然简单,但比较单调。

若要使报警声优美悦耳,常可采用音乐报警电路。

音乐报警接口由两部分组成:○1乐曲发生器,集成电子音乐芯片;○2放大电路,也可采用集成放大器。

2. 语音报警接口随着电子技术的发展,特别是大规模集成技术的发展,人们能够把语音电路做成很小的集成芯片,这些芯片配以简单的外围电路就可以根据需要发出各种声音。

语音芯片的主要功能包括:语音分析、存储、再生合成以及识别等。

近几年市场上美国、日本等生产的语音芯片很多,功能各异,可根据需要查阅有关手册,如T6668等。

在我们所设计的压力监控系统中,由于防止外界各种铃声的干扰,我们采用单调但较为合适的蜂鸣音报警。

电路原理图如下图3-44: P3.2WLS2SPEAKER WC70.01uF GAIN 8GAIN 1BYP 75VS6GND 412+-WU29LM386N-1WC80.01uF WC90.01uF VCC喇叭驱动电路图3-44 蜂鸣音报警电路原理图3.3.7 步进电机工作原理、选型与控制方法1. 步进电机概述步进电机是一种能够将电脉冲信号转换成角位移或线位移的机电元件,它实际上是一种单相或多相同步电动机。

利用8253的分频功能实现报声光警声

利用8253的分频功能实现报声光警声

课程设计报告设计题目:声光报警器专业:电气工程及其自动化系别:电子电气工程系班级:2011级电气5班学号:姓名:日期:2013年12月29日目录一、设计目的 (2)二、设计要求 (2)三、设计原理 (2)1、基本原理 (2)2、8255的工作原理 (3)3、8253的工作原理 (4)4、连线说明 (5)四、设计步骤 (6)1、实验程序流程图 (6)2、程序源代码 (7)五、调试结果 (9)六、设计过程中遇到的问题 (9)七、设计心得 (9)一、设计目的通过该设计,掌握串行通信的基本原理和应用,掌握8255并行口和8253定时计数器的使用,并掌握相应的程序设计和电路设计的技能。

是对并行通信接口芯片和定时计数芯片章节理论学习的总结和补充,为后续的硬件课程的学习打下基础。

二、设计要求利用8253的分频功能实现报警声,即频率1高1低的警报声,同时LED灯也配合一闪一闪。

1、对8253进行初始化编程,对8255进行初始化编程;2、根据设计要求,连接相应的电路;3、编写程序实现声光报警效果。

三、设计原理1、基本原理(1)利用8253的分频原理,将1MHz的信号分频成1000Hz的低音频信号和5000Hz的高音频信号,并通过驱动电路和扬声器的连接,产生报警信号。

8253的通道0工作在方式3,对1MHz的信号1次分频。

(2)利用8255端口A驱动8个LED发光二极管,结合8253产生的报警信号,产生灯光闪烁效果。

2、8255的工作原理8255共有两个控制字,即工作方式控制字和相对C口进行置位或复位的控制字。

8255工作原理如下图:它包含数据端口A、B、C。

每一个端口都是8位,都可以选择作为输入或输出,但功能上有着不同的特点:(1)端口A:一个8位数据输出锁存和缓冲器,一个8位数据输入锁存器。

(2)端口B:一个8位输入/输出,锁存/缓冲器,一个8位数据输入缓冲器。

(3)端口C:一个8位数据输出锁存/缓冲器,一个8位数据输入缓冲器(输入没有锁存)。

实验五 用8255扩展IO口

实验五 用8255扩展IO口

实验五用8255扩展I/0口一.实验目的1.掌握8255扩展I/O口的接口技术。

2.掌握控制应用程序的设计方法。

二.实验原理设计一块8255扩展实验板,其原理线路如图6—1所示。

A口、B口分别接有8个发光二极管指示灯。

从8255A口、B口输出控制字,可控制指示灯的点亮/熄灭,某口线输出“0/1”,可控制该口线的指示灯“亮/灭”。

由接口线路可确定8255的口地址。

A口:8000H B口:8001H C口:8002H 控制口:8003H图1 8255扩展线路原理图三.实验内容与步骤1.通过仿真插头把8255扩展板接在仿真器上。

2.编制使指示灯左/右循环点亮/熄灭的控制程序。

3.键入程序,将仿真器设置在仿真工作方式,运行程序并观察结果。

4.修改程序,控制指示灯以不同形式点亮/熄灭。

四.实验预习要求1.看懂扩展线路原理图,读懂参考程序。

2.写出实验内容要求的修改程序。

五.思考题1.实验中8255工作于何种方式?控制字怎样确定?2.实验程序中延时程序段的作用是什么?去掉延时程序段运行结果有何变化?3.8255的口地址是否唯一?怎样确定口地址?六.实验报告要求1.按顺序写出实验步骤和工作内容。

2.写出实验中所遇到的问题极其解决方法或解决思路。

3.写出实验思考题答案。

七.参考程序0000 1 ORG 0000H0000 802E 2 SJMP MAIN30030 4 ORG 0030H0030 908003 5 MAIN: MOV DPTR,#8003H 0033 7480 6 MOV A,#80H 0035 F0 7 MOVX @DPTR,A 0036 7401 8 MOV A,#01H 0038 FD 9 MOV R5,A0039 ED 10 L1: MOV A,R5003A 908000 11 MOV DPTR,#8000H 003D F0 12 MOVX @DPTR,A 003E A3 13 INC DPTR003F F0 14 MOVX @DPTR,A 0040 7FFF 15 MOV R7,#0FFH 0042 7EFF 16 L2: MOV R6,#0FFH 0044 DEFE 17 L3: DJNZ R6,L3 0046 DFFA 18 DJNZ R7,L2 0048 ED 19 MOV A,R50049 23 20 RL A004A FD 21 MOV R5,A004B 80EC 22 SJMP L1。

8255 0 方式应用: 声光报警器接口设计

8255 0 方式应用: 声光报警器接口设计

8255 0 方式应用:声光报警器接口设计stack segmentdw 200 dup(?)stack endsdata segment para public 'data't dw 0 ; 初始化延时变量0data endscode segment para public 'code'assume ss:stack ,cs:code,ds:datasl proc farstart: mov ax,stackmov ss,axmov ax,datamov ds,axmov dx,303hmov al,10000011b;0方式,a端口pc4~pc7输出;;b端口pc0~pc3 输出out dx,almov dx,300h ;led全灭(pa0~pa7全部置零)mov al,00hout dx,almov dx,303h ;关闭spk(置pc6=0)mov al,00001100bout dx,alwait1: mov dx,302h ;查sw按下?(pc2=0?)in al,dxand al,04hjnz wait1 ;sw未按下,等待begin:call led_flash ;调用led发光子程序mov bx,200mov t,0fffhspeak_h: call outspk ;调用喇叭发声高频子程序dec bxjnz speak_hmov dx,300h ;led全灭mov al,00hout dx,almov bx,200mov t,09fffhspeak_l: call outspk ; 调用喇叭发声低频子程序dec bxjnz speak_lcall delay2mov dx,301h ; 查dip0按下?(pb0=0?)in al.dxand al,01hjnz begin ;dip0未按下,继续mov dx,300hmov al,00hout dx,almov dx,303hmov al,0chout dx, almov ah,4chint 21hsl endpdelay1 procpush bxmov bx,tdl1: dec bxjnz dl1pop bxretdelay1 endpdelay2 procpush cxpush bxmov cx,04fffhdl4: mov bx,0ffffhdl3: dec bxjnz dl3dec cxjnz dl4pop bxpop cxretdelay2 endpoutspk procmov dx,303hmov al,00001101bout dx,alcall delay1mov dx,303hmov al,00001100bout dx,alcall delay1retoutspk endp led_FLASH PROCMOV DX,300Hmov al,011111111bout dx,alretled_flash endp code endsend start。

声光报警器

声光报警器

课程设计题目声光报警器的设计学院计算机科学与技术专业计算机科学与技术班级0703姓名杨柳指导教师唐建雄2010 年7 月9 日接口课程设计任务书学生姓名杨柳专业班级计算机0703指导老师唐建雄工作单位计算机科学与技术学院题目:声光报警器的设计一、目的熟悉可编程并行接口芯片8255的使用,学习开关、扬声器、LED等I/O设备的控制方法,并进一步掌握简单的微机接口应用系统的设计。

二.内容:设计一个声光报警器的硬件电路和控制程序。

一旦按下SW3按钮开关,发光二级管按规律闪烁,同时扬声器发出声音;当按下SW2按钮开关,发光二级管停止闪烁,声音停止。

硬件设备包括一台微机、一个MIFID微机实验箱、插线若干。

控制程序采用Intel8088宏汇编语言编写。

三.要求:1.针对设计内容,提出两种设计方案,要求分别采用查询方式和中断方式接受SW3的开关信号。

(采用中断方式时,使用IRQ10接受中断信号。

)2.针对每种设计方案进行硬件设计和软件设计:画出每种设计方案的硬件连接图;并按照硬件连接设计相应的控制程序。

3.在MIFID微机实验箱上调试,并通过验收。

4.撰写课程设计报告,报告中应该包括以下内容:设计中使用的关键技术和方法,设计方案说明(包括硬件设计和软件设计),调试及评估,遇到的问题及思考以及改进的设想。

四.进度安排:指导教师签名:年月日系主任(责任教师)签名:年月日声光报警器的设计一、系统描述:1.课程设计的目的熟悉可编程并行接口芯片8255的使用,学习开关、扬声器、LED等I/O设备的控制方法,并进一步掌握简单的微机接口应用系统的设计。

2.问题域描述[1]课程设计内容设计一个声光报警器的硬件电路和控制程序。

一旦按下SW3按钮开关,发光二级管按规律闪烁,同时扬声器发出声音;当按下SW2按钮开关,发光二级管停止闪烁,声音停止。

硬件设备包括一台微机、一个MIFID微机实验箱、插线若干。

控制程序采用Intel8088宏汇编语言编写。

声光报警器实验

声光报警器实验

8255A 并行实验(一)选做一、实验目的进一步熟悉可编程并行接口芯片8255的使用和学习开关量接口电路及其控制程序的设计方法。

二、实验内容编写程序控制音乐发生器和LED 工作使他们组成声光报警装置,自己设置按键来控制音乐发生器启停。

三、实验要求利用MFID 实验平台和声-光报警器模块进行硬件电路连接,利用MF2KI 集成开发环境进行声光报警器软件控制程序设计、调试,直到报警器正常工作。

四、实验原理1.声-光报警器模块板电路原理如图4.1所示。

模块板上包括4种简单的I/O 外设:扬声器、8个LED 彩灯、8位DIP 开关及按钮开关SW3。

它们都是并行接口的对象,虽然功能单一,结构简单,但都必须通过接口电路才能进入微机系统,接受CPU 的控制,发挥相应的作用。

2.声-光报警器接口的设计原理与方法,参考计算机接口技术相关参考书。

图4.1 声-光报警器模块板电路原理框图五、实验步骤:1.准备工作将实验平台的电源开关拔到“内”的位置。

启动“MF2KI ”集成环境,对8255芯片进行测试,确保工作正常。

2.硬件连线:(1)跳线设置:如果采用单线连接,则将模块电源L 区JP7和JP8跳接;如果采用排线连接,则将模块电源L 区JP8跳接。

26 芯 并 行 口 插 座50 芯 扩 展 总 线(2)单线连法如右图:(3)排线接法如右图:3.程序设计、编译、连接、运行在“虚拟课堂”——“参考程序”页面中,下载8255并行实验(一):soundl.asm程序到本地机器的E盘目录下,对照实验原理和程序流程图把相应空格处的代码填写好,然后对程序进行调试、运行。

4.实验观察记录实验现象,对照实验现象分析参考程序,得出结论。

附:(1)程序流程图:(2)参考程序:stack1 segmentdw200dup (?)stack1 endsdata segment para public 'data'message db 'press SW3 to start !',0ah,0dh;系统提示db 'if you want to quit, please hit Any Key!',0ah,0dh,'$'t dw0;初始化延时变量为0 num dw0;初始化数字变量为0data7 db81h,42h,24h,18h,81h,42h,24h,18hdata endscode segment para public 'code'assume ss:stack1,cs:code,ds:datasl proc farstart: mov ax,stack1mov ss,axmov ax,datamov ds,axmov ah,09h;显示系统提示mov dx,seg messagemov ds,dxmov dx,offset messageint21hmov dx,303h;初始化8255mov al,083hout dx,almov dx,300h;LED全灭mov al,00hout dx,almov dx,303h;关闭SPKmov al,0chout dx,alwait1: mov dx,302h;查SW3按下?in al,dx;(PC2=0?)and al,04hjnz wait1 ;未按下,等待begin: call ledflash ;已按下,调用LED发光子程mov bx,200mov t,0ffffhhison: call outspk ;调用喇叭发声子程(高频)dec bxjnz hisonmov dx,300h;LED全灭mov al,00hout dx,almov bx,200mov t,0afhloson: call outspk ;调用喇叭发声子程(低频)jnz losoncall delay2mov ah,0bh;查任意键按下?int21hcmp al,0ffhje quit ;有任意键按下,退出jmp begin ;无任意键按下,继续quit: mov dx,300h;LED全灭mov al,00hout dx,almov dx,303h;关闭SPKmov al,0chout dx,almov ah,4chint21h;返回DOSsl endpdelay1 proc;延时子程1push bxmov bx,tjnz dl1pop bxretdelay1 endpdelay2 proc;延时子程2 push cxpush bxmov cx,04ffhdl4: mov bx,0ffffhdl3: dec bxjnz dl3dec cxjnz dl4pop bxpop cxretdelay2 endpoutspk proc;喇叭发声子程mov dx,303h;从PC6输出方波mov al,0dh;置PC6=1;out dx,alcall delay1mov dx,303hmov al,0ch;置PC6=0;out dx,alcall delay1retoutspk endpledflash proc;LED发光子程序mov si,offset data7 ;LED的点亮代码add si,num mov al,[si]mov dx,300h;从8255的A口输出LED点亮代码out dx,alinc numcmp num,08hjne nextmov num,00hnext: ret ledflash endpcode endsend start。

声光报警器实验

声光报警器实验

8255A 并行实验(一)选做一、实验目的进一步熟悉可编程并行接口芯片8255的使用和学习开关量接口电路及其控制程序的设计方法。

二、实验内容编写程序控制音乐发生器和LED 工作使他们组成声光报警装置,自己设置按键来控制音乐发生器启停。

三、实验要求利用MFID 实验平台和声-光报警器模块进行硬件电路连接,利用MF2KI 集成开发环境进行声光报警器软件控制程序设计、调试,直到报警器正常工作。

四、实验原理1.声-光报警器模块板电路原理如图4.1所示。

模块板上包括4种简单的I/O 外设:扬声器、8个LED 彩灯、8位DIP 开关及按钮开关SW3。

它们都是并行接口的对象,虽然功能单一,结构简单,但都必须通过接口电路才能进入微机系统,接受CPU 的控制,发挥相应的作用。

2.声-光报警器接口的设计原理与方法,参考计算机接口技术相关参考书。

图4.1 声-光报警器模块板电路原理框图五、实验步骤:26 芯 并 行 口 插 座50 芯 扩 展 总 线1.准备工作将实验平台的电源开关拔到“内”的位置。

启动“MF2KI”集成环境,对8255芯片进行测试,确保工作正常。

2.硬件连线:(1)跳线设置:如果采用单线连接,则将模块电源L区JP7和JP8跳接;如果采用排线连接,则将模块电源L区JP8跳接。

(2)单线连法如右图:(3)排线接法如右图:3.程序设计、编译、连接、运行在“虚拟课堂”——“参考程序”页面中,下载8255并行实验(一):soundl.asm程序到本地机器的E盘目录下,对照实验原理和程序流程图把相应空格处的代码填写好,然后对程序进行调试、运行。

4.实验观察记录实验现象,对照实验现象分析参考程序,得出结论。

附:(1)程序流程图:(2)参考程序:stack1 segmentdw 200 dup (?)stack1 endsdata segment para public 'data'message db'press SW3 to start !',0ah,0dh ;系统提示db'if you want to quit, please hit Any Key!',0ah,0dh,'$' t dw 0 ;初始化延时变量为0 num dw 0 ;初始化数字变量为0 data7 db 81h,42h,24h,18h,81h,42h,24h,18hdata endscode segment para public 'code'assume ss:stack1,cs:code,ds:datasl proc farstart: mov ax,stack1mov ss,axmov ax,datamov ds,axmov ah,09h ;显示系统提示mov dx,seg messagemov ds,dxmov dx,offset messageint 21hmov dx,303h ;初始化8255mov al,083hout dx,almov dx,300h ;LED全灭mov al,00hout dx,almov dx,303h ;关闭SPKmov al,0chout dx,alwait1: mov dx,302h ;查SW3按下?in al,dx ;(PC2=0?)and al,04hjnz wait1 ;未按下,等待begin: call ledflash ;已按下,调用LED发光子程mov bx,200mov t,0ffffhhison: call outspk ;调用喇叭发声子程(高频)dec bxjnz hisonmov dx,300h ;LED全灭mov al,00hout dx,almov bx,200mov t,0afhloson: call outspk ;调用喇叭发声子程(低频)dec bxjnz losoncall delay2mov ah,0bh ;查任意键按下?int 21hcmp al,0ffhje quit ;有任意键按下,退出jmp begin ;无任意键按下,继续quit: mov dx,300h ;LED全灭mov al,00hout dx,almov dx,303h ;关闭SPKmov al,0chout dx,almov ah,4chint 21h ;返回DOS sl endpdelay1 proc;延时子程1 push bxdl1: dec bxjnz dl1pop bxretdelay1 endpdelay2 proc;延时子程2 push cxmov cx,04ffh dl4: mov bx,0ffffh dl3: dec bxjnz dl3dec cxjnz dl4pop bxpop cxretdelay2 endpoutspk proc;喇叭发声子程mov dx,303h ;从PC6输出方波mov al,0dh ;置PC6=1;out dx,alcall delay1mov dx,303hmov al,0ch ;置PC6=0;out dx,alcall delay1retoutspk endpledflash proc;LED发光子程序mov si,offset data7 ;LED的点亮代码add si,nummov al,[si]mov dx,300h ;从8255的A口输出LED点亮代码out dx,alinc numcmp num,08hjne nextmov num,00h next: retledflash endpcode endsend startWelcome To Download !!!欢迎您的下载,资料仅供参考!。

正文

正文

(一).设计原理对于本次设计我利用A/D转换器,8255完成了设计内容。

用A/D转换结果实行水位的控制,当转换结果为1时才能顺序执行。

当转换结果在00-3f时,绿灯亮;在3f-5f时时,是红灯亮;在5f-ff时时,是红灯和绿灯都亮;然后调节a/d电压旋钮,逆时针调小电压,顺时针调大电压,从而实现各个段的警灯亮灭。

接线方式为:A/D的D0口接系统的D0相应接口;CS接系统的P26;WR接系统的WR;RD接系统的RD;cCLK接时钟发生源1MHz;eoc接系统的P3口;IN0接A/D 的ADJ0~5V;ABC接GND.8255接法:D0接系统的D0口;CS接系统的P27WR接系统的WR;RD接系统的RD; A口接LED;A0,A1口接系统的A0,A1。

水位情况(见表1)。

表.1A/D 水位灯00-3F 低水位绿灯亮3F-5F 中水位红灯亮5F-FF 高水位红绿灯全亮在设计时我们用了四块程序:第一块为绿灯亮,代表水位偏低,第二块红灯亮,代表中水位,第三块为红灯和绿灯都亮,代表高水位。

同时,我应用了第四部分程序,第四块中我用了一个子程序调用指令(LCALL 指令)来调用一个延时程序让灯持久亮,再用一个取反指令让红灯亮。

在设计程序中,我们还应用了很多指令来进行控制,如判断直接寻址位转移指令(JNB指令,若为0,则转移,若为1继续往下执行),相对短转移指令(SJMP指令)等等,通过这些指令进而完成了程序的设计,以实现了对水位的监测。

开始A/D=1?执行8255 灯亮(报警)延时判断水位YNY(四)程序清单及说明org 0000hini8255:mov dptr,#7fffh ;控制口入口地址 mov a,#80hmovx @dptr,amov r0,#50hadc0809:mov dptr,#0bff8h ;P2.6口mov a,#00h ;0通道movx @dptr,aljmp dly1mov dptr,#0bff8hmovx a,@dptrmov @r0,acjne @r0,#3fh,n1e ;比较不相等转到n1e ljmp llmov r0,#4fhnt1:cjne @r0,#5fh,ne1ljmp hlnt2:cjne @r0,#0ffh,ne2n1e:jnc nt1 ;cy=0时跳到nt1ljmp ne2ll:mov a,#0f0h ;红灯亮mov dptr,#7ffchmovx @dptr,alcall dly1sjmp adc0809ne1:jnc nt2hl:mov a,#0ffh ;红绿全亮ini82553:mov dptr,#7ffch ;A口输出movx @dptr,alcall dly1ljmp adc0809ne2:mov a,#0fhmov dptr,#7ffchmovx @dptr,alcall dly1ljmp adc0809dly:mov r6,#0ffh ;延时dly1:mov r5,#0ffhdly2:mov r4,#0ffhdly3:djnz r4,dly3djnz r5,dly2djnz r6,dly1retend(五).指令说明1.伪指令:在汇编语言源程序中用MCS-51指令助记符编写的程序,都回一一对应地产生目标程序。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

8255 0 方式应用:声光报警器接口设计
stack segment
dw 200 dup(?)
stack ends
data segment para public 'data'
t dw 0 ; 初始化延时变量0
data ends
code segment para public 'code'
assume ss:stack ,cs:code,ds:data
sl proc far
start: mov ax,stack
mov ss,ax
mov ax,data
mov ds,ax
mov dx,303h
mov al,10000011b;0方式,a端口pc4~pc7输出;
;b端口pc0~pc3 输出out dx,al
mov dx,300h ;led全灭(pa0~pa7全部置零)
mov al,00h
out dx,al
mov dx,303h ;关闭spk(置pc6=0)
mov al,00001100b
out dx,al
wait1: mov dx,302h ;查sw按下?(pc2=0?)
in al,dx
and al,04h
jnz wait1 ;sw未按下,等待
begin:call led_flash ;调用led发光子程序
mov bx,200
mov t,0fffh
speak_h: call outspk ;调用喇叭发声高频子程序
dec bx
jnz speak_h
mov dx,300h ;led全灭
mov al,00h
out dx,al
mov bx,200
mov t,09fffh
speak_l: call outspk ; 调用喇叭发声低频子程序
dec bx
jnz speak_l
call delay2
mov dx,301h ; 查dip0按下?(pb0=0?)
in al.dx
and al,01h
jnz begin ;dip0未按下,继续
mov dx,300h
mov al,00h
out dx,al
mov dx,303h
mov al,0ch
out dx, al
mov ah,4ch
int 21h
sl endp
delay1 proc
push bx
mov bx,t
dl1: dec bx
jnz dl1
pop bx
ret
delay1 endp
delay2 proc
push cx
push bx
mov cx,04fffh
dl4: mov bx,0ffffh
dl3: dec bx
jnz dl3
dec cx
jnz dl4
pop bx
pop cx
ret
delay2 endp
outspk proc
mov dx,303h
mov al,00001101b
out dx,al
call delay1
mov dx,303h
mov al,00001100b
out dx,al
call delay1
ret
outspk endp led_FLASH PROC
MOV DX,300H
mov al,011111111b
out dx,al
ret
led_flash endp code ends
end start。

相关文档
最新文档