/*
you can write notes that will not be part of the scripte with forward slash star
then star forward slash to end
*/
You can also do just forward slash, forward slash space for a single line
* End of line
* Use semicolen at the end of each line, ex:
* pinMode(13, OUTPUT);
== Pins: ==
Unless othersiwse stated, pins are just indicated by numbers such as:
* pinMode(13, OUTPUT);
* delay([milliseconds])
==== Advanced Syntax ====
* Cast
* Cast is a way of converting one type of data, to another type,
* such as float to int
* ([type])[var]
* type is things like float or int
* var is any variable or constant
* Example (to change a float brightness to a int brightness
* float bright = sensorValue * (255.0 / 1023.0);
* int bint; a way to define an int name, but give no value
float bflo; define float name, but give no value
* bflo = bright; sets what value the float is
bint = (int)bflo; this is the cast directive
* analogWrite(led, bint); for this example, it would cast the light as an int through a pwm pin and allow it to be an integer between 0-255
Before void setup:
Before setup you can define things such as int
void setup
-
“The setup() function is called when a sketch starts. Use it to initialize variables, pin modes, start using libraries, etc. The setup function will only run once, after each powerup or reset of the Arduino board. ”
Within the void setup brackets {}
Numbers and more etc
int
int [var] = x:
This will define an integer with
[var]
name of integer
x
Any 16 bit number which is between -32,768 and 32,768.
If larger see:
-
Can also make x a sensor value or other things ex
int sensorvalue = analogRead(A0);
float
float [var] = [val];
[var]
name of float
[val]
32bit number meant for decimal point value
long
long [var] = [val][L]
for ding larger numbers that are 32bit but integers.
If doing math with integers, need to have L at end of number
ex:
long speedOfLight - 186000L
Before operators:
const
const [type] [name] = [var]
A constant will not change, so you can not use operations to change the int or float
unsigned
unsigned [type] [name] = [var]
Unsigned will use the bit available per type in only positive.
for example for int, it will used:0 to 65,535
instead of -32,768 and 32,768
Modes
pinMode([pin], [configuration]);
-
[pin] an be a number, or if defined int earlier, that int definition
[configuration]
INPUT
Requires very little impedence to take an input
OUTPUT
Send 40mA of curent
Note: it is a good idea to connect OUTPUT pins to other devices with 470Ω or 1k resistors, unless maximum current draw from the pins is required for a particular application. “
INPUT_PULLUP
This needs more explanation but basically changes the ohm resistance for better? or Varied? inputs
digitalWrite([pin], [value])
[pin]
number of pin, or constant
[value]
HIGH
sends 5V (3.3V on 3.3V Boards)
Low
sends 0V
digitalRead([pin])
will read whatever value is active on [pin], often set is INPUT
may need to
analogRead([pin])
Will give an analog read between 0-1023 (10bit)
if else
if ([if formula])
{
then do this
* }
* else {
* then do this
}
Do not need else forumla as it will follow after if
can do:
else if ([if then formula)
{
Then do this
* }
* and chain together other paremiters, but be sure to end with basic else
* Do not need else, but watch out
* x == y (x is equal to y) !!! important to use 2 equals
* x != y (x is not equal to y)
* x < y (x is less than y)
* x > y (x is greater than y)
* x ⇐ y (x is less than or equal to y)
* x >= y (x is greater than or equal to y)
* [equation] || [equation] (|| equals OR)
* ! (equals NOT)
* && (equals AND)
* Serial
*
* http://arduino.cc/en/Reference/Serial
* Some pins are auto serial (kinda like the auto 5V or GND)
* But you can define a pin with:
* Serial.[options]([var]);
* [options]
* .begin
* Will beging sending output via the serial port at whatever baud rate. ex:
* Serial.begin(9600)
* Note: This only initializes the serial communication so you most likely want to put it in the setup area.
* .println
* This will send the serial the variablable. Such as:
* Serial.println([varialbe])
* Note: the variable here is not a pin, it needs to be something like an actual number, letter (ASCII) or an int defined somewhere else.
* .print(”[text]“)
* in this option, it will print text within the parenthesis
*
* [baud]
* The baud rate of the signal. Usually 9600
*
*
* Readouts
*
* millis()
* will return the ammount of millisconds since the prgrams has started
* Glossery:
* PWM = Pulse width modulation. Basically an analog modulation variable that sends an analog signal
* It can set the modulation at 8bit or 0-255. ex:
* analogWrite(127) which is about half.
*