找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2004|回复: 0
打印 上一主题 下一主题
收起左侧

51单片机led闪烁源码

[复制链接]
跳转到指定楼层
楼主
ID:159747 发表于 2017-1-3 22:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
led闪烁源码:
led.rar (862 Bytes, 下载次数: 9)

  1. /*******************************************************************************
  2. *                 
  3. *                                        普中科技
  4. --------------------------------------------------------------------------------
  5. * 实 验 名                 : LED闪烁的简单试验
  6. * 实验说明       : 得到8盏LED交替亮灭的实验效果
  7. * 连接方式       : 见连接图
  8. * 注    意                 :
  9. *******************************************************************************/

  10. //--包含你要使用的头文件--//
  11. #include <reg51.h>           //此文件中定义了51的一些特殊功能寄存器

  12. //--声明全局函数--//
  13. void Delay10ms(unsigned int c);   //延时10ms

  14. /*******************************************************************************
  15. * 函 数 名         : main
  16. * 函数功能                   : 主函数
  17. * 输    入         : 无
  18. * 输    出         : 无
  19. *******************************************************************************/

  20. void main()
  21. {
  22.         while(1)
  23.         {
  24.                 //--数字前面加0x表示该数是十六进制的数,0x00就是十六进制的00--//
  25.                 //--P2口一共有8个IO口,即从P2.0到P2.7,而0x00二进制就是0000 0000--//
  26.                 //--效果就是P2.0到P2.7都是0,即低电平。而如果你想给P2.1口赋高电平时--//
  27.                 //--二进制就是0000 0001,就是十六进制0x01.--//
  28.                 P0  = 0x00; //置P0口为低电平
  29.                
  30.                 Delay10ms(50); //调用延时程序,修改括号里面的值可以调整延时时间
  31.                
  32.                 P0  = 0xff; //置P0口为高电平
  33.                                
  34.                 Delay10ms(50); // 调用延时程序
  35.         }

  36. }

  37. /*******************************************************************************
  38. * 函 数 名         : Delay10ms
  39. * 函数功能                   : 延时函数,延时10ms
  40. * 输    入         : 无
  41. * 输    出         : 无
  42. *******************************************************************************/

  43. void Delay10ms(unsigned int c)   //误差 0us
  44. {
  45.     unsigned char a, b;

  46.         //--c已经在传递过来的时候已经赋值了,所以在for语句第一句就不用赋值了--//
  47.     for (;c>0;c--)
  48.         {
  49.                 for (b=38;b>0;b--)
  50.                 {
  51.                         for (a=130;a>0;a--);
  52.                 }
  53.            
  54.         }
  55.         
  56. }
复制代码


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表