Problème avec mes sorties PWM

Bonjour à tous,

je suis sur un projet qui vise à me servir des sorties PWM et de les commander sur différent contrôleur.
Le souci c'est que lors d'un test simple ,ça ne fonctionne pas.
Les sorties PWM de mes récentes cartes arduino nano ne réagisse pas.
Alors que sur ma carte arduino UNO ça fonctionne très bien ,ma led est bien reliée entre le GND et la sortie qui lui est dédié et l'alimentation ,que se soit en usb ou en externe, ne fonctionne pas.
et le même montage fonctionne bien sur la UNO.
Voici le code:

int ledPin = 6;    // LED connected to digital pin 3

void setup() {
  pinMode(ledPin,OUTPUT); // la sortie de la led est bien en sortie
}

void loop() {
 analogWrite(ledPin,250); // je programme un cycle sur la sortie que j'ai initialisé.
}

PS: j'ai bien testé aussi sur d'autre sortie et sur d'autre carte nano, j'en ai trois.

Il n'y aucune raison, sauf panne, que cela ne fonctionne pas.
Les sorties PWM UNO, NANO, MINI sont les mêmes : 3, 5, 6, 9, 10, 11

Remarque : analogWrite pourrait être placé dans la fonction setup(). Il n'y a aucune utilité à répéter en boucle dans loop(). C'est peut-être même néfaste.

d'accord,

J'ai la correction pour vérifier mais rien n'y change ,j'ai mise à jours le logiciel aussi mais rien,
une autre personne avait rencontré le souci:

les cartes ne se mettent pas à jours quelque fois ?

Non, pas de mises à jour spontanées.
Chez moi en V1.8.11 avec une NANO ceci fonctionne :

int ledPin = 6;

void setup() {
}

void loop() {
  analogWrite(ledPin, 10);
  delay(1000);
  analogWrite(ledPin, 100);
  delay(1000);
  analogWrite(ledPin, 255);
  delay(1000);
}

Autre remarque : setMode() est inutile.

Bon, j'ai peu être une réponse ,
je n'arrive pas à charger le programme ni dans une carte ni dans l'autre ,dans la UNO c'est l'ancien programme qui reste ,je le sais car j'ai changé de pin pour essayer d'autre sortie et ma led s'est allumée.

As-tu essayé :

  • Outils / Processeur / ATmega328P
  • Outils / Processeur / ATmega328P (Old Bootloader)

?

:warning: post déplacé hors du bar :wink:.

j'ai aussi rajouté les balises de code dans le premier post, Merci de lire et appliquer "Les bonnes pratiques du Forum Francophone” pour la prochaine fois.

Je n'avais pas vu que la demande était dans le bar. Désolé.

La série 1.6.x a été très chaotique pour rester gentil.

La série 1.6.x est très vieille ce n'est plus sérieux de l'utiliser.

Quant à la 2:1.05 +dfsg2-4, (en fait la 1.0.5) c'est la dernière version pakagé par Debian (donc Ubuntu) elle est carrément antédiluvienne.
Avec la fin définitive de la guérilla chez Arduino et le retour à plus de sérénité, Debian reprend l'IDE Arduino dans ses paquets, la 1.8.13 est en testing (Bullseye). La distri Bullseye devrait être dispo en "stable" au 4ᵉ trimestre.
Si c'est dispo pour debian cela le sera pour Ubuntu, cela l'est peut-être même déjà Ubuntu se limitant aux architectures Intel et peut être une ou deux de plus.

La 1.8.15 est en Sid et devrait être rapidement dispo dans Bullseye.

Pour installer une version de l'IDE hors gestionnaire de paquet, il suffit de télécharger une archive pour Linux et de tout simplement de la décompacter dans un répertoire.
Il est possible d'installer autant de versions que l'on veut du moment que chaque version est dans un répertoire distinct.
Il y a un script originalement appelé "arduino" pour lancer l'IDE.
Attention : il faut parfois changer ses propriétés pour le rendre exécutable.

Bien sûr, chaque version est accompagnée de tous les logiciels nécessaires ce qui n'optimise pas la place sur le disque dur et ne garanti pas l'utilisation des dernières versions.
Le paquet Debian ou Fedora est préférable, mais encore faut-il qu'il soit disponible.

Re-Bonjour à tous,

@J-M-L désolé ,je suis encore tous neuf sur le matériel et le forum et je n'ai pas encore pris les bonnes habitudes, je vais lire ton lien.

@hbachetti alors j'ai fouillé dans ses paramètres et ça à fonctionné.
Je trouvais que les ports PWM soit HS sur les cartes que j'ai depuis hier ^^.
de ce fait j'ai fais ceci: pour la carte UNO -> bien sélectionner la UNO ET le port COM et dans OUTILS j'avais pas d'onglet proco ,ou alors j'ai mal vu par contre dans PROGRAMMEUR j'ai sélectionné Arduino as ISP (ATMEGA32U4) et ça fonctionne.
Pour la NANO, bien sélectionner la NANO et le port COM et par contre dans proco j'avais l'onglet, j'ai alors sélectionné ATMEGA328P et dans programmeur j'ai pas touché je suis en AVRISP mkII.

je pense que le hardware dois précisément y être pour quelque chose ? y-a t'il un tuto sur le sujet ?

@68tjs, bon ducoup vu que ça fonctionne je vais pas retoucher. Cependant je vais enregistrer ta réponse bien détaillé.
La ça, ne me parle absolument pas ,je ne savais pas qu'il y avait plusieurs distribution et si je suis encore embêté je plancherai sur le sujet, merci.

Aucun programmateur n'est nécessaire si l'on passe par l'USB.
Quand on passe par un programmateur, c'est soit pour graver un bootloader, ou un sketch mais en utilisant "Croquis/Téléverser avec un programmateur.

As-tu essayé ATmega328P (Old Bootloader) pour la NANO ?

@hbachetti

J'ai essayé comme tu m'as demandé et j'ai le message suivant:

avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x7d

j'ai pas attendu que ça charge à fond ,j'ai bien vu que ça pédalait dans la semoule.

Et avec ATmega328P ?

@hbachetti bah oui ça fonctionne ,j'ai écris en détail sur la solution.

Donc, le téléversement fonctionne.

Tu veux dire que le PWM ne fonctionne toujours pas ?