gpt4 book ai didi

c - 循环被忽略 - 指令仅执行一次

转载 作者:行者123 更新时间:2023-11-30 15:40:50 24 4
gpt4 key购买 nike

我无法让循​​环工作。我已经尝试了一段时间,两者都遇到同样的问题。循环内的指令(LED 交替闪烁)执行一次,然后微 Controller 复位并再次执行初始双 LED 闪烁。有人能看到一些逻辑错误吗?

使用PIC16f688和XC8编译器。

#include <stdio.h>
#include <stdlib.h>
#include <xc.h>

#define _XTAL_FREQ 4000000

int main(int argc, char** argv) {

int count;

TRISA = 0b00000000;
TRISC = 0b00000000;

PORTA = 0b00000011;
__delay_ms(1000);
PORTA = 0b00000000;

for (count = 0; count < 5; count++) {

PORTA = 0b00000001;
__delay_ms(1000);
PORTA = 0b00000010;
__delay_ms(1000);

}

PORTA = 0b00000011;
__delay_ms(1000);
PORTA = 0b00000000;

return (EXIT_SUCCESS);
}

最佳答案

这是一个看门狗计时器问题。事实证明,默认看门狗的时间长度正是循环第一次迭代的时间长度,因此看起来循环只是跳过了。

要使用我的设置(MPLABX、XC8 编译器、PIC16f688)禁用看门狗定时器,代码为:

#pragma config WDTE = OFF

关于c - 循环被忽略 - 指令仅执行一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20811935/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com