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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

51单片机常见程序附带注释Word格式.docx

1、 while(1) P2=aa; /控制单片机接口p2,循环亮 delayms(500); /当500换成5,看起来全亮,实际上灯一直亮灭,原因是视觉延迟 aa=_crol_(aa, 1); void delayms(uint xms) /子程序,延时,通过数数 uint i, j; for(i=xms;i0;i-) for(j=110;jj-);现在时间较长,多以是亮灭的流动,当时间约为20ms,形成动态扫描,看上去全亮。#include /52系列单片机头文件 (目标:用单片机和两个共阴极数码管:使用单片机的引脚1和2,控制两个数码管静态显示00到59)#define uchar unsi

2、gned char#define uint unsigned intsbit dula1=P17; /申明U1锁存器锁存端 段选sbit dula2=P07;uchar num,num1;uchar code table= /共阴极数码管0123456789abcdef0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71;void delayms(uint) ;void main () while(1) for(num1=0;num1=5;num1+) for(num=0;numx-)

3、/x=xms即延时约为xms毫秒 for (y=200;yy-);用单片机和两个共阴极数码管)sbit dula2=P27; dula1=1; P1=tablenum1; dula1=0; delayms(1000); delayms(1000);有语法错误 /52系列单片机头文件 #define uchar unsigned char /无符号字符型占八位数,表示范围0255#define uint unsigned int /无符号整型,占16位数,表示范围sbit dula1=P16; /申明U锁存器锁存端 段选uchar code table=0xc0,0xf9,0xa4, 0xb0,

4、 /共阳极数字:0123456789abcdefg0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xcd,0xa1,0x86,0x8e;void display(uchar,uchar) ;uchar num,num2,shi,ge;void main ()TMOD=0x11;/设置定时器0和1为工作方式1(M1M0为01,0001 00TH0= (65535-50000)/256;/装初值12.00M晶振定时50s数为50000TL0= (65535-50000)%256;TH1= (65535-50000)/256;TL1= (65535-50000)%2

5、56;EA=1;/ 开总中断ET0=1; / 开定时器0中断ET1=1; / 开定时器1中断TR0=1;/ 启动定时器0TR1=1;/ 启动定时器1while(1)/ 程序停止在这里不停的对数码管动态扫描同时等待中断的发生 display(shi,ge); dula2=1; P1=tableshi; dula2=0; delayms(1175); /延时0.1毫秒 void delayms(uint xms) /延时子程序 uint i,j; for (i=xms;i-) /i=xms即延时约为xms毫秒 for (j=110;void T1_time()interrupt 1TH1= (65

6、536-50000)/256; /重装初值TL1= (65536-50000)%256; num2+; /num每加1次判断一次是否到20次 if(num2=20) num2=0; /然后把num2清0重新再计数20次 num+; if (num=60) /这个数用来送数码管显示,到60后归0 num=0; shi=num/10; /把一个2位数分离后分别送数码管显示,十位数 ge=num%10; /个位数控制时间24小时一循环)uchar num,num1,num2,num3,num4; for(num3=0;num3=23;num3+) /每天24小时进位一 for(num2=0;num2

7、=59;num2+) /每60分进位一 for(num1=0;num1+) /每6*10s进位一 P1=tablenum1; delayms(1175); for(num=0;num+) /每1s进位一 dula2=1; P1=tablenum; dula2=0; delayms(1000); for (y=110;控制时间24小时一循环,蜂鸣器每过一段时间响一次)sbit f=P0; /声明单片机 P0口的第一位,也就是三极管基级的位置单片机第39接口num3+) /每天进位一 for(num4=0;num4+) /每60s 进位一 f=0; /控制蜂鸣器的不响num+) /每1ms进位一

8、dula2=1; P2=tablenum; dula2=0; delayms(1074); f=1; /控制蜂鸣器的响 delayms(1000); for (y=10;用单片机和两个共阳极数码管,控制依次显示0到59,然后循环,有合适的时间间隔,程序停止)6; delayms(100); P2=tablenum;用单片机和两个共阳极数码管,控制依次显示0到59,时间间隔约0.5,程序停止) for(num=0; void delayms (uint xms)/延时子程序 for (y=300; /申明U2锁存器锁存端 段选 /打开U2锁存端用单片机和共阳极数码管,控制依次显示0到9,时间间隔约0.5s;)uchar num;10; P1=tablenum; /延时500毫秒约0.3秒 P2=tablenum; dula2=0; /关闭U2锁存器用定时器0的方式1实现第一个灯管以200ms闪烁;用定时器1的方式1实现数码管前两位59s循环计时)sbit dula=P26;sbit wela=P27; / 申明U2锁存器锁存 位选sbit led1=P10; /申明灯1点00x39,0x5e,0x79,

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

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