• 单片机——使用P3口流水点亮8位LED


    电路原理图如图

    实现方法

    可通过循环执行以下操作来实现:


    1. 先点亮P3.0引脚LED,利用延时程序延时一段时间,其实现程序为:
    P3=0xfe;                        // 即P3=1111 1110B, P3.0置为低电平
    delay();                          // 调用延时函数延时一段时间


    2. 接着点亮P3.1引脚LED,利用延时程序延时一段时间,其实现程序为:
    P3=0xfd;                        // 即P3=1111 1101B, P3.1置为低电平
    delay();                          // 调用延时函数延时一段时间
    ……


    3. 最后点亮P3.7引脚LED,利用延时程序延时一段时间,其实现程序为:
    P3=0x7f;                        // 即P3=0111 1111B, P3.7置为低电平
    delay();                          // 调用延时函数延时一段时间

    程序设计

    1. #include //包含单片机寄存器的头文件
    2. /****************************************
    3. 函数功能:延时一段时间
    4. *****************************************/
    5. void delay(void)
    6. {
    7. unsigned char i, j;
    8. for(i=0;i<250;i++)
    9. for(j=0;j<250;j++)
    10. ;
    11. }
    12. /*******************************************************
    13. 函数功能:主函数
    14. ********************************************************/
    15. void main(void)
    16. {
    17. while(1)
    18. {
    19. P3=0xfe; //第一个灯亮
    20. delay(); //调用延时函数
    21. P3=0xfd; //第二个灯亮
    22. delay(); //调用延时函数
    23. P3=0xfb; //第三个灯亮
    24. delay(); //调用延时函数
    25. P3=0xf7; //第四个灯亮
    26. delay(); //调用延时函数
    27. P3=0xef; //第五个灯亮
    28. delay(); //调用延时函数
    29. P3=0xdf; //第六个灯亮
    30. delay(); //调用延时函数
    31. P3=0xbf; //第七个灯亮
    32. delay(); //调用延时函数
    33. P3=0x7f; //第八个灯亮
    34. delay(); //调用延时函数
    35. }
    36. }

     

  • 相关阅读:
    Redis 哨兵集群工作原理
    vue(12)
    ssm信息安全资讯网站毕业设计-附源码191651
    springboot14:整合mybatisPlus操作数据库
    队列(C语言实现)
    Java中遍历HashSet集合有哪些方法呢?
    手撕漏桶&令牌桶限流算法(Java版)
    .net 6开发linq与lambda写法对照
    VB-13
    Go语言核心(二)
  • 原文地址:https://blog.csdn.net/qq_50942093/article/details/126990208