a_little_program 2024-12-06 17:15 采纳率: 0%
浏览 61
已结题

怎么让数码管亮的同时让led执行流水灯代码

如图,如果做出图里面全部的效果有加赏
主要是不好让数码管亮的同时让led执行流水灯,用中断代码也不能让流水灯亮起来

img

img

img

img

img

  • 写回答

36条回答 默认 最新

  • 阿里嘎多学长 2024-12-06 17:17
    关注
    获得0.15元问题酬金

    阿里嘎多学长整理AIGC生成,因移动端显示问题导致当前答案未能完全显示,请使用PC端查看更加详细的解答过程

    解决方案

    你遇到的问题是:如何让数码管亮的同时让LED执行流水灯代码。

    根据你的描述,使用中断代码也不能让流水灯亮起来,这可能是因为中断代码会占用CPU的时间,导致数码管不能正常工作。

    一种解决方案是使用定时器来控制LED的流水灯效果,同时使用数字管的扫描线来控制数码管的显示。

    在51单片机中,你可以使用 Timer0 来控制LED的流水灯效果,使用 Timer1 来控制数码管的扫描线。

    以下是一个简单的示例代码:

    #include <reg51.h>
    
    #define LED_PIN P1^0 // LED 的引脚
    #define DIGIT_PIN P1^1 // 数码管的引脚
    
    void main() {
        // 初始化 LED 和 数码管
        P1 = 0xFF; // 设置 LED 和 数码管 的引脚为输出
        TR1 = 0x01; // 设置 Timer1 为输出
        TR0 = 0x01; // 设置 Timer0 为输出
    
        // 设置 Timer0 的溢出间隔为 50ms
        TMOD = 0x01;
        TL0 = 0x00;
        TH0 = 0x64;
    
        // 设置 Timer1 的溢出间隔为 1ms
        TMOD = 0x01;
        TL1 = 0x00;
        TH1 = 0x64;
    
        while (1) {
            // 使用 Timer0 控制 LED 的流水灯效果
            if (TF0) {
                TF0 = 0;
                // 亮 LED
                P1 = 0x01;
                // 等待 50ms
                delay(50);
                // 灭 LED
                P1 = 0x00;
                // 等待 50ms
                delay(50);
            }
    
            // 使用 Timer1 控制 数码管 的扫描线
            if (TF1) {
                TF1 = 0;
                // 亮 数码管 的某个数字
                P1 = 0x02;
                // 等待 1ms
                delay(1);
                // 灭 数码管 的某个数字
                P1 = 0x00;
                // 等待 1ms
                delay(1);
            }
        }
    }
    
    void delay(int time) {
        int i;
        for (i = 0; i < time; i++);
    }
    

    这个示例代码使用 Timer0 来控制LED的流水灯效果,每次溢出后亮 LED 50ms,灭 LED 50ms。使用 Timer1 来控制数码管的扫描线,每次溢出后亮 数码管 的某个数字 1ms,灭 数码管 的某个数字 1ms。

    请注意,这只是一个简单的示例代码,你可能需要根据你的实际情况进行修改。

    评论

报告相同问题?

问题事件

  • 系统已结题 12月14日
  • 创建了问题 12月6日

悬赏问题

  • ¥15 PADS Logic 原理图
  • ¥15 PADS Logic 图标
  • ¥15 电脑和power bi环境都是英文如何将日期层次结构转换成英文
  • ¥20 气象站点数据求取中~
  • ¥15 如何获取APP内弹出的网址链接
  • ¥15 wifi 图标不见了 不知道怎么办 上不了网 变成小地球了
  • ¥50 STM32单片机传感器读取错误
  • ¥50 power BI 从Mysql服务器导入数据,但连接进去后显示表无数据
  • ¥15 (关键词-阻抗匹配,HFSS,RFID标签天线)
  • ¥15 机器人轨迹规划相关问题