单片机c语言中断程序实验报告,单片机实验之外部中断应用实验
一、实验目的
1、掌握中断系统外部中断源的使用方法。 2、掌握延时程序的编程及使用方法。
3、掌握Proteus软件与Keil软件的使用方法。
4、掌握单片机系统的硬件和软件设计方法。 二、设计要求
1、用Proteus软件画出电路原理图,在单片机的P1.0口线上接按键K0 ,作为外部中断源0使用,用于开启波形,在单片机的 P1.1口线上接按键K1,作为外部中断源1使用,用于关闭波形。
2、在单片机的P1.2口线上产生周期50mS的连续方波,在P1.2口线上接示波器观察波形。 三、电路原理图
六、实验总结
通过本实验能够准确安排各种类型的中断服务程序入口,中断源提出中断申请后,却执行到相应的中断服务程序。弄清楚了中断服务程序与子程序的共同点和不同点。 七、思考题
1、在P1.2口线上产生周期为100mS,占空比为2:5的连续矩形波,要求只采用按键K0来控制其开启和关闭。
答:程序见程序清单。
四、实验程序流程框图和程序清单。
1、在单片机的P1.2口线上产生周期50mS的连续方波。P1.0口线上接按键K0 ,作为外部中断源0使用,用于开启波形, P1.1口线上接按键K1,作为外部中断源1使用,用于关闭波形。 汇编程序:
ORG 0000H
START: LJMP MAIN ORG 0003H LJMP EXT0 ORG 000BH LJMP TTCO ORG 0013H LJMP EXT1 ORG 0100H MAIN: MOV TMOD, #01H MOV TCON, #01H MOV IE, #87H MOV TH0, #9EH
MOV TL0, #58H
SETB PX1 HERE: LJMP HERE EXT0: SETB TR0
RETI
EXT1: CLR TR0 RETI TTCO: CPL P1.2 MOV TH0, #9EH MOV TL0, #58H RETI END C语言程序: #include sbit P12=P1^2; main() { TMOD=0X01; EA=1; EX0=1; EX1=1;
ET0=1; PX1=1;
TCON=0X01; TH0=0X9E;
TL0=0X58;
while(1); }
void EXT0() interrupt 0 { TR0=1; }
void EXT1() interrupt 2 { TR0=0; }
void TTC0() interrupt 1 { P12=!P12; TH0=0X9E; TL0=0X58; }
2、在P1.2口线上产生周期为100mS,占空比为2:5的连续矩形波,要求只采用按键K0来控制其开启和关闭。 汇编程序:
ORG 0000H START: LJMP MAIN ORG 0003H LJMP EXT0 ORG 0100H
MAIN: MOV TMOD, #11H MOV TCON, #01H SETB EA SETB EX0 CLR C
LOOP1: JNB TF0, LOOP1
MOV TH0, #63H MOV TL0, #0C0H CLR TF0 CLR TR0 CPL P1.2 SETB TR1
LOOP2: JNB TF1, LOOP2 MOV TH1, #15H MOV TL1, #0A0H CLR TF1 CLR TR1 CPL P1.2 SETB TR0
LJMP LOOP1 ORG 0200H EXT0: JC STOP SETB C
MOV TH0, #63H
MOV TL0, #0C0H
MOV TH1, #15H MOV TL1, #0A0H SETB TR0 RETI STOP: CLR TR0 CLR TR1 CLR C END C语言程序: #include"REG52.H" sbit P12 = P1^2; void main() {
EA=1; EX0=1; TMOD=0X11; TCON=0X01; CY=0; while(1)
{while(TF0) {
P12=!P12; TF0=0; TR0=0; TH1=0X15;
TL1=0XA0; TR1=1; }
while(TF1) { P12=!P12; TF1=0; TR1=0; TH0=0X63; TL0=0XC0; TR0=1; } } }
void EXT0() interrupt 0 {if(!CY) {CY=1;
TH0=0X63; TL0=0XC0; TR0=1; } else { CY=0; TR0=0; TR1=0; } }
五、实验结果(波形图)
单片机c语言中断程序实验报告,单片机实验之外部中断应用实验相关推荐
- 单片机c语言ad与da转换实验报告,单片机AD与DA转换实验报告.docx
单片机AD与DA转换实验报告.docx 下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览.不比对内容而直接下载带来的问题本站不予受理. 2.下载的文档,不会出现我们的网址水印. 3 ...
- 51c语言单片机io口控制实验报告,单片机I/O口控制实验
描述 实验 单片机I/O 口控制实验 一. 实验目的 利用单片机的P1 口作IO 口,使用户学会利用P1 口作为输入和输出口. 二. 实验设备及器件 IBM PC 机 一台 DP-51PROC 单片机 ...
- pic单片机延时程序C语言,PIC单片机C语言延时程序和循环子程序实现方法
PIC单片机C语言延时程序和循环子程序实现方法 很多朋友说C中不能精确控制延时时间,不能象汇编那样直观. 其实不然,对延时函数深入了解一下就能设计出一个理想的框价出来. 一般的我们都用 for(x=1 ...
- c语言延时系统,基于VB的单片机C语言延时程序各参数计算系统
仪器仪表用户 doi:10.3969/j.issn.1671-1041.2011.04.013 □科研设计成果□ 基于VB的单片机C语言延时程序各参数计算系统 刘 1 锋,林 奕 2 (1.武汉理工大 ...
- 单片机c语言程序结构,科学网—单片机C语言-程序结构 - 李飞的博文
单片机C语言-程序结构 已有 651 次阅读 2011-3-30 22:29 |系统分类:科研笔记 先来复杂说说C言语的标识符和关键字. 标识符是用来标识源程序中某个对象的名字的, 可以写做" ...
- C语言频率计程序,我的单片机课程设计频率计,含C语言程序、仿真图和原理图等...
#include #include #define uint unsigned int #define uchar unsigned char uchar m=0; uchar u; uint i; ...
- 51单片机c语言试题及答案,最新单片机试题库分章节答案解析(C语言)
精品文档 器中. 三.选择题 1.51单片机在同一优先级的中断源同时申请中断时,首先响应( A ). A. 外部中断0 B. 定时器0中断 C.外部中断1 D. 定时器1中断 2.下列说法错误的是:( ...
- c语言冒泡法排序实验报告,四川大学微机原理冒泡法排序实验报告.doc
四川大学微机原理冒泡法排序实验报告四川大学微机原理冒泡法排序实验报告 <微机原理与接口技术实验报告> 学 院: 电气信息学院 班 级: 电力 老 师: 学 号: 姓 名: 目 录 实验目的 ...
- php运算符实验报告,第二章,第三章实验报告(示例代码)
C程序设计实验报告(第二次) 姓名:熊毅 实验地点:家 实验时间:2020.03.10 实验项目:字符与ASCII码:运算符与表达式的应用:顺序结构应用程序:数学函数:鸡兔同笼:确定坐标 一.实验目的 ...
- 计算机实验报告表九,北理大学计算机实验基础实验九实验报告表-20210617084645.pdf-原创力文档...
WORD格式 五.实验报告 学号: 姓名: 班级: 实验时间: 年 月 日 实验报 告: 图像生成与图像处理 一.填写下载图像的相关数 据: 743 文件名 mengnalisha.jpg 文件大小 ...
最新文章
- 实用目标检测器 | 性能超YoloV5,推理耗时不变(附github源码)
- 【Tensorflow】tf.set_random_seed(seed)
- eclipse neon_在自定义Java 9映像上运行Eclipse Neon
- CentOS6.8 下MySQL5.6.29主从复制架构配置
- sql server 加密_列级SQL Server加密概述
- ORM框架之Mybatis(一)基于mapper配置增删改查
- c语言单片机烧写器,单片机烧写器是什么 烧写器怎么用
- html想实现文字环绕图片,HTML/CSS实现文字环绕图片布局
- 贷款综合管理系统搭建-全流程智能、高效、安全管理解决方案
- SYZOJ - sxy的书包(背包)
- Pyramidal Convolution: Rethinking Convolutional Neural Networks for Visual Recognition阅读笔记
- 重装win10系统后不能上网如何解决?
- linux strace php,在Linux下使用strace窥视Oracle LGWR进程
- vuca 时代_人工智能通过Vuca的镜头窥视未来
- Win10开始菜单打不开怎么办?
- Unix macOS 编写 who 命令
- 『互联网架构』软件架构-深入理解Ribbon
- 【PAT甲级】1146 Topological Order
- 统计之 - 独立性检验
- Android群英传读书笔记-2D绘图基础