Pages: 1 [2] 3   Go Down
Author Topic: Problema led sul Pin 0  (Read 3391 times)
0 Members and 1 Guest are viewing this topic.
Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 120
Posts: 9158
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Io leggo che il led lampeggia tra acceso bene e acceso flebile.

Io leggo che non lampeggia del tutto, ovvero rimane sempre acceso debolmente.
Logged

Offline Offline
Newbie
*
Karma: 1
Posts: 15
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Il led sul pin D0 rimane sempre acceso (molto debole), non si spegne.

Potreste fare questa semplice prova quando avete tempo? Cosi' capisco se e' la mia scheda ad essere danneggiata oppure e' normale che funzioni cosi'... Grazie a tutti!

Ecco lo sketch da caricare (collegando il led e la resistenza appunto al pin D0):

Code:
int led = 0;

void setup() {                
  pinMode(led, OUTPUT);    
}


void loop() {
  digitalWrite(led, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(1000);               // wait for a second
  digitalWrite(led, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);               // wait for a second
}

Per la cronaca: non ho MAI collegato un led senza resistenza a nessun pin...ho messo SEMPRE la resistenza di protezione.
Logged

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 325
Posts: 22498
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Mi togli una curiosità?
Puoi provare con la vecchia IDE 0022?
Logged


Offline Offline
Newbie
*
Karma: 1
Posts: 15
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Mi togli una curiosità?
Puoi provare con la vecchia IDE 0022?

In questo momento sono al lavoro e non posso...comunque, da dove si scarica?

Edit: ho trovato il link, grazie comunque. Pero' una prova potresti farla tu? Insomma, se lanci il mio sketch sul pin 1, il led ti blinka o no?
« Last Edit: October 10, 2012, 04:30:34 am by alfredone78 » Logged

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 325
Posts: 22498
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Mi togli una curiosità?
Puoi provare con la vecchia IDE 0022?

In questo momento sono al lavoro e non posso...comunque, da dove si scarica?

Edit: ho trovato il link, grazie comunque. Pero' una prova potresti farla tu? Insomma, se lanci il mio sketch sul pin 1, il led ti blinka o no?
Sono al lavoro anch'io  smiley-razz
Logged


Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 120
Posts: 9158
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Pero' una prova potresti farla tu? Insomma, se lanci il mio sketch sul pin 1, il led ti blinka o no?

La prova l'ho fatta io, il led sul pin 0 lampeggia, il che vuol dire che la mia ipotesi era completamente campata per aria  smiley-mr-green
Ora accertato che non ci sono "oscuri" misteri software nel'IDE 1.0.1 tocca capire perché a te rimane sempre leggermente acceso, e questo è normale quando D0 è settato come input (condizione normale quando usato come seriale) per via della stato logico 1 proveniente dal 16u2.
Logged

Offline Offline
Newbie
*
Karma: 1
Posts: 15
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Pero' una prova potresti farla tu? Insomma, se lanci il mio sketch sul pin 1, il led ti blinka o no?

La prova l'ho fatta io, il led sul pin 0 lampeggia, il che vuol dire che la mia ipotesi era completamente campata per aria  smiley-mr-green
Ora accertato che non ci sono "oscuri" misteri software nel'IDE 1.0.1 tocca capire perché a te rimane sempre leggermente acceso, e questo è normale quando D0 è settato come input (condizione normale quando usato come seriale) per via della stato logico 1 proveniente dal 16u2.


Scusa la domanda banale (sono un novellino...): come faccio a sapere se lo uso "come seriale"? E, in tal caso, come si disabilita?
Logged

0
Offline Offline
Shannon Member
****
Karma: 129
Posts: 10437
:(){:|:&};:
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

lo abiliti come seriale se fai una Serial.begin(), quindi in teoria non lo stai usando come Serial, salvo che l'IDE arduino in fase di compilazione non aggiunga da solo qualche inizializzazione (ne aggiuge un bel pò smiley)

@astro: su che board hai fatto il test?
@afredone: su che board hai fatto il test?
Logged

sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Offline Offline
Newbie
*
Karma: 1
Posts: 15
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

lo abiliti come seriale se fai una Serial.begin(), quindi in teoria non lo stai usando come Serial, salvo che l'IDE arduino in fase di compilazione non aggiunga da solo qualche inizializzazione (ne aggiuge un bel pò smiley)

@astro: su che board hai fatto il test?
@afredone: su che board hai fatto il test?

Se non lo sto usando come Serial, allora cio' vuol dire che la mia schedina e' danneggiata?  smiley-cry

Come gia' detto, ho fatto il test su un Arduino UNO R3.
Logged

Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 120
Posts: 9158
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

@astro: su che board hai fatto il test?

Non ha importanza la scheda, basta che sopra ci sia un 328, il comportamento del pin D0 non dipende dal modello di Arduino.
L'ipotesi della seriale inizializzata di default dall'IDE l'avevo già fatta io, però al test pratico risulta non essere così.


Logged

0
Offline Offline
Shannon Member
****
Karma: 129
Posts: 10437
:(){:|:&};:
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

non so, esistono varie versioni di chip UBB/Seriale utilizzate e anche varie versioni di firmware per gli XXXU2...
il che è una causa molto probabile del comportamento

@alfredone: la scheda è un tank, dubito fortemente che tu l'abbia danneggita. prova veloce: togli il led e prova a caricare del codice, se funziona allora tuto a posto smiley-wink
Logged

sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Offline Offline
Newbie
*
Karma: 1
Posts: 15
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ragazzi, scusate se sono insistente ma la domanda e' unica:

"Che prove posso fare per capire se la porta D0 della mia scheda Arduino Uno R3 sia danneggiata o meno?" Prove pratiche...?
Logged

0
Offline Offline
Shannon Member
****
Karma: 129
Posts: 10437
:(){:|:&};:
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

leggi il mio messaggio precedente...

Quote
@alfredone: la scheda è un tank, dubito fortemente che tu l'abbia danneggita. prova veloce: togli il led e prova a caricare del codice, se funziona allora tuto a posto smiley-wink
Logged

sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Offline Offline
Newbie
*
Karma: 1
Posts: 15
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

leggi il mio messaggio precedente...

Quote
@alfredone: la scheda è un tank, dubito fortemente che tu l'abbia danneggita. prova veloce: togli il led e prova a caricare del codice, se funziona allora tuto a posto smiley-wink

Prova gia' effettuata ieri sera. Tolgo il led, carico il codice, ricollego il Led e non funziona... smiley-sad
Logged

Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 120
Posts: 9158
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

"Che prove posso fare per capire se la porta D0 della mia scheda Arduino Uno R3 sia danneggiata o meno?" Prove pratiche...?

La prova è proprio quella di far cambiare stato al pin, se non lo fa vuol dire che c'è un problema, a questo punto è possibile che il mos high side del totem pole che comanda il GPIO in out sia interrotto.
Detto in modo più semplice il transistor che commuta a Vdd il pin D0 è andato, prova a fare la prova inversa ovvero collega il led al contrario, al +5V invece di GND, quando commuti il pin a 0 logico il led si deve accendere a piena luminosità, quando torni a 1 logico rimarrà acceso debolmente come fa adesso, se così funziona vuol dire che il guasto è quello che ho appena ipotizzato.
Se effettivamente il mos high side del totem pole su D0 è andato questo non vuol dire che devi buttare il processore, Arduino funziona lo stesso, basta che non usi D0 come GPIO, cosa normalmente sconsigliata visto che D0 e D1 sono utilizzati dalla seriale sia per programmare Arduino sia per dialogare con altre schede/device.
Logged

Pages: 1 [2] 3   Go Up
Jump to: