




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
试验1 定时与中断接口程序设计一试验目的了解定时器/8253、并行I/O8255A在PC机中的电路连接方法;学习使用TURBOC++8253、8255进展编程操作;生疏拦截PC机中断向量的TC++编程方法。二试验内容1.8253、8255在PC/XT机中的电路连接介绍D7…D0D7…D0D7…D0D7…D0OUT08259IRQ0,中断类型=8IO/MA9…A2地址译码OUT2GATE2CLK0,1,2&放大CS40H~43H1.19MHz地址译码CSPB0PB160H~63H8255IORRDGATE0+5VIOWWRCLK0A0A0OUT18237的DRAMA1A1GATE1CLK1+5VPC机启动后,系统设置的初始状态为:芯片有关工作方式初值运行状况82530#:方式3〔方波发生器〕计数初值:0000HOUT55ms方波至8259的IRQ02#:?〔1KHz〕?(1KHz方波)8255出〕掌握蜂鸣器发声。0:不发声,1:发声8259IRQ0:允许中断中断类型号:8CPU8号中断表中,82532#的工作方式和计数初值未知,要求自己设置。2.程序要求利用TURBOC++开发环境设计程序,实现如下功能:程序启动时,要求输入定时时间,以秒为单位。按秒计时,每秒到达时,在屏幕上显示当前为第几秒,同时蜂鸣器发出短促叫声;TimeUp三试验环境硬件环境:PC机一台;软件环境:操作系统不限,TURBOC++3.0。四试验步骤建立源文件启动TURBOC++3.0,建立Timer.CPPD:\×××〔学号〕\Timer.CPP;设置TC工作名目选菜单Options/Directories1、23、4栏填写您的文件存放名目,OK。如此,TC生成的可执行文件等将会存放到此工作名目下。样例如下:输入源程序以下源程序仅供参考。#include <stdio.h> //支持标准输入输出,如printf。#include <dos.h> //支持接口访问、中断向量操作函数#include <STDLIB.H> //支持exit函数#ifdef cplusplus //定义C++使用的中断函数标识符。假设是×××.C程序,则不需要#define CPPARGS...#else#endif
#define CPPARGSint nTick=0,sec=0,flag=0;unsignedchar sys_PB,my_PB;voidinterruptfar(*sys_int_08)( CPPARGS); //假设是×××.C,则函数参数不写voidinterruptfarmy_int_08( CPPARGS) //假设是×××.C,则函数参数不写{//855ms825308259IRQ0申请中断++nTick;if(tinck==1)outportb(0x61,my_PB); //开头鸣叫elseif(tinck==3) outportb(0x61,sys_PB); //停顿鸣叫elseif(nTick>18){//1second/55ms18flag=1;nTick=0;sec++;}sys_int_08; //调用系统的中断向量}//==========================================void main{ unsigned int Time_up;printf(“PleaseinputUpTime(5--30):“);scanf(“%d“,&Time_up);printf(“\n“);if(Time_up<5||Time_up>30){ printf(“InputError!“);exit(1); //完毕程序}outportb(0x63,0x82);//8255,PB为输入方式sys_PB=inportb(0x61);//PB口,内容my_PB=sys_PB|0x03;//PB2位〔PB0,PB1〕1outportb(0x63,0x80);//8255,PB为输出方式//825321KHz方波,送到扬声器,使扬声器发声outportb(0x43,0xb6);//CW=10110110B23,二进制outportb(0x42,0xa6);//lowbyte,outportb(0x42,0x04);//highbyte,0x04a6=1190,f=1.19MHz,out=f/1190=1000Hzsys_int_08=getvect(0x08); //保存系统的中断向量setvect(0x08,my_int_08); //设置系统向量while(1){ if(flag==1){ flag=0;printf(“%d “,sec);if(sec==Time_up)break;}}printf(“TimerUp!\n\n“);outportb(0x61,sys_PB); //恢复系统的PB口状态setvect(0x08,sys_int_08); //恢复系统的中断向量}运行程序,再完成如下内容〔1〕8253的通道0在程序中起什么作用?为什么在程序中没有对其进展初始化及赋初值?82530#的初值,使计时精度严格为1秒。1000ms。55ms的定时=65535×1/1.19MHzmy_int_08〔〕函数什么时候被调用?将mainDOS环境下执行这个程序。本程序为什么承受DOS环境编写程序,而不承受Windows环境?六试验报告果。试验报告的组成一般为:试验工程名称〔要求严格与本指导书全都、试验日期、场地、承受的软硬件环境,试验者;TV?试验目的:具体写要做成什么,期望得出什么结果。不要照抄本指导书。试验过程:具体写操作的过程,对于源程序,不肯定全部写出,但应画出模块图、流程图。核心代码可写出。特别要写出试验中遇到的问题及分析、解决方法。试验结果及分析:照实写出结果,对结果进展分析,可进一步提出改进、提高的方法。试验1 定时与中断接口程序设计一试验目的了解定时器/8253、并行I/O8255A在PC机中的电路连接方法;学习使用TURBOC++8253、8255进展编程操作;生疏拦截PC机中断向量的TC++编程方法。二试验内容1.8253、8255在PC/XT机中的电路连接介绍D7…D0D7…D0D7…D0D7…D0OUT08259IRQ0,中断类型=8IO/MA9…A2地址译码OUT2GATE2CLK0,1,2&放大CS40H~43H1.19MHz地址译码CSPB0PB160H~63H8255IORRDGATE0+5VIOWWRCLK0A0A0OUT18237的DRAMA1A1GATE1CLK1+5VPC机启动后,系统设置的初始状态为:芯片有关工作方式初值运行状况82530#:方式3〔方波发生器〕计数初值:0000HOUT55ms方波至8259的IRQ02#:?〔1KHz〕?(1KHz方波)8255出〕掌握蜂鸣器发声。0:不发声,1:发声8259IRQ0:允许中断中断类型号:8CPU8号中断表中,82532#的工作方式和计数初值未知,要求自己设置。2.程序要求利用TURBOC++开发环境设计程序,实现如下功能:程序启动时,要求输入定时时间,以秒为单位。按秒计时,每秒到达时,在屏幕上显示当前为第几秒,同时蜂鸣器发出短促叫声;TimeUp三试验环境硬件环境:PC机一台;软件环境:操作系统不限,TURBOC++3.0。四试验步骤建立源文件启动TURBOC++3.0,建立Timer.CPPD:\×××〔学号〕\Timer.CPP;设置TC工作名目选菜单Options/Directories1、23、4栏填写您的文件存放名目,OK。如此,TC生成的可执行文件等将会存放到此工作名目下。样例如下:输入源程序以下源程序仅供参考。#include <stdio.h> //支持标准输入输出,如printf。#include <dos.h> //支持接口访问、中断向量操作函数#include <STDLIB.H> //支持exit函数#ifdef cplusplus //定义C++使用的中断函数标识符。假设是×××.C程序,则不需要#define CPPARGS...#else#endif
#define CPPARGSint nTick=0,sec=0,flag=0;unsignedchar sys_PB,my_PB;voidinterruptfar(*sys_int_08)( CPPARGS); //假设是×××.C,则函数参数不写voidinterruptfarmy_int_08( CPPARGS) //假设是×××.C,则函数参数不写{//855ms825308259IRQ0申请中断++nTick;if(tinck==1)outportb(0x61,my_PB); //开头鸣叫elseif(tinck==3) outportb(0x61,sys_PB); //停顿鸣叫elseif(nTick>18){//1second/55ms18flag=1;nTick=0;sec++;}sys_int_08; //调用系统的中断向量}//==========================================void main{ unsigned int Time_up;printf(“PleaseinputUpTime(5--30):“);scanf(“%d“,&Time_up);printf(“\n“);if(Time_up<5||Time_up>30){ printf(“InputError!“);exit(1); //完毕程序}outportb(0x63,0x82);//8255,PB为输入方式sys_PB=inportb(0x61);//PB口,内容my_PB=sys_PB|0x03;//PB2位〔PB0,PB1〕1outportb(0x63,0x80);//8255,PB为输出方式//825321KHz方波,送到扬声器,使扬声器发声outportb(0x43,0xb6);//CW=10110110B23,二进制outportb(0x42,0xa6);//lowbyte,outportb(0x42,0x04);//highbyte,0x04a6=1190,f=1.19MHz,out=f/1190=1000Hzsys_int_08=getvect(0x08); //保存系统的中断向量setvect(0x08,my_int_08); //设置系统向量while(1){ if(flag==1){ flag=0;printf(“%d “,sec);if(sec==Time_up)break;}}printf(“TimerUp!\n\n“);outportb(0x61,sys_PB); //恢复系统的PB口状态setvect(0x08,sys_int_08); //恢复系统的中断向量}运行程序,再完成如下内容〔1〕8253的通道0在程序中起什么作用?为什么在程序中没有对其进展初始化及赋初值?82530#的初值,使计时精度严格为1秒。1000ms。55ms的定时=65535×1/1.19MHzmy_int_08〔〕函数什么时候被调用?将mai
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 菜摊租赁合同范本
- 股东增资扩股合同范本
- MRX343-生命科学试剂-MCE
- Cloniprazepam-生命科学试剂-MCE
- BP-Fluor-568-NHS-ester-生命科学试剂-MCE
- Alfalone-生命科学试剂-MCE
- 5-Bromo-1-methyl-1H-indazole-d3-生命科学试剂-MCE
- 4-1-Piperazinyl-1H-Indole-hydrochloride-4-Piperazinoindole-hydrochloride-生命科学试剂-MCE
- 饲料合同范本
- 2025年煤焦化产品合作协议书
- 综合应用能力事业单位考试(综合管理类A类)试题及解答参考
- 阿尔兹海默病的家庭护理
- bim技术课件教学课件
- 腹水形成的原因及治疗
- 单晶炉车间安全培训
- 高中地理必修第一册期末试卷及答案-中图版-2024-2025学年
- 护理核心制度测试题+参考答案
- 机械制造技术基础(课程课件完整版)
- 《2023版CSCO卵巢癌诊疗指南》解读课件
- 【医院药品管理系统探析与设计(论文)10000字】
- 螺旋体病梅毒课件
评论
0/150
提交评论