Arduino IDE Programmering
Her vises en række eksempler på forskællige tips til arduino’s IDE software.
Arduino:
LED_BUILTIN eller Pin 13
void setup() {
// initialize digital pin LED_BUILTIN as an output.
pinMode(LED_BUILTIN, OUTPUT);
}
// the loop function runs over and over again forever
void loop() {
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW
delay(1000); // wait for a second
}
Når man bruger en “Knap” i sit projekt skal man ofte tilføje en “PullUp” modstand. Men med denne kode kan det undgåes.
//Info: Når PullUp funktionen aktiveres bliver indagen “GND” styret. DVS at “GND” skal tilsluttet en indgang for at aktiveres. Den indgang som har PullUp funktionen aktiveret er ALTID “HIGH“.
Kode:
int ButtonPin = 2;
void setup() {
pinMode(ButtonPin, INPUT_PULLUP);
}
void loop(){
}
int LedPin = 13; // choose the pin for the LED
int ButtonPin = 2; // choose the input pin (for a pushbutton)
int val = 0; // variable for reading the pin status
void setup() {
pinMode(LedPin, OUTPUT); // declare LED as output
pinMode(ButtonPin, INPUT); // declare pushbutton as input
}
void loop(){
val = digitalRead(ButtonPin); // read input value
if (val == HIGH) { // check if the input is HIGH (button released)
digitalWrite(LedPin, LOW); // turn LED OFF
} else {
digitalWrite(LedPin, HIGH); // turn LED ON
}
}
Tænd/Sluk en LED via serial forbindelse 1=ON 0=OFF.
Kode:
int led = 9;
void setup() {
pinMode(led, OUTPUT);
Serial.begin(9600);
}
void loop(){
if(Serial.available() > 0) {
char ledState = Serial.read();
if(ledState == ‘1’){
digitalWrite(led, HIGH);
}
if(ledState == ‘0’){
digitalWrite(led, LOW);
}
}
}
#include <SoftwareSerial.h>
SoftwareSerial mySerial(10, 11);
void setup()
{
Serial.begin(9600);
mySerial.begin(9600);
}
void loop()
{
if (mySerial.available())
Serial.write(mySerial.read());
if (Serial.available())
{
while(Serial.available())
{
mySerial.write(Serial.read());
}
mySerial.println();
}
}
Dæmp LED via serial.
Kode:
int led = 9;
void setup() {
pinMode(led, OUTPUT);
Serial.begin(9600);
}
void loop(){
if(Serial.available() > 0) {
char Funktion = Serial.read();
if(Funktion == ‘1’){ //Dæmp fra 0% – 100%
// fade in from min to max
for (int fadeValue = 0 ; fadeValue <= 255; fadeValue += 3) {
// sets the value (range from 0 to 255):
analogWrite(led, fadeValue);
// wait for 30 milliseconds to see the dimming effect
delay(60);
}
}
if(Funktion == ‘2’){ //Dæmp fra 100% – 0%
// fade out from max to min
for (int fadeValue = 255 ; fadeValue >= 0; fadeValue -= 3) {
// sets the value (range from 0 to 255):
analogWrite(led, fadeValue);
// wait for 30 milliseconds to see the dimming effect
delay(60);
}
}
if(Funktion == ‘3’){ //Dæmp fra 100% – 50%
// fade out from max to min
for (int fadeValue = 255 ; fadeValue >= 7; fadeValue -= 3) {
// sets the value (range from 0 to 255):
analogWrite(led, fadeValue);
// wait for 30 milliseconds to see the dimming effect
delay(60);
}
}
if(Funktion == ‘4’){ //Dæmp fra 50% – 100%
// fade in from min to max
for (int fadeValue = 7 ; fadeValue <= 255; fadeValue += 3) {
// sets the value (range from 0 to 255):
analogWrite(led, fadeValue);
// wait for 30 milliseconds to see the dimming effect
delay(60);
}
}
}
}
Microcontroller Programmering
Her vises 3 eksempler på hvordan du kan programmere din microcontroller på. I ditte eksempler er der brugt en “Atmega328p-pu”.
Microcontroller:
ATmega328P-PU
Development Board:
Arduino Nano
Microcontroller:
ATmega328P-PU
Microcontroller:
ATmega328P-PU
ATTINY13A-PU
Development Board
Her vises hvordan du kan tilføje funktioner til dit Development Board.
Få flere PWM udgang til dit board.
- TLC5940 (16 udgange)
Max. limit: Ubegrænset
Data: Digital PWM
Forbindelse: SPI
Få flere ind/udgang til dit board.
- MCP23017 (16 ind/udgange )
Max. limit: 8 IC’er – 128 ind/udgange
Data: Digital
Forbindelse: I2C - TLC5940 (16 udgange)
Max. limit: Ubegrænset
Data: Digital PWM
Forbindelse: SPI
Info:
Ingen side er fundet (Er under opbygning)
Kommunikation
Her vises forskellige måde at kommunikere mellem boards.
Info:
Ingen side er fundet (Er under opbygning)
Info:
Ingen side er fundet (Er under opbygning)
Info:
Ingen side er fundet (Er under opbygning)
Info:
Ingen side er fundet (Er under opbygning)
Info:
Ingen side er fundet (Er under opbygning)
Info:
Ingen side er fundet (Er under opbygning)
Uploading af sketch
Her vises forskellige måde at uploade sketch til dit board..
Info:
Ingen side er fundet (Er under opbygning)
Info:
Ingen side er fundet (Er under opbygning)
Info:
Ingen side er fundet (Er under opbygning)
Info:
Ingen side er fundet (Er under opbygning)
Smart-Home Systemer
Her vises forskellige måde at komuniokerer med andre systemer.
Info:
Ingen side er fundet (Er under opbygning)
Info:
Ingen side er fundet (Er under opbygning)
API Funktioner
Brug API til at få informationer ud af fx en hjemmeside.
Info:
Ingen side er fundet (Er under opbygning)
Info:
Ingen side er fundet (Er under opbygning)
Controle Device
Her vises nogle eskempler på hvordan du kan styre dit board.
Få hjælp til at komme igem Blynk. Med denne guide kan du bliver klogere på hvordan blynk fungere og hvordan du med appen kan tænde/slukke en LED.
Firmware
Upload forskellige firmware til devices.
Sonoff Tasmota, er et firmware til ESP8266-baserede enheder der giver mulighed for kontrollering over Serial, HTTP, MQTT og KNX, så de kan bruges på Smart Home Systems. Skreves i Arduino IDE.
Boards:
NodeMcu Wemos Lua
Server/Clients
Oversigt over muligher inde for server, og clients.
Er ved at blive oprettet.