资源目录
压缩包内文档预览:
编号:15780612
类型:共享资源
大小:99.15KB
格式:RAR
上传时间:2019-03-08
上传人:机****料
认证信息
个人认证
高**(实名认证)
河南
IP属地:河南
12
积分
- 关 键 词:
-
单片机c语言应用100例
单片机C语言
单片机C语言应用
- 资源描述:
-
单片机C语言应用100例,单片机c语言应用100例,单片机C语言,单片机C语言应用
- 内容简介:
-
/ex99 #include / /* PC */ void Send(unsigned char dat) SBUF=dat; while(TI=0) ; TI=0; /* 1ms (3j+2)i=(333+2) 10=1010()1 */ void delay1ms() unsigned char i,j; for(i=0;i10;i+) for(j=0;j33;j+) ; /* */ void delaynms(unsigned char x) unsigned char i; for(i=0;ix;i+) delay1ms(); /* */ void main(void) unsigned char i; TMOD=0x20; /T12 TH1=0xfd; /涨T1 TL1=0xfd; /涨T1 PCON=0x00; /9600 TR1=1; /t1 SCON=0x40; /1 while(1) for(i=0;i200;i+) / Send(i); /i delaynms(100); /100ms /100 #include / #include /_nop_() sbit RS=P20; /RSP2.0 sbit RW=P21; /RWP2.1 sbit E=P22; /EP2.2 sbit BF=P07; /BFP0.7 unsigned char code digit =“0123456789“; / unsigned int v; / unsigned char count; /涨T0 bit flag; /1 /* 1ms (3j+2)*i=(333+2)10=1010()1 */ void delay1ms() unsigned char i,j; for(i=0;i10;i+) for(j=0;j33;j+) ; /* n */ void delay(unsigned char n) unsigned char i; for(i=0;in;i+) delay1ms(); /* resultresult=1;result=0 */ unsigned char BusyTest(void) bit result; RS=0; /涨RSRW RW=1; E=1; /E=1 _nop_(); / _nop_(); _nop_(); _nop_(); / result=BF; /result E=0; /E return result; /* dictate */ void WriteInstruction (unsigned char dictate) while(BusyTest()=1); / RS=0; /涨RSR/W RW=0; E=0; /E(8-6E壬 / E01“0“ _nop_(); _nop_(); / P0=dictate; /P0 _nop_(); _nop_(); _nop_(); _nop_(); / E=1; /E _nop_(); _nop_(); _nop_(); _nop_(); / E=0; /E /* x */ void WriteAddress(unsigned char x) WriteInstruction(x|0x80); /涨“80H+x“ /* (ASCII) y() */ void WriteData(unsigned char y) while(BusyTest()=1); RS=1; /RSRW RW=0; E=0; /E(8-6E壬 / E01“0“ P0=y; /P0 _nop_(); _nop_(); _nop_(); _nop_(); / E=1; /E _nop_(); _nop_(); _nop_(); _nop_(); / E=0; /E /* LCD */ void LcdInitiate(void) delay(15); /15msLCD WriteInstruction(0x38); /162578 delay(5); /5ms WriteInstruction(0x38); delay(5); WriteInstruction(0x38); / delay(5); WriteInstruction(0x0c); / delay(5); WriteInstruction(0x06); / delay(5); WriteInstruction(0x01); / delay(5); /* */ void display_sym(void) WriteAddress(0x00); /,11 WriteData(v); /vLCD WriteData(=); /=LCD /* */ void display_val(unsigned int x) unsigned char i,j,k,l; /j,k,lİ i=x/1000; / j=(x%1000)/100; / k=(x%100)/10; / l=x%10; / WriteAddress(0x02); /,13 WriteData(digiti); /LCD WriteData(digitj); /LCD WriteData(digitk); /LCD WriteData(digitl); /LCD /* r/min */ void display_unit(void) WriteAddress(0x06); /,27 WriteData(r); /rLCD WriteData(/); /LCD WriteData(m); /mLCD WriteData(i); /iLCD WriteData(n); /nLCD /* */ void main(void) LcdInitiate(); /LCD TMOD=0x51; /T11T01 TH0=(65536-46083)/256; /T0850ms TL0=(65536-46083)%256; /T0850ms EA=1; / ET0=1; /T0 TR0=1; /T0 count=0; /T00 display_sym(); / display_val(0000); / display_unit(); / while(1) / TR1=1; /T1 TH1=0; /T180 TL1=0; /T180 flag=0; /仹1 while(flag=0) / ; v=(TH1*256+TL1)*60/16; /16 display_val(v); / /* T0 */ void Time0(void ) interrupt 1 using 1 /T011鹤 count+; /T01count1 if(count=20) /201 flag=1; /11 count=0; /0 TH0=(65536-46083)/256; /T08 TL0=(65536-46083)%256; /T08 /10P0P1 #include / void main(void) unsigned char m,n; unsigned int s; m=64; n=71; s=m*n; /s=64*71=4544,168P18P0 /4544=17*256+192=H3*16*16*16+H2*16*16+H1*16+H0 /25617+192/256=H3*16+H2+H1*16+H0/256 /816H3*16+H2174544256 /816H1*16+H01924544256 P1=s/256; /8P1 P1=17=11H=0001 0001B, P1.0P1.4 P0=s%256; /8P0 , P3=192=c0H=1100 0000B,P3.1,P3.6,P3.7 /11P1P0 #include / void main(void) P1=36/5; / P0=(36%5)*10)/5; / while(1) ; / /12P08LED #include / /* */ void delay(void) unsigned int i; for(i=0;i20000;i+) ; /* z */ void main(void) unsigned char i; for(i=0;i255;i+) /i255 P0=i; /iP0 delay(); / /13P0“ #include / void main(void) P0=(40)/P0 while(1) ; / /14P0 #include / void main(void) P0=(84)?8:4;/P0P0=8=0000 1000B while(1) ; / /15P0“ #include / void main(void) P0=0xa20x3c;/P0P0=8=0000 1000B while(1) ; / /16P0 #include / void main(void) P0=0x3b2;/P0P0=1110 1100B=0xec while(1) ; / /17“ #include / sbit F=P14; /F P1.4 sbit X=P15; /X P1.5 sbit Y=P16; /Y P1.6 sbit Z=P17; /Z P1.7 void main(void) while(1) F=(X) /F ; /18P18LED #include / /* */ void delay(void) unsigned int n; for(n=0;n1; /P110 delay(); / /19ifP08LED #include / sbit S1=P14; /S1P1.4 sbit S2=P15; /S2P1.5 /* */ void main(void) while(1) if(S1=0) /S1 P0=0x0f; /P0LED if(S2=0) /S2 P0=0xf0; /P0LED #include /51 void main(void) P1=0xfe; /P1=1111 1110BP1.0 /20swtichP08LED #include / sbit S1=P14; /S1P1.4 /* */ void delay(void) unsigned int n; for(n=0;n10000;n+) ; /* */ void main(void) unsigned char i; i=0; /i0 while(1) if(S1=0) /S1 delay(); / if(S1=0) /S1 i+; /i1 if(i=9) /i=91 i=1; switch(i) / case 1: P0=0xfe; /LED break; case 2: P0=0xfd; /LED break; case 3:P0=0xfb; /LED break; case 4:P0=0xf7; /LED break; case 5:P0=0xef; /LED break; case 6:P0=0xdf; /LED break; case 7:P0=0xbf; /LED break; case 8:P0=0x7f; /LED break; default: /LED P0=0xff; /23do-whileP08LED #include / /* 60ms (3*100*200=60000s) */ void delay60ms(void) unsigned char m,n; for(m=0;m100;m+) for(n=0;n200;n+) ; /* */ void main(void) do P0=0xfe; /LED delay60ms(); P0=0xfd; /LED delay60ms(); P0=0xfb; /LED delay60ms(); P0=0xf7; /LED delay60ms(); P0=0xef; /LED delay60ms(); P0=0xdf; /LED delay60ms(); delay60ms(); P0=0xbf; /LED delay60ms(); P0=0x7f; /LED delay60ms(); while(1); /8LED /24P08LED #include / /* 60ms (3*100*200=60000s) */ void delay60ms(void) unsigned char m,n; for(m=0;m100;m+) for(n=0;n200;n+) ; /* */ void main(void) unsigned char i; unsigned char code Tab =0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f; / while(1) for(i=0;i8;i+) P0=Tabi;/P0 delay60ms();/ /25 P0 #include / /* 150ms (3*200*250=150 000s=150ms */ void delay150ms(void) unsigned char m,n; for(m=0;m200;m+) for(n=0;n250;n+) ; /* */ void main(void) unsigned char str=“Now,Temperature is :“; / unsigned char i; while(1) i=0; /i0 while(stri!=0) /0 P0=stri; /iP0 delay150ms(); /150ms i+; / /26P0 #include void main(void) unsigned char *p1,*p2; /p1,p2 unsigned char i,j; / i=25; /i25 j=15; p1= /i p2= /j P0=*p1+*p2; /*p1+*p2i+j,P0=25+15=40=0x28 /P0=0010 1000BP0.3P0.5LED while(1) ; / /27P08LED #include /* 150ms (3*200*250=150 000s=150ms */ void delay150ms(void) unsigned char m,n; for(m=0;m200;m+) for(n=0;n250;n+) ; /* */ void main(void) unsigned char code Tab=0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f; unsigned char *p = unsigned char i; / while(1) for(i=0;i8;i+) P0=*pi; delay150ms(); /28P0 8 LED #include /* 150ms (3*200*250=150 000s=150ms */ void delay150ms(void) unsigned char m,n; for(m=0;m200;m+) for(n=0;n250;n+) ; /* */ void main(void) unsigned char i; unsigned char Tab =0xFF,0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF, 0x7F,0xBF,0xDF,0xEF,0xF7,0xFB,0xFD,0xFE, 0xFE,0xFC,0xFB,0xF0,0xE0,0xC0,0x80,0x00, 0xE7,0xDB,0xBD,0x7E,0x3C,0x18,0x00,0x81, 0xC3,0xE7,0x7E,0xBD,0xDB,0xE7,0xBD,0xDB; / unsigned char *p; / p=Tab; /p while(1) for(i=0;i32;i+) /32 P0=*(p+i); /*p+i)ai delay150ms(); /150ms /29P0 P1 #include /* */ unsigned int sum(int a,int b) unsigned int s; s=a+b; return (s); /* */ void main(void) unsigned z; z=sum(2008,2009); P1=z/256; /z8 P0=z%256; /z8 while(1) ; /30P08LED #include /* */ void delay(unsigned char x) unsigned char m,n; for(m=0;mx;m+) for(n=0;n200;n+) ; /* */ void main(void) unsigned char i; unsigned char code Tab =0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F; / while(1) /LED for(i=0;i8;i+) /8 P0=Tabi; delay(100); /60ms, (3*100*200=60 000s /LED for(i=0;i8;i+) /8 P0=Tabi; delay(250); /150ms, (3*250*200=150 000s /31 #include /* 150ms */ void delay(void) unsigned char m,n; for(m=0;m200;m+) for(n=0;n250;n+) ; /* P08LED */ void led_flow(unsigned char a8) unsigned char i; for(i=0;i8;i+) P0=ai; delay(); /* */ void main(void) unsigned char code Tab =0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F; / led_flow(Tab); /32P08LED #include /* 150ms */ void delay(void) unsigned char m,n; for(m=0;m200;m+) for(n=0;n250;n+) ; /* P08LED */ void led_flow(unsigned char *p) / unsigned char i; while(1) i=0; /i0 while(*(p+i)!=0) / P0=*(p+i);/ P0 delay(); / i+; / /* */ void main(void) unsigned char code Tab =0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F, 0x7F,0xBF,0xDF,0xEF,0xF7,0xFB,0xFD,0xFE, 0xFF,0xFE,0xFC,0xFB,0xF0,0xE0,0xC0,0x80, 0x00,0xE7,0xDB,0xBD,0x7E,0xFF,0xFF,0x3C, 0x18,0x0,0x81,0xC3,0xE7,0xFF, 0xFF,0x7E; / unsigned char *pointer; pointer=Tab; led_flow(pointer); /33P1 #include /51 unsigned char code Tab=0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F; /鱻 /* 150ms */ void delay(void) unsigned char m,n; for(m=0;m200;m+) for(n=0;n250;n+) ; /* */ void led_flow(void) unsigned char i; for(i=0;i8;i+) /8 P0=Tabi; delay(); /* */ void main(void) void (*p)(void); /庯 p=led_flow; /p while(1) (*p)(); /pled_flow /34 #include /51 unsigned char code str1 =“Temperature is tested by DS18B20“;/C unsigned char code str2 =“Now temperature is:“; / unsigned char code str3 =“The Systerm is designed by Zhang San“; unsigned char code str4 =“The date is 2008-9-30“; unsigned char *p =str1,str2,str3,str4; /p44 /* 150ms */ void delay(void) unsigned char m,n; for(m=0;m200;m+) for(n=0;n250;n+) ; /* P08LED */ void led_display(unsigned char *x ) / unsigned char i,j; for(i=0;i4;i+) /4 j=0; /0 while(*(xi+j)!=0) /ij P0=*(xi+j); /P0 delay(); / j+; / /* */ void main(void) unsigned char i; while(1) for(i=0;i4;i+) led_display(p); / /35ctype.h #include /51 #include void main(void) while(1) P3=isalpha(_)?0xf0:0x0f;/_P3=0xf0 /36intrins.h #include /51 #include /isalpha /* 150ms */ void delay(void) unsigned char m,n; for(m=0;m200;m+) for(n=0;n250;n+) ; /* */ void main(void) P3=0xfe; /P3=1111 1110B while(1) P3=_crol_(P3,1);/ P31P3 delay(); / /37stdlib.h #include /51 #include /isalpha /* 150ms */ void delay(void) unsigned char m,n; for(m=0;m200;m+) for(n=0;n250;n+) ; /* */ void main(void) unsigned char i; while(1) for(i=0;i10;i+) /10 P3=rand()/160; /160P3 delay(); /38string.h #include /51 #include /isalpha void main(void) unsigned char str1 =“Now, The temperature is :“; unsigned char str2 =“Now, The temperature is 36 Centgrade:“; unsigned char i; i=strcmp(str1,str2); /i if(i=0) /str1=str2 P3=0x00; else if(istr2 P3=0x0f; while(1) ; / /39 #include /51 # define F(a,b) (a)+(a)*(b)/256+(b) /壬ab void main(void) unsigned char i,j,k; i=40; j=30; k=20; P3=F(i,j+k); /ij+k while(1) ; /42T0P28LED #include / 51 /* */ void main(void) / EA=1; / / ET0=1; /T0 TMOD=0x01; /T01 TH0=(65536-46083)/256; /T08 TL0=(65536-46083)%256; /T08 TR0=1; /T0 TF0=0; P2=0xff; while(1)/ while(TF0=0) ; TF0=0; P2=P2; TH0=(65536-46083)/256; /T08 TL0=(65536-46083)%256; /T08 /43T11KHz #include / 51 sbit sound=P37; /soundP3.7 /* */ void main(void) / EA=1; / / ET0=1; /T0 TMOD=0x10; /T11 TH1=(65536-921)/256; /T18 TL1=(65536-921)%256; /T18 TR1=1; /T1 TF1=0; while(1)/ while(TF1=0) ; TF1=0; sound=sound; /P3.7 TH1=(65536-921)/256; /T08 TL1=(65536-921)%256; /T08 /44T0P18LED #include / 51 sbit S=P34; /SP3.4 /* */ void main(void) / EA=1; / / ET0=1; /T0 TMOD=0x02; /T02 TH0=256-156; /T08 TL0=256-156; /T08 TR0=1; /T0 while(1)/ while(TF0=0) / if(S=0) /S0 P1=TL0; /TL01P1 TF0=0; /TF00 /45T01LED #include / 51 sbit D1=P20; /D1P2.0 /* */ void main(void) EA=1; / ET0=1; /T0 TMOD=0x01; /T02 TH0=(65536-46083)/256; /T08 TL0=(65536-46083)%256; /T08 TR0=1; /T0 while(1)/ ; /* T0 */ void Time0(void) interrupt 1 using 0 /interrupt /1T000鹤 D1=D1; /P2.0 TH0=(65536-46083)/256; /T08 TL0=(65536-46083)%256; /T08 /46T0 #include / 51 sbit D1=P20; /D1P2.0 unsigned char Countor; /涨T0 /* */ void main(void) EA=1; / ET0=1; /T0 TMOD=0x01; /T02 TH0=(65536-46083)/256; /T08 TL0=(65536-46083)%256; /T08 TR0=1; /T0 Countor=0; /0 while(1)/ ; /* T0 */ void Time0(void) interrupt 1 using 0 /interrupt /1T000鹤 Countor+; /1 if(Countor=20) /201s D1=D1; /P2.0 Countor=0; /Countor00 TH0=(65536-46083)/256; /T08 TL0=(65536-46083)%256; /T08 /47T1LED #include / 51 sbit D1=P20; /D1P2.0 sbit D2=P21; /D2P2.1 unsigned char Countor1; /涨T1 unsigned char Countor2; /涨T1 /* */ void main(void) EA=1; / ET1=1; /T1 TMOD=0x10; /T11 TH1=(65536-46083)/256; /T18 TL1=(65536-46083)%256; /T18 TR1=1; /T1 Countor1=0; /0 Countor2=0; /0 while(1)/ ; /* T1 */ void Time1(void) interrupt 3 using 0 /interrupt /3T100鹤 Countor1+; /Countor11 Countor2+; /Countor21 if(Countor1=2) /2100ms D1=D1; /P2.0 Countor1=0; /Countor100 if(Countor2=8) /8400ms D2=D2; /P2.1 Countor2=0; /Countor100 TH1=(65536-46083)/256; /T18 TL1=(65536-46083)%256; /T18 /48T11KHz #include / 51 sbit sound=P37; /soundP3.7 /* */ void main(void) EA=1; / ET1=1; /T1 TMOD=0x10; /TMOD=0001 000BT11 TH1=(65536-921)/256; /T18 TL1=(65536-921)%256; /T18 TR1=1; /T1 while(1)/ ; /* T1 */ void Time1(void) interrupt 3 using 0 /interrupt sound=sound; TH1=(65536-921)/256; /T18 TL1=(65536-921)%256; /T18 /49T0“ #include /51 sbit sound=P37; /soundP3.7 unsigned int C; /涨 /C #define l_dao 262 /l_dao1262Hz #define l_re 286 /l_re2286Hz #define l_mi 311 /l_mi3311Hz #define l_fa 349 /l_fa4349Hz #define l_sao 392 /l_sao5392Hz #define l_la 440 /l_a6440Hz #define l_xi 494 /l_xi7494Hz /C #define dao 523 /dao1523Hz #define re 587 /re2587Hz #define mi 659 /mi3659Hz #define fa 698 /fa4698Hz #define sao 784 /sao5784Hz #define la 880 /la6880Hz #define xi 987 /xi7523H /C #define h_dao 1046 /h_dao11046Hz #define h_re 1174 /h_re21174Hz #define h_mi 1318 /h_mi31318Hz #define h_fa 1396 /h_fa41396Hz #define h_sao 1567 /h_sao51567Hz #define h_la 1760 /h_la61760Hz #define h_xi 1975 /h_xi71975Hz /* 1200ms */ void delay() unsigned char i,j; for(i=0;i250;i+) for(j=0;j250;j+) ; /* */ void main(void) unsigned char i,j; / unsigned int code f=re,mi,re,dao,l_la,dao,l_la, / l_sao,l_mi,l_sao,l_la,dao, l_la,dao,sao,la,mi,sao, re, mi,re,mi,sao,mi, l_sao,l_mi,l_sao,l_la,dao, l_la,l_la,dao,l_la,l_sao,l_re,l_mi, l_sao, re,re,sao,la,sao, fa,mi,sao,mi, la,sao,mi,re,mi,l_la,dao, re, mi,re,mi,sao,mi, l_sao,l_mi,l_sao,l_la,dao, l_la,dao,re,l_la,dao,re,mi, re, l_la,dao,re,l_la,dao,re,mi, re, 0xff; /0xff / /“4“4“2“2“1“1 unsigned char code JP =4,1,1,4,1,1,2, 2,2,2,2,8, 4,2,3,1,2,2, 10, 4,2,2,4,4, 2,2,2,2,4, 2,2,2,2,2,2,2, 10, 4,4,4,2,2, 4,2,4,4, 4,2,2,2,2,2,2, 10, 4,2,2,4,4, 2,2,2,2,6, 4,2,2,4,1,1,4, 10, 4,2,2,4,1,1,4, 10 ; EA=1; / ET0=1; /T0 TMOD=0x00; / T0113 while(1) / i=0; /1f0 wh
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。