【问题标题】:Confused on PIC 18F4620对 PIC 18F4620 感到困惑
【发布时间】:2013-06-24 17:34:23
【问题描述】:

我不明白,为什么我的代码不能正常工作?这是这个简单的代码:

 void main() {

     TRISB = 0;
     TRISD = 0;

     while(1)
     {
          LATD.RB6 = 1;
          Delay_ms(1000);
          LATD.RB6 = 0;
          Delay_ms(1000);
          LATD.RD0 = 1;
          Delay_ms(1000);
          LATD.RD0 = 0;
          Delay_ms(1000);
     }
}

代码的效果是RD0上的LED在闪烁,RD1上的LED常亮!在 RB6 上没有发生任何事情。

请注意,我使用的是带有 Tiny Bootloader 的开发板。

【问题讨论】:

    标签: pic led


    【解决方案1】:

    有一个错字 - 闩锁 D 没有引脚 B6!将LATD.RB6 更改为LATB.RB6,它应该可以工作。

    如果你不希望 RD1 开启,你可以直接LATD.RD1 = 0

    固定代码:

    void main() {
    
     TRISB = 0;
     TRISD = 0;
    
     LATD.RD1 = 0;
     while(1){
          LATB.RB6 = 1;
          Delay_ms(1000);
          LATB.RB6 = 0;
          Delay_ms(1000);
          LATD.RD0 = 1;
          Delay_ms(1000);
          LATD.RD0 = 0;
          Delay_ms(1000);
     }
    }
    

    希望这会有所帮助!

    【讨论】:

    • 哦,抱歉,我不应该在编写代码时复制粘贴部分。谢谢! :)
    猜你喜欢
    • 1970-01-01
    • 2019-09-13
    • 2012-07-22
    • 2013-05-13
    • 2020-04-16
    • 2023-03-08
    • 2019-08-04
    • 2019-12-30
    • 2022-01-20
    相关资源
    最近更新 更多