1、如果按键INT1按下,循环点亮的方向向左(每一时刻只有一个点亮),无论哪个LEDx正在被点亮,都从该位LEDx开始反向循环点亮;4、根据电路图图1-6编写一个P0口控制段选信号和P2.7引脚控制位选信号的一位数码管静态显示程序,初始状态显示“0”;如果按键INT0按下,显示加一后的数值;如果按键INT1按下,显示减一后的数值;如果加到“9”再加一,显示“0”;如果减到“0”再减一,显示“9”;5、根据电路图图1-6编写一个P0口控制段选信号和P2.7引脚控制位选信号的一位数码管静态显示程序,初始状态显示全灭;如果按键INT0按下,数码管的显示段被逐个移位点亮的方向“a段f段”(每一时刻只有一段
2、点亮,数码管顺时钟作画圈动画);如果按键INT1按下,数码管的显示段被逐个移位点亮的方向“f段a段”(每一时刻只有一段点亮,数码管逆时钟作画圈动画);6、自己编写程序,设计数码管动态显示和按键的创意实验。注意:调整适当的延时时间,不使用外部中断不算完成。图1-6 外部中断与静态显示电路图评分表序号评分项目分值评分备注1完成1题201、电路图的理解2、LED点亮的延时3、中断端的设置4、中断函数的编写2完成2题1、LED点亮的延时和循环2、中断端的设置3、中断函数的编写3完成3题4完成4题2、静态显示准确5完成5题1、静态显示准确创意性实验6独立完成实验,如有抄袭、拷贝及其他非独立完成实验的方法
3、以上的所有分值为零-100第一个 #include #define uint unsigned int#define uchar unsigned char/void delay_ms(uint t) uchar i; while(t-) for(i=0;i110;i+) ; /void init() EX0=1; EX1=1; IT0=1; IT1=1; EA=1;void INT0_1(void) interrupt 0 uchar temp; P1=0xff; temp=0x01; for(i=0;8; P1=temp; temp=tempvoid main() init(); whil
4、e(1);第二个 #include uchar temp;uchar i,k;k=0; k=1; k=2; while(1) if(k=0) else if(k=1) else P1=0xff;第三个 #include temp=temp delay_ms(2000);第四个 #include uchar code duan=0xc0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90;sbit wei=P27;char k; wei=0; delay_ms(100); k+; if(k9) P0=duank; delay_ms(2); k-; if(k0) k=9; P0=duan0;第五个 #include delay_ms(2000); if(k=1) temp=temp