单片机实例三-1.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
单片机实例三-1

任务3 控制8个LED发光二极管闪烁 1.任务目的 通过MCS-51系列单片机控制8个LED实现闪烁效果的实例,熟悉单 片机并行I/O端口及其使用。 2.任务要求 将任务1中的一个信号灯控制系统扩展,在P1口上连接8个LED ,并将给定的C语言源程序编辑、编译后下载到单片机,进行软、硬件联调,实现8个LED闪烁效果。 3.电路及元器件 1)原理电路 2)元器件清单 元器件名称 参数 数量 元器件名称 参数 数量 单片机 AT89S51 1 弹性按键 1 电阻 1k 8 电阻 10k 1 八路反相器 74LS240 1 电解电容 22F 1 发光二极管 8 IC插座 DIP40 1 晶体振荡器 12MHz 1 IC插座 DIP20 1 瓷片电容 30pF 2 74LS240起隔离作用,保护单片机芯片、增加输出口扇出能力。 4.硬件电路制作 小经验:在单片机输出端口电路中常会用集成驱动芯片、缓冲与锁存芯片,如74LS245或集电极开路电路74LS06、74LS07等,这是为了增加端口扇出电流,提高负载能力。 5.程序及下载 //程序:ex3_1.c //功能:控制八个信号灯闪烁程序 #include reg51.h //包含头文件REG51.H,定义了MCS-51单片机的特殊功能寄存器 void delay(unsigned char i); //延时函数声明 void main() //主函数 { while(1) { P1=0x00; //将P1口的八位引脚清0,点亮八个LED delay(200); //延时 P1=0xff; //将P1口的八位引脚置1,熄灭八个LED delay(200); //延时 } } //函数名:delay //函数功能:实现软件延时 //形式参数:unsigned char i; // i控制空循环的外循环次数,共循环i*255次 //返回值:无 void delay(unsigned char i) //延时函数,无符号字符型变量i为形式参数 { unsigned char j,k; //定义无符号字符型变量j和k for(k=0;ki;k++) //双重for循环语句实现软件延时 for(j=0;j255;j++); } 提示:在C语言中,十六进制数的表示方法:在数据前面加上符号“0x” 6. 程序运行测试 将程序下载到单片机中,接通电源,观察调试。 7.任务小结 1)本任务通过控制8个LED闪烁效果的软硬件设计,初步了解如何通过C语言编程序控制单片机并行I/O口。2)P1口某个引脚为低电平“0”时,对应LED点亮;为高电平“1”时,对应LED熄灭。3)通过向P1口写入一个8位二进制数来改变某个引脚的输出电平状态。如“ P1=0x00;”或者“ P1=0xff;”。4)程序调试时一个反复进行过程,必须反复修改软件、硬件,直到运行结果完全符合要求为止。

文档评论(0)

xy88118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档