Projetos eletrônica: como usar loops no código pbasic

O PBASIC loop FOR fará com que o BASIC Stamp em seu projeto eletrônica executar um loop de um determinado número de vezes. É também uma grande ferramenta de programação para executar uma ação em vários pinos de I / O. Assim, uma PARA

laço é a maneira ideal para implementar um programa de LED pisca-pisca.

A estrutura básica de um PARA circuito se parece com isso:

PARA contador = iniciar-value PARA fim-valorAfirmações...PRÓXIMO

Aqui está um exemplo que pisca o LED no pino 0 dez vezes:

X VAR BYTEFOR X = 1 TO 10HIGH 0PAUSE 500LOW 0PAUSE 500NEXT

Neste exemplo, o laço é executado dez vezes. O valor da variável X é aumentada por um de cada vez através do laço.

No exemplo anterior, o programa não utilizar a variável do contador. Isso é comum em PARA loops- às vezes a única finalidade para a variável do contador é controlar quantas vezes o loop é executado. Mas você pode usar a variável do contador dentro do loop. Por exemplo, aqui está um loop que faz com que cada / O pin I no alto do selo por um décimo de segundo:

IO_Pin VAR BYTEFOR IO_Pin = 0 a 15HIGH IO_PinPAUSE 100LOW IO_PinNEXT

Normalmente, a variável do contador é aumentada de um em cada passagem através do laço. Você pode usar o DEGRAU palavra-chave para especificar um valor diferente passo se quiser. Quando você usa a palavra-chave STEP, a estrutura básica da declaração PARA parece com isso:

Video: Tutorial Audacity - Como Criar Loops



PARA contador = iniciar-value PARA fim-valor DEGRAU passo-valorAfirmações...PRÓXIMO

Por exemplo, você poderia piscar LEDs apenas os pinos de numeração par como este:

VAR levou ByteFOR levou = 0 a 10 PASSO 2HIGH LedPAUSE 100LOW LedNEXT

Outra característica interessante do PARA laços é que eles podem contar para trás. Tudo que você tem a fazer é especificar um valor inicial que é maior do que o valor final, como este:

Video: Planejamento e gerenciamento de projetos

Levou VAR ByteFOR Led = 10 A 0 PASSO 2HIGH LedPAUSE 100LOW LedNEXT

Esta versão do programa LED pisca-pisca usa um par de PARA loops para piscar os LEDs primeiro num sentido, e depois no sentido oposto. O primeiro PARA ciclo pisca os LEDs no pinos 0, 2, 4, 6 e 8. Em seguida, o segundo PARA ciclo pisca os LEDs no pinos 10, 8, 6, 4, e 2. Ambos PARA laçadas estão contidos dentro de um FAZ loop que mantém os LEDs indo e voltando indefinidamente.

`LED Programa Flasher` Doug Lowe` 10 de julho de 2011 `` Este programa pisca LEDs conectados a pinos 0, 2, 4, 6, 8 e 10` e para trás, como olhos Cylon. `` Esta versão dos usos do programa PARA loops.` {$ SELO BS2}`{$ PBASIC 2,5} Led VAR ByteMain: PARA Led = 0 a 8 PASSO 2HIGH LedPAUSE 100LOW LedNEXTFOR Led = 10 TO 2 PASSO 2HIGH LedPAUSE 100LOW LedNEXTGOTO Principal

Quando PARA laçadas estão aninhados, o circuito (s) mais interior completar o seu ciclo de cada vez através do circuito externo. Se um PARA ciclo que se repete dez vezes é colocado dentro de um circuito externo que se repete dez vezes, as instruções dentro do anel mais interno executará um total de 100 vezes - dez vezes para cada um dos dez repetições do circuito externo.

Este utiliza um externa PARA loop que varia o tempo de atraso para o PAUSA afirmações. O resultado é que os LEDs varrer muito rápido no início, mas lento por 10 ms em cada repetição do laço exterior até que o atraso atinge um segundo por LED.

`LED Programa Flasher` Doug Lowe` 10 de julho de 2011 `` Este programa pisca LEDs conectados a pinos 0, 2, 4, 6, 8 e 10` e para trás, como olhos Cylon. `` Esta versão dos usos do programa aninhada para a próxima loops para retardar o `movimento de varredura dos LEDs. {$ SELO BS2}`{$ PBASIC 2,5} Led VAR ByteSpeed ​​VAR wordfor Velocidade = 10 a 1000 PASSO 10Porque Liderados = 0 a 8 PASSO 2HIGH LedPAUSE SpeedLOW LedNEXTFOR Led = 10 TO 2 PASSO 2HIGH LedPAUSE SpeedLOW LedNEXTNEXT

Publicações relacionadas