51单片机作业
来源:互联网 发布:u盘ubuntu分区教程 编辑:程序博客网 时间:2024/06/06 00:03
#include<STC12C5A60S2.h>#include<intrins.h>#define uchar unsigned char #define uint unsigned int #define L P0sbit L1=P0^0;sbit L2=P0^1;sbit L3=P0^2;sbit L4=P0^3;sbit L5=P0^4;sbit L6=P0^5;sbit L7=P0^6;sbit L8=P0^7;sbit BEE=P1^4;void delayms(uint time){ uint i,j;for(i=0;i<time;i++) for(j=0;j<930;j++);}void Delay(uint time){uint i;for(i = time;i> 0;i --);}void Playmusic(){ uint a=0,b,c; uchar code SONG_TONE[]= {212,212,190,212,159,169,212,212,190,212,142,159,212,212,106,126,159,169,190,119,119,126,159,142,159,0};uchar code SONG_LONG[]= {90,30,120,120,120,240,90,30,120,120,120,240, 90,30,120,120,120,120,120,90,30,120,120,120,240,0}; while(SONG_LONG[a]!=0||SONG_TONE[a]!=0){for(b=0;b<SONG_LONG[a]*20;b++) {BEE=~BEE; for(c=0;c<SONG_TONE[a]/3;c++); }delayms(10);a++;}}void main(){ uchar key;uchar temp = 0xFE,i = 0,flag = 0;uint j,k;uint g=1;uchar code SONG_TONE[]= {212,212,190,212,159,169,212,212,190,212,142,159,212,212,106,126,159,169,190,119,119,126,159,142,159,0};uchar code SONG_LONG[]= {9,3,12,12,12,24,9,3,12,12,12,24, 9,3,12,12,12,12,12,9,3,12,12,12,24,0}; while(1){P3=0xf0;if(key!=0xf0) {delayms(50); if(key!=0xf0) { key=P3&0xf0; P3=0x0f; key|=P3; } }switch(key) {case 0xe7:L=0x00;delayms(1);L=0xff;delayms(1);BEE=0;delayms(100);BEE=1;break; case 0xd7:L=0x7e;delayms(100);L=0xff;L1=0;L8=0;delayms(100);L1=1;L8=1;delayms(100);L2=0;L7=0;delayms(100);L2=1;L7=1;delayms(100);L3=0;L6=0;delayms(100);L3=1;L6=1;delayms(100);L4=0;L5=0;delayms(100);L4=1;L5=1;delayms(100);L3=0;L6=0;delayms(100);L3=1;L6=1;delayms(100);L2=0;L7=0;delayms(100);L2=1;L7=1;delayms(100);L1=0;L8=0;delayms(100);L1=1;L8=1;delayms(50);//对撞之后改变的开始L8=0;delayms(50);L7=0;delayms(50);L2=0;delayms(100);L8=1;delayms(50);L7=1;delayms(50);L2=1;delayms(50);L6=0;delayms(50);L5=0;delayms(50);L3=0;delayms(100);L6=1;delayms(50);L5=1;delayms(50);L3=1;delayms(100);L4=0;delayms(50);L3=0;delayms(50);L5=0;delayms(100);L4=1;delayms(50);L3=1;delayms(50);L5=1;delayms(50);L5=0;delayms(50);L6=0;delayms(50);L2=0;delayms(100);L5=1;delayms(50);L6=1;delayms(50);L2=1;delayms(50);L7=0;delayms(50);L8=0;delayms(50);L1=0;delayms(100);L7=1;delayms(50);L8=1;delayms(50);L1=1;delayms(50);//第二次开始L8=0;delayms(50);L7=0;delayms(50);L6=0;delayms(50);L1=0;delayms(50);L8=1;delayms(50);L7=1;delayms(50);L6=1;delayms(50);L1=1;delayms(50);L5=0;delayms(50);L4=0;delayms(50);L3=0;delayms(50);L2=0;delayms(50);L5=1;delayms(50);L4=1;delayms(50);L3=1;delayms(50);L2=1;delayms(50);L1=0;delayms(50);L2=0;delayms(50);L3=0;delayms(50);L4=0;delayms(50);L5=0;delayms(50);L6=0;delayms(50);L7=0;delayms(50);L8=0;delayms(50);L=0xff;delayms(1);BEE=0;delayms(50);BEE=1;break;case 0xb7:if(key==0xb7) { if(flag == 0) { L = temp; delayms(500); temp=_crol_(temp,1); i++; if(i == 7){flag = 1;BEE=0;delayms(100);BEE=1;}; }else { L = temp; delayms(500);temp=_cror_(temp,1); i--; if(i == 0){flag = 0;BEE=0;delayms(100);BEE=1;}; } };break; case 0x77: if(key==0x77) { for(j = 0;j <300;j ++) { for(k=0;k<10;k++){ L = 0xaa; Delay(j); L = 0x55; Delay(300-j);} }for(j =300;j > 0;j--) { for(k=0;k<10;k++) { L = 0xaa; Delay(j); L = 0x55; Delay(300-j); } } };break;case 0xc3: if(key=0xc3){for(j = 0;j <300;j ++) { for(k=0;k<10;k++){ L = 0xff; Delay(j); L = 0x7e; Delay(300-j);} }for(j =300;j > 0;j--) { for(k=0;k<10;k++) { L = 0xff; Delay(j); L = 0x7e; Delay(300-j); }}for(j = 0;j <300;j ++) { for(k=0;k<10;k++){ L = 0xff; Delay(j); L = 0xbd; Delay(300-j);} }for(j =300;j > 0;j--) { for(k=0;k<10;k++) { L = 0xff; Delay(j); L = 0xbd; Delay(300-j); }}for(j = 0;j <300;j ++) { for(k=0;k<10;k++){ L = 0xff; Delay(j); L = 0xdb; Delay(300-j);} }for(j =300;j > 0;j--) { for(k=0;k<10;k++) { L = 0xff; Delay(j); L = 0xdb; Delay(300-j); }}for(j = 0;j <300;j ++) { for(k=0;k<10;k++){ L = 0xff; Delay(j); L = 0xe7; Delay(300-j);} }for(j =300;j > 0;j--) { for(k=0;k<10;k++) { L = 0xff; Delay(j); L = 0xe7; Delay(300-j); }}for(j = 0;j <300;j ++) { for(k=0;k<10;k++){ L = 0xff; Delay(j); L = 0xdb; Delay(300-j);} }for(j =300;j > 0;j--) { for(k=0;k<10;k++) { L = 0xff; Delay(j); L = 0xdb; Delay(300-j); }}for(j = 0;j <300;j ++) { for(k=0;k<10;k++){ L = 0xff; Delay(j); L = 0x7e; Delay(300-j);} }for(j =300;j > 0;j--) { for(k=0;k<10;k++) { L = 0xff; Delay(j); L = 0xbd; Delay(300-j); }}for(j = 0;j <300;j ++) { for(k=0;k<10;k++){ L = 0xff; Delay(j); L = 0x7e; Delay(300-j);} }for(j =300;j > 0;j--) { for(k=0;k<10;k++) { L = 0xff; Delay(j); L = 0x7e; Delay(300-j); }}};break;case0xa5: if(key==0xa5) {BEE=0;Playmusic();delayms(500);BEE=1; }}}}
1 0
- 51单片机作业
- 单片机作业
- 单片机作业调试过程
- 单片机作业,四则
- SEA寒假作业(基于51单片机的简易计数器)破破破
- 51单片机
- 51单片机
- 51单片机
- 51单片机
- 51单片机
- 51单片机
- 51单片机
- 单片机学习笔记--51单片机
- 【单片机】51单片机最小系统
- 单片机期末作业-----用单片机实现记录10次暂停时间的秒表
- 51单片机与AVR单片机区别
- 什么是单片机?51单片机学前预备知识
- 单片机学习笔记--51单片机基础
- 10、开链法解决散列表保存字典的碰撞问题
- 如何手动释放Python的内存
- redis事务
- 健康录a
- 等差数列前n项和
- 51单片机作业
- <meta http-equiv="X-UA-Compatible" content="IE=Edge">
- 64. Minimum Path Sum
- androidstudio中外部数据库的导入
- Leetcode刷题记—— 33. Search in Rotated Sorted Array(在翻转顺序的数组里查找)
- 输入一个整数,求该整数的二进制中1的个数,并输出
- Android动画
- 《PCL点云库学习&VS2010(X64)》Part 22 激光雷达点云数据处理相关算法库收集
- 面试题