ImageVerifierCode 换一换
格式:DOCX , 页数:17 ,大小:223.75KB ,
资源ID:6984542      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6984542.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(8051单片机Proteus仿真实例2原理图+C程序.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

8051单片机Proteus仿真实例2原理图+C程序.docx

1、8051单片机Proteus仿真实例2原理图+C程序1. INT0,INT1中断计数原理图:程序:#include sbit k3=P34;sbit k4=P35;unsigned char code led_code=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff;unsigned char code seg_code=0x20,0x10,0x08,0x04,0x02,0x01;unsigned char led_buffer=0,0,0,0,0,0;unsigned int count_a=0,count_b=0;void de

2、lay(unsigned int x) unsigned char t; while(x-) for(t=0;t120;t+);void display() unsigned char i; led_buffer2=count_a/100; led_buffer1=count_a%100/10; led_buffer0=count_a%10; if(led_buffer2=0) led_buffer2=10; if(led_buffer1=0) led_buffer1=10; led_buffer5=count_b/100; led_buffer4=count_b%100/10; led_bu

3、ffer3=count_b%10; if(led_buffer5=0) led_buffer5=10; if(led_buffer4=0) led_buffer4=10; for(i=0;i6;i+) P2=seg_codei; P1=led_codeled_bufferi; delay(1); void main() IT0=1; IT1=1; PX0=1; IE=0x85; while(1) k3=1; k4=1; if(k3=0) count_a=0; if(k4=0) count_b=0; display(); void int0() interrupt 0 count_a+;void

4、 int1() interrupt 2 count_b+;2. INT0中断计数原理图:程序:#include unsigned char code led_code=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00;unsigned char led_buffer=0,0,0;unsigned count=0;sbit key=P36;void display() led_buffer2=count/100; led_buffer1=count%100/10; led_buffer0=count%10; if(led_buffer2

5、=0) led_buffer2=10; if(led_buffer1=0) led_buffer1=10; P0=led_codeled_buffer0; P1=led_codeled_buffer1; P2=led_codeled_buffer2;void main() IE=0x81; IT0=1; while(1) key=1; if(key=0) count=0; display(); void int0() interrupt 0 count+; 3.LED点阵原理图:程序:#include sbit led1=P00;sbit led2=P01;void delay(long dl

6、y) while(dly-);void main() SCON=0x50; TMOD=0x20; TH1=0xfd; TL1=0xfd; PCON=0x00; TR1=1; RI=0; while(1) if(RI=1) RI=0; switch(SBUF) case A:led1=led1;led2=1;break; case B:led1=1;led2=led2;break; case C:led1=led1;led2=led2;break; else led1=led2=1; delay(1000); 4.串行通信(MAX232芯片)原理图:程序:#include sbit led1=P

7、00;sbit led2=P01;void delay(long dly) while(dly-);void main() SCON=0x50; TMOD=0x20; TH1=0xfd; TL1=0xfd; PCON=0x00; TR1=1; RI=0; while(1) if(RI=1) RI=0; switch(SBUF) case A:led1=led1;led2=1;break; case B:led1=1;led2=led2;break; case C:led1=led1;led2=led2;break; else led1=led2=1; delay(1000); 5.MAX722

8、1芯片原理图:程序:#include #include sbit DIN=P20;sbit CSB=P21;sbit CLK=P22;unsigned char code buffer=2,0,1,5,10,5,10,9;void delay(long dly) while(dly-);void write(unsigned char addr,unsigned char dat) unsigned char i; CSB=0; for(i=0;i8;i+) CLK=0; addr=1; DIN=CY; CLK=1; _nop_(); _nop_(); CLK=0; for(i=0;i8;i+

9、) CLK=0; dat=1; DIN=CY; CLK=1; _nop_(); _nop_(); CLK=0; CSB=1;void initialise() write(0x09,0xff); write(0x0a,0x07); write(0x0b,0x07); write(0x0c,0x01);void main() unsigned char i; initialise(); delay(10); for(i=0;i8;i+) write(i+1,bufferi); while(1);6. T0控制LED实现二进制计数原理图:程序:#include void main() TMOD=0

10、x05; TR0=1; TH0=0x00; TL0=0x00; while(1) P1=TH0; P2=TL0; 8. 按键控制LED循环原理图:程序:#include #include void delay(unsigned int x) while(x-);void move_led() if(P1&0x10)=0) P0=_cror_(P0,1); else if(P1&0x20)=0) P0=_crol_(P0,1); else if(P1&0x40)=0) P2=_cror_(P2,1); else if(P1&0x80)=0) P2=_crol_(P2,1); void main(

11、) unsigned char key; P0=0xfe; P2=0xfe; P1=0xff; key=0xff; while(1) if(key!=P1) key=P1; move_led(); delay(15000); 9.按键控制数码管显示原理图:程序:#include unsigned char code led_code=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff;unsigned char code led_seg=0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01;unsigned c

12、har led_buffer=0,10,10,10,10,10,10,10;void delay(unsigned int x) unsigned char t; while(x-) for(t=0;t120;t+); void led_display() unsigned char i; for(i=0;i8) key_count=8; led_bufferkey_count-1=key_count; break; case 0xfd:if(key_count0) led_buffer-key_count=10; if(key_count=0) led_buffer0=0; break; c

13、ase 0xfb:led_buffer0=0; for(i=1;i8;i+) led_bufferi=10; key_count=0; while(P1!=0xff) led_display(); 10.报警器原理图:程序:#include sbit SOUNDER=P10;sbit BUTTON=P17;void delay(unsigned int x) while(x-);void alarm(unsigned char t) unsigned char i,j; for(i=0;i200;i+) SOUNDER=!SOUNDER; for(j=0;jt;j+); delay(15); void main() SOUNDER=0; while(1) BUTTON=1; if(BUTTON=1) alarm(90); alarm(120);

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1