I am a new user. I'm working on the sequencing lights program. I want to write a program of my own that will only loop once or twice. I understand the program will go forever until power is removed. I would like to be able to make program adjustments and then restart to program.
I believe that I have to just rewrite the program, verify then upload it. Is that my best option? I write new programs in a word processor then paste them in.
Thank you for your help. By the way, I am 74 years old. trying to keep my mind active.
you can hard code the control algorithm parameters into the program - compile, link and run it
edit the program source to modify the parameters - comiple, link and run it
etc etc
an alternative is to loop
- reading the parameters from the keyboard
2.- execute the control sequence
hence once the program is working you don't have to keep editing the sorce code
I hope you know that you can upload new code to the board while it is in the middle of repeating whatever it is repeating.
You could put all your code in setup(), there it will only run once or
count in the loop how many times you’ve come around and put a show stopper in there
if (count > 13)
while (1) {} // will sit here forever doing nothing else but
but really, why bother?
a7
what?
Thanks, everyone. I will continue to gain better knowledge of C++.
Sometimes all you need is a little google fu. I read your question again for the first time…
Tip: add Arduino to anything.
Still might need to know how things are referred to. Try
change program parameters arduino serial
and poke around a bit, I think it might move you along.
Also, the IDE I assume you are using has an editor, dunno why a word processor needs to be part of your work flow.
HTH
a7
Sorry to be a pest.
This is what I have so far but I am lost as to what it is asking. I have reviewed other programs to compare and for the life of me, I can't figure out what I am missing.
@@@@@@@@@@@@@@@@ CODE BELOW @@@@@@@@@@@@@@
int LED1 = 13;
int LED2 = 12;
int LED3 = 11;
int LED4 = 10;
int LED5 = 9;
int LED6 = 8;
int LED7 = 7;
int LED8 = 6;
int LED9 = 5;
int LED10 = 4;
int LED11 = 3;
int LED12 = 2;
void setup() {
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
pinMode(10, OUTPUT);
pinMode(11, OUTPUT);
pinMode(12, OUTPUT);
pinMode(13, OUTPUT);
}
// Right to Left
digitalWrite(1, HIGH);
delay(100);
digitalWrite(1, LOW);
delay(100);
digitalWrite(2, HIGH);
delay(100);
digitalWrite(2, LOW);
delay(100);
digitalWrite(3, HIGH);
delay(100);
digitalWrite(3, LOW);
delay(100);
digitalWrite(4, HIGH);
delay(100);
digitalWrite(4, LOW);
delay(100);
digitalWrite(5, HIGH);
delay(100);
digitalWrite(5, LOW);
delay(100);
digitalWrite(6, HIGH);
delay(100);
digitalWrite(6, LOW);
delay(100);
digitalWrite(7, HIGH);
delay(100);
digitalWrite(7, LOW);
delay(100);
digitalWrite(8, HIGH);
delay(100);
digitalWrite(8, LOW);
delay(100);
digitalWrite(9, HIGH);
delay(100);
digitalWrite(9, LOW);
delay(100);
digitalWrite(10, HIGH);
delay(100);
digitalWrite(10, LOW);
delay(100);
digitalWrite(11, HIGH);
delay(100);
digitalWrite(11, LOW);
delay(100);
digitalWrite(12, HIGH);
delay(100);
digitalWrite(12, LOW);
delay(100);
digitalWrite(1, HIGH);
delay(100);
digitalWrite(1, LOW);
delay(100);
digitalWrite(2, HIGH);
delay(100);
digitalWrite(2, LOW);
delay(100);
digitalWrite(3, HIGH);
delay(100);
digitalWrite(3, LOW);
delay(100);
digitalWrite(4, HIGH);
delay(100);
digitalWrite(4, LOW);
delay(100);
digitalWrite(5, HIGH);
delay(100);
digitalWrite(5, LOW);
delay(100);
digitalWrite(6, HIGH);
delay(100);
digitalWrite(6, LOW);
delay(100);
digitalWrite(7, HIGH);
delay(100);
digitalWrite(7, LOW);
delay(100);
digitalWrite(8, HIGH);
delay(100);
digitalWrite(8, LOW);
delay(100);
digitalWrite(9, HIGH);
delay(100);
digitalWrite(9, LOW);
delay(100);
digitalWrite(10, HIGH);
delay(100);
digitalWrite(10, LOW);
delay(100);
digitalWrite(11, HIGH);
delay(100);
digitalWrite(11, LOW);
delay(100);
digitalWrite(12, HIGH);
delay(100);
digitalWrite(12, LOW);
delay(100);
// Left to Right
digitalWrite(12, HIGH);
delay(100);
digitalWrite(12, LOW);
delay(100);
digitalWrite(11, HIGH);
delay(100);
digitalWrite(11, LOW);
delay(100);
digitalWrite(10, HIGH);
delay(100);
digitalWrite(10, LOW);
delay(100);
digitalWrite(9, HIGH);
delay(100);
digitalWrite(9, LOW);
delay(100);
digitalWrite(8, HIGH);
delay(100);
digitalWrite(8, LOW);
delay(100);
digitalWrite(7, HIGH);
delay(100);
digitalWrite(7, LOW);
delay(100);
digitalWrite(6, HIGH);
delay(100);
digitalWrite(6, LOW);
delay(100);
digitalWrite(5, HIGH);
delay(100);
digitalWrite(5, LOW);
delay(100);
digitalWrite(4, HIGH);
delay(100);
digitalWrite(4, LOW);
delay(100);
digitalWrite(3, HIGH);
delay(100);
digitalWrite(3, LOW);
delay(100);
digitalWrite(2, HIGH);
delay(100);
digitalWrite(2, LOW);
delay(100);
digitalWrite(1, HIGH);
delay(100);
digitalWrite(1, LOW);
delay(100);
digitalWrite(12, HIGH);
delay(100);
digitalWrite(12, LOW);
delay(100);
digitalWrite(11, HIGH);
delay(100);
digitalWrite(11, LOW);
delay(100);
digitalWrite(10, HIGH);
delay(100);
digitalWrite(10, LOW);
delay(100);
digitalWrite(9, HIGH);
delay(100);
digitalWrite(9, LOW);
delay(100);
digitalWrite(8, HIGH);
delay(100);
digitalWrite(8, LOW);
delay(100);
digitalWrite(7, HIGH);
delay(100);
digitalWrite(7, LOW);
delay(100);
digitalWrite(6, HIGH);
delay(100);
digitalWrite(6, LOW);
delay(100);
digitalWrite(5, HIGH);
delay(100);
digitalWrite(5, LOW);
delay(100);
digitalWrite(4, HIGH);
delay(100);
digitalWrite(4, LOW);
delay(100);
digitalWrite(3, HIGH);
delay(100);
digitalWrite(3, LOW);
delay(100);
digitalWrite(2, HIGH);
delay(100);
digitalWrite(2, LOW);
delay(100);
digitalWrite(1, HIGH);
delay(100);
digitalWrite(1, LOW);
delay(100);
// Right to Left 2 at a time
digitalWrite(1, HIGH);
delay(100);
digitalWrite(2, HIGH);
delay(100);
digitalWrite(1, LOW);
delay(100);
digitalWrite(2, LOW);
delay(100);
digitalWrite(3, HIGH);
delay(100);
digitalWrite(4, HIGH);
delay(100);
digitalWrite(3, LOW);
delay(100);
digitalWrite(4, LOW);
delay(100);
digitalWrite(5, HIGH);
delay(100);
digitalWrite(6, HIGH);
delay(100);
digitalWrite(5, LOW);
delay(100);
digitalWrite(6, LOW);
delay(100);
digitalWrite(7, HIGH);
delay(100);
digitalWrite(8, HIGH);
delay(100);
digitalWrite(7, LOW);
delay(100);
digitalWrite(8, HIGH);
delay(100);
digitalWrite(9, HIGH);
delay(100);
digitalWrite(10, HIGH);
delay(100);
digitalWrite(9, LOW);
delay(100);
digitalWrite(10, LOW);
delay(100);
digitalWrite(11, HIGH);
delay(100);
digitalWrite(12, HIGH);
delay(100);
digitalWrite(11, LOW);
delay(100);
digitalWrite(12, LOW);
delay(100);
digitalWrite(1, HIGH);
delay(100);
digitalWrite(2, HIGH);
delay(100);
digitalWrite(1, LOW);
delay(100);
digitalWrite(2, LOW);
delay(100);
digitalWrite(3, HIGH);
delay(100);
digitalWrite(4, HIGH);
delay(100);
digitalWrite(3, LOW);
delay(100);
digitalWrite(4, LOW);
delay(100);
digitalWrite(5, HIGH);
delay(100);
digitalWrite(6, HIGH);
delay(100);
digitalWrite(5, LOW);
delay(100);
digitalWrite(6, LOW);
delay(100);
digitalWrite(7, HIGH);
delay(100);
digitalWrite(8, HIGH);
delay(100);
digitalWrite(7, LOW);
delay(100);
digitalWrite(8, HIGH);
delay(100);
digitalWrite(9, HIGH);
delay(100);
digitalWrite(10, HIGH);
delay(100);
digitalWrite(9, LOW);
delay(100);
digitalWrite(10, LOW);
delay(100);
digitalWrite(11, HIGH);
delay(100);
digitalWrite(12, HIGH);
delay(100);
digitalWrite(11, LOW);
delay(100);
digitalWrite(12, LOW);
delay(100);
// Middle out
digitalWrite(6, HIGH);
delay(100);
digitalWrite(6, LOW);
delay(100);
digitalWrite(6, HIGH);
delay(100);
digitalWrite(6, LOW);
delay(100);
digitalWrite(5, HIGH);
delay(100);
digitalWrite(7, HIGH);
delay(100);
digitalWrite(5, LOW);
delay(100);
digitalWrite(7, LOW);
delay(100);
digitalWrite(4, HIGH);
delay(100);
digitalWrite(8, HIGH);
delay(100);
digitalWrite(4, LOW);
delay(100);
digitalWrite(8, LOW);
delay(100);
digitalWrite(3, HIGH);
delay(100);
digitalWrite(9, HIGH);
delay(100);
digitalWrite(3, LOW);
delay(100);
digitalWrite(9, LOW);
delay(100);
digitalWrite(2, HIGH);
delay(100);
digitalWrite(10, HIGH);
delay(100);
digitalWrite(2, LOW);
delay(100);
digitalWrite(10, LOW);
delay(100);
digitalWrite(1, HIGH);
delay(100);
digitalWrite(11, HIGH);
delay(100);
digitalWrite(1, LOW);
delay(100);
digitalWrite(11, LOW);
delay(100);
digitalWrite(6, HIGH);
delay(100);
digitalWrite(6, LOW);
delay(100);
digitalWrite(6, HIGH);
delay(100);
digitalWrite(6, LOW);
delay(100);
digitalWrite(5, HIGH);
delay(100);
digitalWrite(7, HIGH);
delay(100);
digitalWrite(5, LOW);
delay(100);
digitalWrite(7, LOW);
delay(100);
digitalWrite(4, HIGH);
delay(100);
digitalWrite(8, HIGH);
delay(100);
digitalWrite(4, LOW);
delay(100);
digitalWrite(8, LOW);
delay(100);
digitalWrite(3, HIGH);
delay(100);
digitalWrite(9, HIGH);
delay(100);
digitalWrite(3, LOW);
delay(100);
digitalWrite(9, LOW);
delay(100);
digitalWrite(2, HIGH);
delay(100);
digitalWrite(10, HIGH);
delay(100);
digitalWrite(2, LOW);
delay(100);
digitalWrite(10, LOW);
delay(100);
digitalWrite(1, HIGH);
delay(100);
digitalWrite(11, HIGH);
delay(100);
digitalWrite(1, LOW);
delay(100);
digitalWrite(11, LOW);
delay(100);
}
| alto777
March 5 |
- | - |
Sometimes all you need is a little google fu. I read your question again for the first time…
Tip: add Arduino to anything.
Still might need to know how things are referred to. Try
change program parameters arduino serial
and poke around a bit, I think it might move you along.
Also, the IDE I assume you are using has an editor, dunno why a word processor needs to be part of your work flow.
HTH
a7
Round your line #31, you forgot
void loop() {
// matching } at the end is already there.
It depends on what the adjustments are.
It's not so hard to write a sketch that lets you change operating values.
I'm only 65 but I've done this kind of thing for a while now.
I reformatted so you can see what you are doing. Eventually, you :could: simplify this into a multi-tab IDE.
int LED1 = 13;
int LED2 = 12;
int LED3 = 11;
int LED4 = 10;
int LED5 = 9;
int LED6 = 8;
int LED7 = 7;
int LED8 = 6;
int LED9 = 5;
int LED10 = 4;
int LED11 = 3;
int LED12 = 2;
void setup() {
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
pinMode(10, OUTPUT);
pinMode(11, OUTPUT);
pinMode(12, OUTPUT);
pinMode(13, OUTPUT);
}
void loop () {
// Left to Right
left2right();
// Right to Left 2 at a time
right2leftx2();
// Middle out
middleout();
}
void left2right()
{
// Right to Left
digitalWrite(1, HIGH);
delay(100);
digitalWrite(1, LOW);
delay(100);
digitalWrite(2, HIGH);
delay(100);
digitalWrite(2, LOW);
delay(100);
digitalWrite(3, HIGH);
delay(100);
digitalWrite(3, LOW);
delay(100);
digitalWrite(4, HIGH);
delay(100);
digitalWrite(4, LOW);
delay(100);
digitalWrite(5, HIGH);
delay(100);
digitalWrite(5, LOW);
delay(100);
digitalWrite(6, HIGH);
delay(100);
digitalWrite(6, LOW);
delay(100);
digitalWrite(7, HIGH);
delay(100);
digitalWrite(7, LOW);
delay(100);
digitalWrite(8, HIGH);
delay(100);
digitalWrite(8, LOW);
delay(100);
digitalWrite(9, HIGH);
delay(100);
digitalWrite(9, LOW);
delay(100);
digitalWrite(10, HIGH);
delay(100);
digitalWrite(10, LOW);
delay(100);
digitalWrite(11, HIGH);
delay(100);
digitalWrite(11, LOW);
delay(100);
digitalWrite(12, HIGH);
delay(100);
digitalWrite(12, LOW);
delay(100);
digitalWrite(1, HIGH);
delay(100);
digitalWrite(1, LOW);
delay(100);
digitalWrite(2, HIGH);
delay(100);
digitalWrite(2, LOW);
delay(100);
digitalWrite(3, HIGH);
delay(100);
digitalWrite(3, LOW);
delay(100);
digitalWrite(4, HIGH);
delay(100);
digitalWrite(4, LOW);
delay(100);
digitalWrite(5, HIGH);
delay(100);
digitalWrite(5, LOW);
delay(100);
digitalWrite(6, HIGH);
delay(100);
digitalWrite(6, LOW);
delay(100);
digitalWrite(7, HIGH);
delay(100);
digitalWrite(7, LOW);
delay(100);
digitalWrite(8, HIGH);
delay(100);
digitalWrite(8, LOW);
delay(100);
digitalWrite(9, HIGH);
delay(100);
digitalWrite(9, LOW);
delay(100);
digitalWrite(10, HIGH);
delay(100);
digitalWrite(10, LOW);
delay(100);
digitalWrite(11, HIGH);
delay(100);
digitalWrite(11, LOW);
delay(100);
digitalWrite(12, HIGH);
delay(100);
digitalWrite(12, LOW);
delay(100);
digitalWrite(12, HIGH);
delay(100);
digitalWrite(12, LOW);
delay(100);
digitalWrite(11, HIGH);
delay(100);
digitalWrite(11, LOW);
delay(100);
digitalWrite(10, HIGH);
delay(100);
digitalWrite(10, LOW);
delay(100);
digitalWrite(9, HIGH);
delay(100);
digitalWrite(9, LOW);
delay(100);
digitalWrite(8, HIGH);
delay(100);
digitalWrite(8, LOW);
delay(100);
digitalWrite(7, HIGH);
delay(100);
digitalWrite(7, LOW);
delay(100);
digitalWrite(6, HIGH);
delay(100);
digitalWrite(6, LOW);
delay(100);
digitalWrite(5, HIGH);
delay(100);
digitalWrite(5, LOW);
delay(100);
digitalWrite(4, HIGH);
delay(100);
digitalWrite(4, LOW);
delay(100);
digitalWrite(3, HIGH);
delay(100);
digitalWrite(3, LOW);
delay(100);
digitalWrite(2, HIGH);
delay(100);
digitalWrite(2, LOW);
delay(100);
digitalWrite(1, HIGH);
delay(100);
digitalWrite(1, LOW);
delay(100);
digitalWrite(12, HIGH);
delay(100);
digitalWrite(12, LOW);
delay(100);
digitalWrite(11, HIGH);
delay(100);
digitalWrite(11, LOW);
delay(100);
digitalWrite(10, HIGH);
delay(100);
digitalWrite(10, LOW);
delay(100);
digitalWrite(9, HIGH);
delay(100);
digitalWrite(9, LOW);
delay(100);
digitalWrite(8, HIGH);
delay(100);
digitalWrite(8, LOW);
delay(100);
digitalWrite(7, HIGH);
delay(100);
digitalWrite(7, LOW);
delay(100);
digitalWrite(6, HIGH);
delay(100);
digitalWrite(6, LOW);
delay(100);
digitalWrite(5, HIGH);
delay(100);
digitalWrite(5, LOW);
delay(100);
digitalWrite(4, HIGH);
delay(100);
digitalWrite(4, LOW);
delay(100);
digitalWrite(3, HIGH);
delay(100);
digitalWrite(3, LOW);
delay(100);
digitalWrite(2, HIGH);
delay(100);
digitalWrite(2, LOW);
delay(100);
digitalWrite(1, HIGH);
delay(100);
digitalWrite(1, LOW);
delay(100);
}
void right2leftx2()
{ digitalWrite(1, HIGH);
delay(100);
digitalWrite(2, HIGH);
delay(100);
digitalWrite(1, LOW);
delay(100);
digitalWrite(2, LOW);
delay(100);
digitalWrite(3, HIGH);
delay(100);
digitalWrite(4, HIGH);
delay(100);
digitalWrite(3, LOW);
delay(100);
digitalWrite(4, LOW);
delay(100);
digitalWrite(5, HIGH);
delay(100);
digitalWrite(6, HIGH);
delay(100);
digitalWrite(5, LOW);
delay(100);
digitalWrite(6, LOW);
delay(100);
digitalWrite(7, HIGH);
delay(100);
digitalWrite(8, HIGH);
delay(100);
digitalWrite(7, LOW);
delay(100);
digitalWrite(8, HIGH);
delay(100);
digitalWrite(9, HIGH);
delay(100);
digitalWrite(10, HIGH);
delay(100);
digitalWrite(9, LOW);
delay(100);
digitalWrite(10, LOW);
delay(100);
digitalWrite(11, HIGH);
delay(100);
digitalWrite(12, HIGH);
delay(100);
digitalWrite(11, LOW);
delay(100);
digitalWrite(12, LOW);
delay(100);
digitalWrite(1, HIGH);
delay(100);
digitalWrite(2, HIGH);
delay(100);
digitalWrite(1, LOW);
delay(100);
digitalWrite(2, LOW);
delay(100);
digitalWrite(3, HIGH);
delay(100);
digitalWrite(4, HIGH);
delay(100);
digitalWrite(3, LOW);
delay(100);
digitalWrite(4, LOW);
delay(100);
digitalWrite(5, HIGH);
delay(100);
digitalWrite(6, HIGH);
delay(100);
digitalWrite(5, LOW);
delay(100);
digitalWrite(6, LOW);
delay(100);
digitalWrite(7, HIGH);
delay(100);
digitalWrite(8, HIGH);
delay(100);
digitalWrite(7, LOW);
delay(100);
digitalWrite(8, HIGH);
delay(100);
digitalWrite(9, HIGH);
delay(100);
digitalWrite(10, HIGH);
delay(100);
digitalWrite(9, LOW);
delay(100);
digitalWrite(10, LOW);
delay(100);
digitalWrite(11, HIGH);
delay(100);
digitalWrite(12, HIGH);
delay(100);
digitalWrite(11, LOW);
delay(100);
digitalWrite(12, LOW);
delay(100);
}
void middleout() {
digitalWrite(6, HIGH);
delay(100);
digitalWrite(6, LOW);
delay(100);
digitalWrite(6, HIGH);
delay(100);
digitalWrite(6, LOW);
delay(100);
digitalWrite(5, HIGH);
delay(100);
digitalWrite(7, HIGH);
delay(100);
digitalWrite(5, LOW);
delay(100);
digitalWrite(7, LOW);
delay(100);
digitalWrite(4, HIGH);
delay(100);
digitalWrite(8, HIGH);
delay(100);
digitalWrite(4, LOW);
delay(100);
digitalWrite(8, LOW);
delay(100);
digitalWrite(3, HIGH);
delay(100);
digitalWrite(9, HIGH);
delay(100);
digitalWrite(3, LOW);
delay(100);
digitalWrite(9, LOW);
delay(100);
digitalWrite(2, HIGH);
delay(100);
digitalWrite(10, HIGH);
delay(100);
digitalWrite(2, LOW);
delay(100);
digitalWrite(10, LOW);
delay(100);
digitalWrite(1, HIGH);
delay(100);
digitalWrite(11, HIGH);
delay(100);
digitalWrite(1, LOW);
delay(100);
digitalWrite(11, LOW);
delay(100);
digitalWrite(6, HIGH);
delay(100);
digitalWrite(6, LOW);
delay(100);
digitalWrite(6, HIGH);
delay(100);
digitalWrite(6, LOW);
delay(100);
digitalWrite(5, HIGH);
delay(100);
digitalWrite(7, HIGH);
delay(100);
digitalWrite(5, LOW);
delay(100);
digitalWrite(7, LOW);
delay(100);
digitalWrite(4, HIGH);
delay(100);
digitalWrite(8, HIGH);
delay(100);
digitalWrite(4, LOW);
delay(100);
digitalWrite(8, LOW);
delay(100);
digitalWrite(3, HIGH);
delay(100);
digitalWrite(9, HIGH);
delay(100);
digitalWrite(3, LOW);
delay(100);
digitalWrite(9, LOW);
delay(100);
digitalWrite(2, HIGH);
delay(100);
digitalWrite(10, HIGH);
delay(100);
digitalWrite(2, LOW);
delay(100);
digitalWrite(10, LOW);
delay(100);
digitalWrite(1, HIGH);
delay(100);
digitalWrite(11, HIGH);
delay(100);
digitalWrite(1, LOW);
delay(100);
digitalWrite(11, LOW);
delay(100);
}
Sketch uses 3296 bytes (10%) of program storage space. Maximum is 32256 bytes.
Global variables use 9 bytes (0%) of dynamic memory, leaving 2039 bytes for local variables. Maximum is 2048 bytes.
Not at all.
You are going to love learning more about programming… I think I see where the word processor comes into things.
I suggest you stop trying to do cool stuff, as gratifying as it may be, and start looking into basic language features that will make things like this very much easier.
Save this program when/if you get it working, as it seems you are close to doing, and come back to it one day and marvel.
Have you found on line sources that present a step by step approach to the Arduino?
basic Arduino programming
or
Arduino beginner's tutorial
and things like that, there are literally dozens of places to see. Give a few 10 or 15 minutes each; you will learn something no matter what, and quickly discover whether you are a match to the material, how it is presented and whoever is leading.
Key is finding something that matches your learning style, video or reading or just googling once you are wondering about a concept… the only thing all of them have in common is that it will take some time and work.
We all started nowhere, and some delight in making it look easy, but it isn't, and never was for anyone.
a7
Thanks, everyone. I appreciate your patience.
But do please read the instructions, then go back and edit your post #7 to properly include the code.
Edit - "pencil" icon below the post.
This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.