Stap 13: Uploaden van de schets
Nu het moeilijke gedeelte...
We hebben de code uploaden (download de bestanden hieronder) naar de Arduino pro mini.
Er zijn twee opties: 1) kopen van een pro mini programmeur
2) het gebruik van een Arduino Uno voor het programmeren van de Pro Mini
Ik heb niet een Pro mini programmeur, dus ik ging met de tweede optie. Gebruik een Arduino Uno voor het programmeren van de Pro Mini. Volg de stappen...
1) nemen de Uno en zachtjes de Atmel IC chip (Atmel 328 P) te verwijderen uit de IC-base.
2) draad de Uno en Promini zoals blijkt uit het schematische
Arduino Uno naar Pro Mini
VCC == > Vcc
GND == > Gnd
RX == > Rx
TX == > Tx
Reset == > Reset
3) open de schets in de Arduino IDE
4) Ga naar hulpmiddelen >> bestuur >> Arduino Pro of Pro Mini
5) Klik op Arduino Pro of Pro Mini
6) Selecteer de juiste poort
7) het uploaden van de schets aan de Raad
8) je bent klaar!
## Belangrijk: Check de baud-rate van uw bluetooth-module. Standaard moet het 9600 maar ik weet niet waarom ik moest maken het 19200. Dus als de 9600 niet ook voor u werkt, probeer 19200
simpelweg vervangen
Serial.begin(9600) to Serial.begin(19200)
Hier is de Code:
#include <LiquidCrystal.h> LiquidCrystal lcd(12, 11, 5, 4, 3, 2); int FAN = 13; int SWITCH = 6; // Switch on 6 int LIGHT = 7; // Light on 7 int State = 10; // State pin for bluetooth at D10 int BluetoothInput; int BluetoothStatus; float tempC; int reading; int tempPin = 0; void setup(){ Serial.begin(9600); lcd.begin(16, 2); // Begin the 16 x 2 LCD pinMode(FAN, OUTPUT); pinMode(LIGHT, OUTPUT); pinMode(SWITCH, OUTPUT); pinMode(State, INPUT); analogReference(INTERNAL); }
void loop(){
{ BluetoothStatus = digitalRead(State); if (BluetoothStatus == HIGH ){ lcd.setCursor(0,0); lcd.write(" Connected"); reading = analogRead(tempPin); tempC = reading / 9.31; Serial.println(tempC); lcd.setCursor (4,1); lcd.print( tempC); lcd.setCursor(10,1); lcd.print("*C"); delay(1000); delay(10); lcd.clear(); } else { lcd.setCursor(0,0); lcd.write(" Disconnected"); reading = analogRead(tempPin); tempC = reading / 9.31; Serial.println(tempC); lcd.setCursor (4,1); lcd.print( tempC); lcd.setCursor(10,1); lcd.print("*C"); delay(1000); delay(10); lcd.clear(); }} { while ( Serial.available()>0){ BluetoothInput = Serial.read(); lcd.clear(); if ( BluetoothInput == 'A'){ //// The FAN controll Serial.println("The FAN is ON"); lcd.setCursor(0 , 1); lcd.write(" The FAN is ON"); delay(1000); lcd.clear(); digitalWrite(FAN, 1); } if ( BluetoothInput == 'a'){ Serial.println("The FAN is off"); lcd.setCursor(0, 1); lcd.write(" The FAN is OFF"); delay(1000); lcd.clear(); digitalWrite(FAN, 0); } if (BluetoothInput == 'B'){ // Tubelight Controll Serial.println("Light ON"); lcd.setCursor(0,1); lcd.write(" Light ON"); digitalWrite(LIGHT, 1); // turn on light. delay(1000); lcd.clear(); } if (BluetoothInput == 'b'){ Serial.println(" Light is OFF"); lcd.setCursor(0,1); lcd.write(" Light is OFF"); digitalWrite( LIGHT, 0); // turn off Light delay(1000); lcd.clear(); } if (BluetoothInput == 'C'){ lcd.setCursor(0,1); lcd.write(" Switch is ON "); digitalWrite(SWITCH, 1); delay (1000); lcd.clear(); } if (BluetoothInput == 'c'){ lcd.setCursor(0,1); lcd.write(" Switch is OFF"); digitalWrite(SWITCH, 0); delay(1000); lcd.clear(); } } } }