编写 完成外部中断1控制LED亮灭变化的中断初始化程序与中断服务程序。中断初始化化程序定义为void int1_csh(void) { };中断服务程序定义为void int1()interrupt 2 using 1{ }要求用电平触发方式,优先级最高,每中断1次,P2.0口外接的LED亮灭变化1次,端口已定义为LED。(只需在{}中添加语句)。 void int1_csh(void) { } void int1()interrupt 2 using 1 { }
编写 完成外部中断1控制LED亮灭变化的中断初始化程序与中断服务程序。中断初始化化程序定义为void int1_csh(void) { };中断服务程序定义为void int1()interrupt 2 using 1{ }要求用电平触发方式,优先级最高,每中断1次,P2.0口外接的LED亮灭变化1次,端口已定义为LED。(只需在{}中添加语句)。 void int1_csh(void) { } void int1()interrupt 2 using 1 { }
参考答案和解析
#include <reg51.h> // 包含头文件,声明各个特殊功能寄存器 #define uchar unsigned char // 为了书写方便,定义uchar表示无符号字符型 sbit light=P0^0; // 定义变量light表示P0口的P0.0引脚 sbit flag; void delay05s(void) // 定义延时0.5s函数 { uchar i,j,k; for (i=0;i<5;i++) { for (j=0;j<200;j++) { for (k=0;k<250;k++) {;} } } } void main() // 主函数 { IT0=1; // 外部中断0,下降沿中断 EX0=1; // 允许外部中断0申请中断中断 EA=1; while(flag) //while 循环,当条件为真(只有0为假)执行下面的循环 { // 体,由于条件恒为真,所以构成无限次循环 light=0; // 给P2.0赋值0,使P2.0输出低电平, LED点亮 delay05s(); // 延时0.5s light=1; // 给P2.0赋值1,使P2.0输出高电平, LED熄灭 delay05s(); // 延时0.5s } } Void int_0( ) interrupt 0 { flag=~flag; }
相关考题:
下列程序的运行结果为【】。 include void main(void) {int a=2,b=-1,c=2; if(a 下列程序的运行结果为【 】。include<iostream.h>void main(void){int a=2,b=-1,c=2;if(a<b)if(b<0)c=0;else c=c+1;cout<<c<<endl;}
有如下程序include using namespace std;class A{public:virtual void func1 (){ cou 有如下程序#include <iostream>using namespace std;class A{public:virtual void func1 (){ cout<<"A1"; }void func2(){ cout<<"A2"; }};class B: public A{public:void func l(){ cout<<"B1"; }void func2(){ cout<<"B2"; }};int main() {A *p=new B;p->func1();p->func2();return 0;}运行此程序,屏幕上将显示输出( )。A.B1B2B.A1A2C.B1A2D.A1B2
以下程序的输出结果为【】。 include using namespace std; void initialize(int printNo 以下程序的输出结果为【 】。include<iostream>using namespace std;void initialize(int printNo,int state=0);void initialize(int printNo=l,int state);int main(){initialize();return 0;}void initialize(int printNo,int state){cout<<printNo<<","<<state<<end1;}
下面程序运行时输出结果为【】。 include include class Rect { public: Rec 下面程序运行时输出结果为【 】。include<iostream.h>include<malloc.h>class Rect{public:Rect(int1,int w)(length=1;width=w;)void Print(){cout<<"Area:"<<length *width<<endl;)void *operator new(size-t size){return malloc(size);}void operator delete(void *p){free(p)private:int length,width;};void main(){Rect*p;p=new Rect(5,4);p->Print();delete p;}
下列程序的输出结果为2,请将程序补充完整。 inelude using namespace std; class Bas 下列程序的输出结果为2,请将程序补充完整。inelude<iostream.h>using namespace std;class Base{public:______ void fun( ){cout<<1;}};class Derived: public Base{pbulic:void fubn( ){cout<<2;}};int main( ){Base*P=new Derived;P→fun( );delete P;return 0;}
有如下程序:includeusing namespace std;class Base{public:void output( ){cout 有如下程序: #include<iostream> using namespace std; class Base{ public: void output( ){cout<<l;} virtual void Print( ){cout<<'B';} }; class Derived:public Base{ public: void output( ){cout<<1;} void Print( ){cout<<'D';} }; int main( ){ Base*prt=new Derived; prt->output( ); prt->Print( ); delete prt; return 0; } 程序的输出结果是A.1BB.1DC.2BD.2D
下面程序的运行结果为( )。include using namespace std;void main( ) { for(int a =0 下面程序的运行结果为( )。 #include <iostream> using namespace std; void main( ) { for(int a =0,x =0; !xa < =10; a ++ ); cout << a << endl;A.0B.1C.10D.11
下面程序执行后的结果是()。includeusing namespace std;void func1(int i);void func 下面程序执行后的结果是( )。 #include<iostream> using namespace std; void func1(int i); void func2(int i); char st[]="hello, friend!"; void func1(int i) { cout<<st[i]; if(i<3){i+=2;func2(i);} } void func2(int i) { cout<<st[i]; if(i<3){i+=2;func1(i);} } void main() { int i=0;func1(i);cout<<endl;}A.elloB.helC.hloD.him
下面程序的输出结果为【】。include using namespace std;void initialize(int printNo,i 下面程序的输出结果为【 】。include <iostream>using namespace std;void initialize(int printNo,int state=0);void initialize(int printNo=1,int state);int main(){initialize();return 0;}void initialize(int printNo, int state){cout<<printNo<<","<<state<<end1;}
有如下程序: #inCludeiostream using namespaCe std; Class Base{ publiC: void output{Cout1;} virtual void Print{CoutB’;} }; Class Derived:publiC Base{ publiC: void output{Cout2;} void Print{Cout’D ;} }; int main { Base * ptr=new Derived; ptr一output; ptr一Print; delete ptr; retum0; } 执行这个程序的输出结果是( )。A.1BB.lDC.2BD.2D
有如下程序:includeusing namespace std;class A{public:virtual void func1(){cout 有如下程序: #include<iostream> using namespace std; class A{ public: virtual void func1(){cout<<"A1";} void func2(){cout<<"A2";} }; class B:public A{ public: void func1(){cout<<"B1";} void func2(){cout<<"B2";} }; int main() { A *p=new B; p->func1(); p->func2(); return 0; } 执行该程序,屏幕上将显示输出( )。A.B1B2B.A1A2C.B1A2D.A1B2
以下程序的执行结果为【】。 include using namespace std; void overload(int num) {cou 以下程序的执行结果为【 】。include<iostream>using namespace std;void overload(int num){cout<<num<<end1;}void overload(char ch){char c=ch+1;cout<<c<<end1;}int main(){overload('X');return 0;}
有以下程序:include using namespace std;class A{public: virtual void show() {cout 有以下程序:include <iostream>using namespace std;class A{public:virtual void show(){cout<<"A";}};class B : public A{public:void show(){cout << "B";}};void display( A * obj ){obj-> show();}int main ( ){A demol;B demo2;display( demol );display( demo2 );return 0;}执行后的输出结果为【 】。
有以下程序:include using namespace std;void fun(int i,int j){ cout 有以下程序: #include <iostream> using namespace std; void fun(int i,int j) { cout<<(i+j)<<end1; } void fun(int i) { cout<<i++<<end1; } int main() { int a=1; fun(A) ; return 0; } 该程序执行后的输出结果是( )。A.1B.2C.3D.4
使用VC6打开考生文件夹下的工程MyProj10。此工程包含一个源程序文件MyMain10.cpp。程序中定义了两个类Base和Derived,但类的定义并不完整。请按要求完成下列操作,将类的定义补充完成:①类Derived是基类Base公有派生来的。请在注释“//* *1* *”之后添加适当的语句。②完成构造函数Derived(int i)定义,采用初始化列表的方式使基类Base私有成员a初始化为i+1,类Derived的私有成员b初始化为i。请在注释“//* *2* *”之后添加适当的语句。③完成类Derived的成员函数show()的类体外的定义。函数show()中要显式调用基类的show()函数,然后要输出私有成员b的值。请在注释“//* *3**”之后添加适当的语句。注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。源程序文件MyMain10.cpp清单如下://MyMain10.cppinclude<iostream>using namespace std;class Base{public:Base(int x){a=x}void show(){cout<<a;}private:int a;};//* * *1* * *{public://* * * 2 * * *void show();private:int b;};void Derived :: show(){//* * * 3 * * *}int main(){Derived d(1), *pb;pb=d;pb->show();return 0;}
有下列程序:inCludeusing namespace std;c1ass A{pubic:virmal void func1(){cout 有下列程序: #inClude<iostream> using namespace std; c1ass A{ pubic: virmal void func1(){cout<<"A1";} void func2(){cout<<"A2";} }; c1ass B:public A{ publIc: void func1(){cout<<"B1";} void func2(){cout<<"B2"A.B182B.A1A2C.B1A2D.A182
有如下程序:nclude using namespace std;class Base{public:void fun1() {cout 有如下程序:#nclude <iostream>using namespace std;class Base{ public:void fun1() {cout << "Base\n"; }virtual void fun2() {cout << "Base\n"; }};class Derived: public Base{ public:void fun1() {cout << "Derived\n"; }void fun2() {cout << "Derived\n"; }} void f(Base b) { B. fun1(); B. fun2(); }int main(){Derived obj;f(obj);return 0;}A.Base BaseB.Base DerivedC.Derived BaseD.Derived Derived
下列程序的输出结果为2,横线处应添加语句()。includeusing namespace std;{public:___ 下列程序的输出结果为2,横线处应添加语句( )。 #include<iostream> using namespace std; { public: ______void fun(){cout<<1;} }; class TestClass2:public TestClass1 { public:void fun(){cout<<2;) }; int main() { TestClass1 *p=new TestClass2; p->fun(); delete p; Teturn 0; }A.publicB.privateC.virtualD.protected
下面程序的运行结果为( )。 include using namespace std; void main(){ 下面程序的运行结果为( )。 #include<iostream> using namespace std; void main(){ int a=1; switch(a){ case 1:cout<<"1"; case 2:cout<<"2"; break; default:cout<<"0"; } }A.12B.120C.1D.10
试按照如下要求对8259A设定初始化命令字:8086系统中只有一片8259A,中断请求信号使用电平触发方式,全嵌套中断优先级,数据总线无缓冲,采用中断自动结束方式。中断类型码为20H~27H,8259A的端口地址为0B0H和0B1H。并写出8259A的初始化程序段。
系统中有一片8259A,中断请求信号用电平触发方式,要用ICW4,中断类型码为60H~67H,用特殊全嵌套方式,无缓冲,采用中断自动结束方式。设8259A的端口地址为93H、94H,如何编写初始化程序。
单片机的外部中断0的入口地址为(),外部中断1(INT1)的中断入口地址为(),定时器1的中断入口地为()。