我是一个完全的编码菜鸟,但我试图让所有的LED的 Flink 5次,而特别是使用一个for循环(它必须是一个for循环)。LED的问题是连接到总线(也必须是这样)与整数分配76。
编辑:当我尝试一个简单的for循环,计数器为5,然后在语句中打开和关闭LED时,它只做一次。如果可能的话,将LED Flink 分配给for循环中的计数可能会更简单?
到目前为止,我的想法是要么设计一个for循环,重复相同的数字两个数字5次(76和0)并将总线分配给语句中的计数,但我正在努力了解如何仅执行5次此操作(我的大脑只能感知到创建一个无休止重复的嵌套循环)或者以某种方式嵌套一个for循环,在内部循环上执行所需的操作,从外部循环开始计数。
谁能告诉我我是否走在正确的轨道上,如果是这样,如何运行我的第一个想法只5次或分配我的总线行动到我的外循环的第二个?
到目前为止的代码如下,但我只设法让LED打开。
PortOut traffic(PortC, 0b0000000001001100);
// The default flash rate is once per second for all tasks
int main()
{
int i;
int b;
traffic = 0;
// 1. Flash the ALL the LEDs 5 times using a for loop, when finished the LEDs must be OFF
for (i = 0; i < 5; i= i + 1)
{
(printf("i%d\n", i));
for (b = i; b < 5;)
{
traffic = 76;
wait_us(1000000);
traffic = 0;
}
}
非常感谢你
乔乔
尝试嵌套for循环以重复相同的两个整数5次,以便将总线分配给计数,但最终只能无休止地重复for循环。
尝试嵌套for循环以在外循环上计数到5,并在内环上 Flink LED,仅成功打开LED一次。
1条答案
按热度按时间bkhjykvo1#
你的外环正在计算脉冲的数量。
循环的内容决定LED开启或关闭的频率:
问题是,你有一个延迟后,你打开他们 * 和LED关闭后 *。它们不需要同时打开和关闭。延迟也应该能够调节亮度。