Wpis z mikrobloga

Mam od dzisiaj arduino i mam jedno pytanie. Jeśli dopiszę coś takiego to, diody świecą mocno, a jeśli nie to słabo.
const int buttonPin = 2;
const int ledPin = 13;
const int ledPin2 = 8;

void setup() {
pinMode(ledPin, OUTPUT);
pinMode(ledPin2, OUTPUT);
pinMode(buttonPin, INPUT);

Dlaczego?
#arduino
  • 34
@matiwoj11: Nie jestem pewien, ale jeśli nie zdefiniujesz ze piny mają być wyjściowe to wtedy przyjmują jedną z losowych wartości i często ją zmieniają, dlatego nie ma pełnego wypełnienia i dioda nie świeci pełną mocą.
@matiwoj11: widzę że zaczynasz dopiero przygodę z arduino
Sam kiedyś zaczynałem od tego i mogę ci dać dobrą radę.
Arduino jest oparte na mikrokontrolerze Atmega328p, weź poszukaj w internecie dokumentacji tego mikrokontrolera (Atmega8 to prawie to samo).
Nie mówie że masz ją całą wkuć na pamięć bo ma ~600 stron ale są krótsze wersje a nawet przetłumaczone na polski.
Możesz również poczytać jakiś kurs AVR w necie jest tego pełno.
Pewnie
@matiwoj11: a co do tego dlaczego konkretnie to w mikrokontrolerze w środku masz przy każdym pinie rezystor podciągający czyli taki który łączy go z napięciem zasilania (+5V dla Arduino) i diodę która łączy go z masą (0V). W momencie kiedy nie zainacjalizujesz pina (brak komendy pinMode) mikrokontroler będzie starał się oszczędzać prąd czyli ma wszystkie piny ustawione jako wejściowe z podłączonymi rezystorami podciągającymi. To nie daje dokładnie 5V jeżeli z tego
@matiwoj11: A ja Ci polecam kurs Arduino dostępny na Forbocie, tu linkuje Ci dział który mówi o sterowaniu diodami Kurs Arduino - Forobt. Ale radze Ci przeczytanie go od początku. Na pewno dużo Ci się rozjaśni :)

W skrócie ten kod (pinMode) który przedstawiłeś ustala które porty mają być wyjściowe( OUTPUT) a który wejściowy (INPUT). Musisz jeszcze ustawić stan jaki chcesz realizować na wyjściu. I tak aby zapalić diodę podłączoną
@Paatryk93: wiem o digitalwrite(ledpin, high), chodziło mi dokładnie o to o czym pisałem ;)
Czytałem Forbota, jak jeszcze nie miałem płytki. Oglądałem jeszcze elektroprzewodnik i elektromaras (chyba się tak nazywa)
@stassma: kod "testowy"

//
// FILE: dht11test.ino
// AUTHOR: Rob Tillaart
// VERSION: 0.1.00
// PURPOSE: DHT library test sketch for DHT11 && Arduino
// URL:
//
// Released to the public domain
//

#include

dht DHT;

#define DHT11
PIN 2

void setup()
{
Serial.begin(115200);
Serial.println("DHT TEST PROGRAM ");
Serial.print("LIBRARY VERSION: ");
Serial.println(DHTLIBVERSION);
Serial.println();
Serial.println("Type,\tstatus,\tHumidity (%),\tTemperature (C)");
}

void loop()
{
// READ DATA
Serial.print("DHT11, \t");
int chk