Errore: avrdude: ser_open(): can't open device "\\.\COM3": Accesso negato

Buonasera,
ho un problema con il caricamento di uno sketch su un arduino uno (clone).
Il codice che vorrei caricare è il seguente:


// C++ code
/* metro ad ultrasuoni
By Andrea */
const int trigPin = 9;
const int echoPin = 10;

float duration; // tempo tra invio e ritorno del segnale
float distance; // distanza dell'oggetto

void setup()
{
  Serial.begin(9600);
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
}

void loop()
{
    digitalWrite(trigPin, LOW); // stringa di inizializzazione
    delayMicroseconds(2);
    digitalWrite(trigPin, HIGH);	// impulso
    delayMicroseconds(10);
    digitalWrite(trigPin, LOW); // fine impulso
    duration = pulseIn(echoPin, HIGH); // Misura per quanto tempo echoPin rimane HIGH
    distance = (duration * 0.034) / 2;
    Serial.print("Distanza: ");
    Serial.print(distance);
    Serial.println(" cm");
    delay(100);
}

che fa funzionare un sensore a ultrasuoni per misurare la distanza di un oggetto.
Il problema è che quando clicco su "Upload", mi appare questo errore (ho la modalità verbose attiva):

avrdude: Version 6.3-20190619
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2014 Joerg Wunsch

         System wide configuration file is "C:\Users\aless\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf"

         Using Port                    : COM3
         Using Programmer              : arduino
         Overriding Baud Rate          : 115200
avrdude: ser_open(): can't open device "\\.\COM3": Accesso negato.



avrdude done.  Thank you.

Caricamento non riuscito: errore durante il caricamento: exit status 1

Ho già provato a:

  • riavviare il pc
  • staccare e riattaccare arduino
  • caricare con la scheda scollegata e poi riprovare
  • caricare un programma "più semplice"
  • cambiare cavo

C'è qualcuno che mi saprebbe aiutare? Grazie mille! :smiley:

PS: E' il mio primo argomento sul forum, ditemi pure se ho sbagliato qualcosa nel formato :blush:

Buongiorno e benvenuto nella sezione Italiana del forum,

cortesemente, come prima cosa, leggi attentamente il REGOLAMENTO di detta sezione, (... e, per evitare future possibili discussioni/incomprensioni, prestando molta attenzione al punto 15), dopo di che, come da suddetto regolamento (punto 16.7), fai la tua presentazione NELL'APPOSITA DISCUSSIONE spiegando bene quali esperienze hai in elettronica e programmazione, affinché noi possiamo conoscere la tua esperienza ed esprimerci con termini adeguati.

Grazie,

Guglielmo

P.S.: Ti ricordo che, purtroppo, fino a quando non sarà fatta la presentazione nell’apposita discussione, nel rispetto del succitato regolamento nessuno ti risponderà (eventuali risposte o tuoi ulteriori post, verrebbero temporaneamente nascosti), quindi ti consiglio di farla al più presto.

Penso hai windows 10 o 11, prova ad eseguire IDE con la voce "esegui come amministratore"
Dove hai icona ide sul desktop, mouse tasto destro, dovrebbe esserci una voce simile.

Ciao, ho provato ma non cambia nulla...

Sicuro sia giusta la com3?
Con arduino collegato vai in pannello controllo, sistema, gestione dispositivi e vedi in elenco hardware sotto ramo porte com cosa vedi

Qualcosa del genere

Quando lo collego mi dà "dispositivo seriale USB (COM3)"...

modifica: vedo ora che due righe sopra dà "collegamento standard seriale su bluetooth" sempre sulla COM3, non è che devo cambiare uno dei due?

Visto che è un clone, per sicurezza, posta il link al prodotto che hai comprato.
Vediamo se il chip di comunicazione usb è lo stesso di Arduino Uno R3 originale (atmega16u2) oppure usa un chip diverso, di solito nei cloni tipo CH340 o CP21xx
Per questi è meglio usare/installare il loro driver.

P.S. il pc è un portatile o comunque ha anche il BlueTooth ? Puoi spegnerlo e vedere se così va.

Il kit che ho preso è il seguente. Ora provo con la questione bluetooth, ma la cosa strana è che prima di ieri funzionava, è solo da ieri che non va

MODIFICA: non funziona neanche senza bluetooth...

Ho guardato la scritta sul microcontroller, e dovrebbe essere un ATMEGA328P

Il chip è quello ma la comunicazione USB avviene con altro chip, in quel post vedi quel chip quadrato piccolo che ti cerchio in giallo. Sembra un atmega16u. I ch340 e CP21xx di solito sono rettangolari

Puoi provare a cambiare la porta COM3, se clicchi sulla voce "Dispositivo seriale USB (COM3)"
ti dovrebbe dare:


Premi avanzate, nel combo COM3 dovrebbe fartelo cambiare (ma io uso win10 con un utente administrator) eprova a metterlo come COM4 ad esempio

Ho provato a farlo andare sulla COM1, ma nulla...

Sì è un atmega16u

L'unica idea che mi rimane è di installare Zadig
https://zadig.akeo.ie/
Con Arduino collegato e questo programmino, lui verifica se il driver è corretto. Se no ti dovrebbe permettere di installare quello corretto.

Dopo l'istallazione con Zadig il mio sistema non vedeva più le porte COM/LPT, e ho ripristinato il driver precedente. Questa "reinstallazione" ha fatto funzionare tutto e ha eliminato il problema di upload! Grazie @nid69ita !!!