郭天祥十天学会单片机例程_第1页
郭天祥十天学会单片机例程_第2页
郭天祥十天学会单片机例程_第3页
郭天祥十天学会单片机例程_第4页
郭天祥十天学会单片机例程_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、郭天祥十天学会单片机视频例程(部分)Lesson3_1-lesson3_4#include<reg52.h>sbit dula=P2A6;sbit wela=P2A7;void main()(wela=1;P0=0xc0;wela=0;dula=1;P0=0x06;dula=0;while(1);)#include<reg52.h>#define uint unsigned int#define uchar unsigned charsbit dula=P2A6;sbit wela=P2A7;uchar num;uchar code table=(0x3f,0x06,0

2、x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71;void delay(uint z);void main()(wela=1;/11101010P0=0xea;wela=0;while(1)(for(num=0;num<16;num+)(dula=1;P0=tablenum;dula=0;delay(1000);void delay(uint z)(uint x,y;for(x=z;x>0;x-)for(y=110;y>0;y-);#include<reg52.h>#defin

3、e uint unsigned int#define uchar unsigned charsbit dula=P2A6;sbit wela=P2A7;sbit d1=P1A0;uchar num;uchar code table=(0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71;void delay(uint z);void main()(EA=1;/开总中断EX0=1;/开外部中断0/IT0=1;TCON=0x01;wela=1;/11101010P0=0xea;wela=0;w

4、hile(1)(for(num=0;num<16;num+)(d1=1;dula=1;P0=tablenum;dula=0;delay(1000);void delay(uint z)(uint x,y;for(x=z;x>0;x-)for(y=110;y>0;y-);void exter0() interrupt 0(d1=0;#include<reg52.h>#define uint unsigned int#define uchar unsigned charsbit dula=P2A6;sbit wela=P2A7;sbit d1=P1A0;uchar n

5、um,num1;tt;uchar code table=(0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71;void delay(uint z);void main()(num=0;tt=0;TMOD=0x11;/设置定时器0为工作方式1TH0=(65536-10000)/256;TL0=(65536-10000)%256;TH1=(65536-20000)/256;TL1=(65536-20000)%256;/EA=1;/开总中断ET0=1;/开定时器0中断ET1=1;TR0=1;/

6、启动定时器0TR1=1;wela=1;/11101010P0=0xea;wela=0;dula=1;P0=0x3f;dula=0;while(1)(if(num1=25)(num1=0;P1=P1;- 1 -if(tt=100)(tt=0;num+;if(num=16)num=0;dula=1;P0=tablenum;dula=0;)void delay(uint z)(uint x,y;for(x=z;x>0;x-)for(y=110;y>0;y-);)void time0() interrupt 1(TH0=(65536-10000)/256;TL0=(65536-10000)

7、%256;tt+;)void time1() interrupt 3(TH1=(65536-20000)/256;TL1=(65536-20000)%256;num1+;)Lesson4_1-lesson4_3#include<reg52.h>#include<intrins.h>#define uint unsigned int#define uchar unsigned char uchar temp,aa,num;sbit dula=P2A6;sbit wela=P2A7;uchar code table=(0x3f,0x06,0x5b,0x4f,0x66,0x6

8、d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71;void delay(uint z);void main()(num=0;aa=0;TMOD=0x01;TH0=(65536-50000)/256;TL0=(65536-50000)%256;EA=1;ET0=1;TR0=1;temp=0xfe;P1=temp;dula=1;P0=table0;dula=0;wela=1;P0=0xc0;wela=0;while(1)(delay(1000);temp=_crol_(temp,1);P1=temp;/*if(aa=40)( aa=0; num

9、+; if(num=16) num=0;dula=1; P0=tablenum; dula=0;*/void delay(uint z)(uint x,y;for(x=z;x>0;x-) for(y=110;y>0;y-);void timer0() interrupt 1(TH0=(65536-50000)/256;TL0=(65536-50000)%256; aa+;if(aa=40) ( aa=0; num+; if(num=16) num=0;dula=1;P0=tablenum; dula=0;#include<reg52.h>#include<intr

10、ins.h>#define uint unsigned int #define uchar unsigned char uchar temp,aa,numdu,numwe; sbit dula=P2A6;sbit wela=P2A7;uchar code table=( 0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71;uchar code tablewe=(0xfe,0xfd,0xfb,0xf7,0xef,0xdf;/void delay(uint z);void mai

11、n()(numdu=0;numwe=0;aa=0;TMOD=0x01;TH0=(65536-5000)/256;TL0=(65536-5000)%256;EA=1;ET0=1;TR0=1;while(1)(/delay(1000);/temp=_crol_(temp,1);/P1=temp;if(aa=1) (aa=0;numdu+;if(numdu=7)numdu=1;dula=1;P0=tablenumdu;dula=0;wela=1;P0=tablewenumwe;wela=0;numwe+;if(numwe=6)numwe=0;/*void delay(uint z)uint x,y;

12、for(x=z;x>0;x-)for(y=110;y>0;y-);*/void timer0() interrupt 1TH0=(65536-5000)/256;TL0=(65536-5000)%256;aa+;#include<reg52.h>#define uint unsigned int#define uchar unsigned charuchar temp,aa,bai,shi,ge;sbit dula=P2A6;sbit wela=P2A7;uchar code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0

13、x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71;void display(uchar bai,uchar shi,uchar ge);void delay(uint z);void init();void main()init();/初始化子程序while(1)if(aa=20)aa=0;temp+;if(temp=100)temp=0;bai=temp/100;shi=temp%100/10;ge=temp%10;display(bai,shi,ge);void delay(uint z)uint x,y;for(x=z;x>0;x-)for(y=110;

14、y>0;y-);void display(uchar bai,uchar shi,uchar ge)dula=1;P0=tablebai;dula=0;P0=0xff;wela=1;P0=0xfe;wela=0;delay(1);dula=1;P0=tableshi;dula=0;P0=0xff;wela=1;P0=0xfd;wela=0;delay(1);dula=1;P0=tablege;dula=0;P0=0xff;wela=1;P0=0xfb;wela=0;delay(1);void init()wela=0;dula=0;temp=0;TMOD=0x01;TH0=(65536-

15、50000)/256;TL0=(65536-50000)%256;EA=1;ET0=1;TR0=1;void timer0() interrupt 1TH0=(65536-50000)/256;TL0=(65536-50000)%256;aa+;Lesson5_1 Lesson5_3#include <reg52.h>#include <intrins.h>#define uchar unsigned char#define uint unsigned intsbit dula=P2A6;sbit wela=P2A7;uchar code table=0x3f,0x06

16、,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x76,0x79,0x38,0x3f,0;uchar temp,t0,t1,bai,shi,ge,flag,flag1;uint shu;void init();void display(uchar,uchar,uchar,uchar,uchar,uchar);- 5 -void delay(uint z)t1=0;(uint t1,y;shu-;bai=shu/100;for(t1=z;t1>0;t1-)shi=shu%100/10;for(y

17、=110;y>0;y-);ge=shu%10;)if(shu=398)void main()(init();TR0=0;TH0=(65536-50000)/256;while(1)TL0=(65536-50000)%256;(TR0=1;if(flag1!=1)flag=1;display(7,6,5,bai,shi,ge);t0=0;elseP1=0xff;display(16,17,18,18,19,20);TR1=0;)void init()(voiddisplay(uchar aa,uchar bb,uchar cc,uchar ba,ucharshu=432;sh,uchar

18、g)temp=0xfe;P1=temp;(dula=1;TMOD=0x11;P0=tableaa;TH0=(65536-50000)/256;dula=0;TL0=(65536-50000)%256;P0=0xff;TH1=(65536-50000)/256;wela=1;TL1=(65536-50000)%256;P0=0xfe;EA=1;wela=0;ET0=1;delay(1);ET1=1;TR0=1;dula=1;TR1=1;P0=tablebb;)dula=0;P0=0xff;void timer0() interrupt 1wela=1;(TH0=(65536-50000)/256

19、;P0=0xfd;wela=0;TL0=(65536-50000)%256;t0+;delay(1);if(flag!=1)dula=1;(P0=tablecc;if(t0=10)dula=0;(P0=0xff;t0=1;wela=1;temp=_crol_(temp,1);P0=0xfb;P1=temp;wela=0;)delay(1);)dula=1;elseP0=tableba;(dula=0;if(t0%4=0)P0=0xff;P1=P1;wela=1;if(t0=60)P0=0xf7;(wela=0;TR0=0;delay(1);P1=0xff;flag1=1;dula=1;)P0=

20、tablesh;)dula=0;)P0=0xff;wela=1;void timer1() interrupt 3P0=0xef;(TH1=(65536-50000)/256;TL1=(65536-50000)%256;wela=0;delay(1);t1+;dula=1;if(t1=2)P0=tableg;(dula=0;P0=0xff;wela=1;P0=0xdf;wela=0;delay (1);)#include<reg52.h>#define uint unsigned int#define uchar unsigned charsbit d1=P1A0;sbit dul

21、a=P2A6;sbit wela=P2A7;sbit key1=P3A4;uchar code table=(0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71;uchar num;void delay(uint z)(uint x,y;for(x=z;x>0;x-)for(y=110;y>0;y-);void main()(wela=1;P0=0xfe;wela=0;P3=0xff;while(1)(if(key1=0)(delay(5);if(key1=0)(d1=0;n

22、um+;if(num=10)num=0;while(!key1);delay(5);while(!key1);elsed1=1;dula=1;P0=tablenum;dula=0;#include<reg52.h>#define uint unsigned int#define uchar unsigned charsbit dula=P2A6;sbit wela=P2A7;sbit key1=P3A4;uchar code table=(0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x

23、79,0x71,0;uchar num,temp,num1;void delay(uint z)(uint x,y;for(x=z;x>0;x-)for(y=110;y>0;y-);uchar keyscan();void display(uchar aa);void main()(num=17;dula=1;P0=0;dula=0;wela=1;P0=0xc0;wela=0;while(1)(display(keyscan();void display(uchar aa)(dula=1;P0=tableaa-1;dula=0;uchar keyscan()(P3=0xfe;tem

24、p=P3;temp=temp&0xf0;while(temp!=0xf0)(delay(5);temp=P3;temp=temp&0xf0;while(temp!=0xf0)(temp=P3;switch(temp)(case 0xee:num=1;break;case 0xde:num=2;break;case 0xbe:num=3;break;case 0x7e:num=4;break;while(temp!=0xf0)(temp=P3;temp=temp&0xf0;P3=0xfd;temp=P3;temp=temp&0xf0;while(temp!=0xf

25、0)(delay(5);temp=P3;temp=P3;temp=temp&0xf0;switch(temp)while(temp!=0xf0)(casetemp=P3;0xe7:num=13;switch(temp)break;(casecase 0xed:num=5;0xd7:num=14;break;break;case 0xdd:num=6;casebreak;0xb7:num=15;case 0xbd:num=7;break;break;casecase 0x7d:num=8;0x77:num=16;break;break;while(temp!=0xf0)while(tem

26、p!=0xf0)(temp=P3;temp=P3;temp=temp&0xf0;temp=temp&0xf0;return num;P3=0xfb;temp=P3;temp=temp&0xf0;Lesson6_1 Lesson6_3while(temp!=0xf0)#include<reg52.h>(sbit csda=P3A2;delay(5);sbit wr=P3A6;temp=P3;temp=temp&0xf0;void main()while(temp!=0xf0)(csda=0;temp=P3;wr=0;switch(temp)P0=0;(

27、while(1);case 0xeb:num=9;break;case#include<reg52.h>#define uchar unsigned charbreak;#define uint unsigned intcasesbit wr=P3A6;sbit rd=P3A7;break;void delay(uint z)case(uint t1,y;break;for(t1=z;t1>0;t1-)for(y=110;y>0;y-);while(temp!=0xf0)(void init();temp=P3;void start();temp=temp&0x

28、f0;void main()(init();while(1)(start();P3=0xf7;delay(20);temp=P3;rd=0;temp=temp&0xf0;delay(10);while(temp!=0xf0)rd=1;(delay(10);delay(5);temp=P3;temp=temp&0xf0;while(temp!=0xf0)void init()(0xdb:num=10;0xbb:num=11;0x7b:num=12;void delay(uint z)(uint x,y;for(x=z;x>0;x-)for(y=110;y>0;y-);

29、void write_com(uchar com)(-lcdrs=0;P0=com;delay(5);lcden=1;delay(5);lcden=0;void write_data(uchar date)(-lcdrs=1;P0=date;delay(5);lcden=1;delay(5);lcden=0;void init()(dula=0;wela=0;lcden=0;write_com(0x38);write_com(0x0e);write_com(0x06);write_com(0x01);write_com(0x80+0x10);void main()(init();for(num

30、=0;num<11;num+)(write_data(tablenum);delay(20);/ write_com(1);write_com(0x80+0x53);for(num=0;num<13;num+)(write_data(table1num);delay(20);for(num=0;num<16;num+)(write_com(0x18);delay(20);while(1);Lesson9#include<reg52.h>#define uchar unsigned charsbit sda=P2A0;sbit scl=P2A1;uchar a;vo

31、id delay() ; void start() 开始信号P0=0;)void start()(wr=1;wr=0;wr=1;)Lesson7_1-Lesson7_1#include<reg52.h>unsigned char flag,a;void main()(TMOD=0x20;/设置定时器1为工作方式2TH1=0xfd;TL1=0xfd;TR1=1;REN=1;SM0=0;SM1=1;EA=1;ES=1;while(1)(/*if(RI=1)(RI=0;P1=SBUF;*/if(flag=1)(ES=0;flag=0;SBUF='1'/28;while(!

32、TI);TI=0;SBUF='2'/28;while(!TI);TI=0;SBUF='3'/28;while(!TI);TI=0;ES=1;void ser() interrupt 4(RI=0;/ P1=SBUF;a=SBUF;flag=1;Lesson8#include<reg52.h>#define uchar unsigned char#define uint unsigned intuchar code table="I LIKE MCU!”;uchar code table1="WWW.TXMCU.COM"s

33、bit lcden=P3A4;sbit lcdrs=P3A5;sbit dula=P2A6;sbit wela=P2A7;uchar num;- 9 -(sda=1;delay();scl=1;delay();sda=0;delay();)void stop()/ 停止(sda=0;delay();scl=1;delay();sda=1;delay();)void respons() 应答(uchar i;scl=1;delay();while(sda=1)&&(i<250)i+;scl=0;delay();)void init()(sda=1;delay();scl=1

34、;delay();)void write_byte(uchar date)(-uchar i,temp;temp=date;for(i=0;i<8;i+)(temp=temp<<1;scl=0;delay();sda=CY;delay();scl=1;delay();/ scl=0;/ delay();)scl=0;delay();sda=1;delay();)uchar read_byte()(-uchar i,k;scl=0;delay();sda=1;delay();for(i=0;i<8;i+)(scl=1;delay();k=(k<<1)|sda;

35、scl=0;delay();)return k;)void delay1(uchar x)(uchar a,b;for(a=x;a>0;a-)for(b=100;b>0;b-);)void write_add(uchar address,uchar date)(-start();write_byte(0xa0);respons();write_byte(address);respons();write_byte(date);respons();stop();)uchar read_add(uchar address)(-uchar date;start();write_byte(0

36、xa0);respons();write_byte(address);respons();start();write_byte(0xa1);respons();date=read_byte();stop();return date;)void main()(init();write_add(23,0xaa);delay1(100);P1=read_add(23);while(1);)Lesson 10#include<reg52.h>#define uchar unsigned char#define uint unsigned intsbit dula=P2A6;sbit wel

37、a=P2A7;sbit rs=P3A5;sbit lcden=P3A4;sbit s1=P3A0;sbit s2=P3A1;sbit s3=P3A2;sbit rd=P3A7;uchar count,s1num;char miao,shi,fen;if(s1num!=0)if(s2=0)delay(5);if(s2=0)while(!s2);if(s1num=1)miao+;if(miao=60)miao=0;write_sfm(10,miao);write_com(0x80+0x40+10);uchar code table=" 2007-7-30 MON"uchar c

38、ode table1=" 00:00:00"void delay(uint z)uint x,y;for(x=z;x>0;x-)for(y=110;y>0;y-);void write_com(uchar com)rs=0;lcden=0;P0=com;delay(5);lcden=1;delay(5);lcden=0;void write_date(uchar date)rs=1;lcden=0;P0=date;delay(5);lcden=1;delay(5);lcden=0;void init()uchar num;dula=0;wela=0;lcden=

39、0;/fen=59;/miao=53;/shi=23;write_com(0x38);write_com(0x0c);write_com(0x06);write_com(0x01);write_com(0x80);for(num=0;num<15;num+)write_date(tablenum);delay(5);write_com(0x80+0x40);for(num=0;num<12;num+)write_date(table1num);delay(5);TMOD=0x01;TH0=(65536-50000)/256;TL0=(65536-50000)%256;EA=1;ET

40、0=1;TR0=1;void write_sfm(uchar add,uchar date)uchar shi,ge;shi=date/10;ge=date%10;write_com(0x80+0x40+add);write_date(0x30+shi);write_date(0x30+ge);void keyscan()rd=0;if(s1=0)delay(5);if(s1=0) s1num+;while(!s1);if(s1num=1)TR0=0;write_com(0x80+0x40+10);write_com(0x0f);if(s1num=2)write_com(0x80+0x40+7

41、);if(s1num=3)write_com(0x80+0x40+4);if(s1num=4)s1num=0;write_com(0x0c);TR0=1;if(s1num=2)fen+;if(fen=60)fen=0;write_sfm(7,fen);write_com(0x80+0x40+7);if(s1num=3)shi+;if(shi=24) shi=0;write_sfm(4,shi);write_com(0x80+0x40+4);-if(s3=0)delay(5);if(s3=0)while(!s3);if(s1num=1)/* if(miao=0)miao=59;write_sfm

42、(10,miao);write_com(0x80+0x40+10);*/miao-;if(miao=-1)miao=59;write_sfm(10,miao);write_com(0x80+0x40+10);if(s1num=2)fen-;if(fen=-1)fen=59;write_sfm(7,fen);write_com(0x80+0x40+7);if(s1num=3)shi-;if(shi=-1)shi=23;write_sfm(4,shi);write_com(0x80+0x40+4);void main()init();while(1)keyscan();/ while(1);voi

43、d timer0() interrupt 1if(count=18)count=0;miao+;if(miao=60)miao=0;fen+;if(fen=60)fen=0;shi+;if(shi=24)shi=0;write_sfm(4,shi);write_sfm(7,fen);write_sfm(10,miao);Lesson 11#include<reg52.h>#include<define.h>void delay(uint z)uint x,y;for(x=z;x>0;x-)for(y=110;y>0;y-);void didi()beep=0

44、;delay(50);beep=1;delay(100);beep=0;delay(50);beep=1;void write_com(uchar com)rs=0;lcden=0;P0=com;delay(5);lcden=1;delay(5);lcden=0;void write_date(uchar date)rs=1;lcden=0;P0=date;delay(5);lcden=1;delay(5);lcden=0;-11 -void init() TH0=(65536-50000)/256;TL0=(65536-50000)%256;count+;uchar num;EA=1;EX0

45、=1;IT0=1;dula=0;wela=0;lcden=0;/ set_time();set_alarm(14,13,10);write_ds(0x0B,0x26);read_ds(0x0c);/fen=59;/miao=53;/shi=23;write_com(0x38);write_com(0x0c);write_com(0x06);write_com(0x01);write_com(0x80);for(num=0;num<15;num+)write_date(tablenum);delay(5);)write_com(0x80+0x40);for(num=0;num<12;num+)write_date(table1num);delay(5);)void write_sfm(uchar add,uchar date)uchar shi,ge;shi=date/10;ge=date%10;write_com(0x80+0x40+add);write_date(0x30+shi);write_date(0x30+ge);)-void keyscan()rd=0;if(flag1=1)if(s2=0)delay(5);if(s2=0)while(!s2);flag1=0;)if(s3=0)delay(5);if(s3=0)while(!s3);

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论