2020物联网实验室的考核题目
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 | unsigned char code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; int time =99; int t1=0; int t2=0; int i=0; void Timer0Init( void ) //1毫秒 { EA=1; ET0=1; TR0 = 1; //定时器0开始计时 TMOD = 0x01; //设置定时器模式 TL0 = 0xCD; //设置定时初值 TH0 = 0xD4; //设置定时初值 } int main() { led5=0; Timer0Init(); while (1) { t1= time /10; t2= time %10; W2=0; W3=1; P0=table[t2]; delay(100); W2=1; W3=0; P0=table[t1]; delay(100); } return 0; } void time_user()interrupt 1 { TL0 = 0xCD; //设置定时初值 TH0 = 0xD4; //设置定时初值 i++; if (i==100) { led5=~led5; i=0; time --; if ( time <0) { time =99; } } } |
软件延时来实现呼吸灯,一路定时器控制FM
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 | unsigned char code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; int time =99; int t1=0; int t2=0; int i=0; void Timer0Init( void ) //1毫秒 { EA=1; ET0=1; TR0 = 1; //定时器0开始计时 TMOD = 0x01; //设置定时器模式 TL0 = 0xCD; //设置定时初值 TH0 = 0xD4; //设置定时初值 } int main() { led5=0; Timer0Init(); while (1) { t1= time /10; t2= time %10; W2=0; W3=1; P0=table[t2]; delay(100); W2=1; W3=0; P0=table[t1]; delay(100); } return 0; } void time_user()interrupt 1 { TL0 = 0xCD; //设置定时初值 TH0 = 0xD4; //设置定时初值 i++; if (i==100) { led5=~led5; i=0; time --; if ( time <0) { time =99; } } } |
其实这个东西挺坑的,定时器有优先级,所以选择了折中的办法
C语言题目
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | int main() { int N = 0; for ( int x = 1; x <= 3; x++) { for ( int y = 0; y <= 3; y++) { for ( int z = 0; z <= 3; z++) { if (x == y || x == z || z == y) { continue ; } printf ( "%d%d%d\n" , x, y, z); N++; } } } printf ( "共计%d个\n" , N); system ( "pause" ); return 0; } |
第一个不写了,数码管平时也用不到
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步