- Configuration de l'IDE Arduino
- Configuration de la carte STM8S103F3 pour la programmation Arduino IDE
- LED clignotante sur STM8S103F3 en utilisant Arduino
- Mappage des broches Arduino pour STM8S103F3
- Compilation de bibliothèques SPL sur l'IDE Arduino
Arduino est sans aucun doute devenu un outil de prototypage convivial et rapide, grâce à sa communauté d'utilisateurs de soutien. Aujourd'hui, en raison de sa nature open-source, la plate-forme n'est pas seulement limitée aux cartes Arduino mais aussi à d'autres cartes de développement comme la NodeMCU, ESP8266, STM32, MSP430, etc. peuvent également être programmées à partir de l'IDE Arduino. Si vous souhaitez savoir comment faire, vous pouvez suivre les liens ci-dessous.
- Programmation NodeMCU avec Arduino IDE
- Programmation ESP8266 avec Arduino IDE
- Programmation de STM32 avec Arduino IDE
- Programmation du MSP430 avec Energeia (similaire à Arduino)
Sans aucun doute, l'IDE Arduino est idéal pour les débutants, mais quand même, pour le développement professionnel, il est bon de travailler avec des environnements de développement et des compilateurs natifs. Comme le MPLABX pour les microcontrôleurs PIC et le studio Code Composer pour les microcontrôleurs TI. L'utilisation de la plate-forme native nous permet de travailler au niveau du registre (même au niveau de l'assemblage si nécessaire), ce qui permet au programme d'être plus efficace en mémoire. C'est pourquoi lorsque nous avons commencé le tutoriel sur le microcontrôleur STM8Ssérie, le choix de la plate-forme a été le compilateur STVD et Cosmic C, tous deux gratuits à télécharger et à utiliser. Malheureusement, le STVD est un très vieil IDE et il ressemble à 90 en travaillant avec. En plus de cela, l'outil de programmation STVP n'est pas non plus bien intégré à l'IDE et vous devez l'utiliser séparément. Cela augmente le temps de compilation et de téléchargement et rend le développement et le débogage difficiles.
Je suis allé à la recherche d'alternatives et c'est à ce moment que l'IDE Arduino est venu pour le sauvetage. Un outil appelé Sduino par Michael Mayor nous permet de programmer facilement les microcontrôleurs STM8 (la plupart des plus populaires) à partir de l'IDE Arduino directement et cela ne prend que quelques minutes pour le configurer et commencer. Ce qui est plus intéressant, c'est qu'en plus de prendre en charge la programmation de style Arduino, Sduino nous permet également d'utiliser la bibliothèque périphérique standard (SPL), en d'autres termes, nous pouvons presque compiler le même programme sur STVD dans l'IDE Arduino. Bien que le Sduino soit un outil sympa, il est toujours en développement et ne prend pas encore en charge de nombreuses bibliothèques et fonctions Arduino. Cela étant dit, apprenons à utiliser Arduino IDE avec la carte de développement STM8S103F.Si vous êtes complètement nouveau sur cette carte, vérifiez la mise en route avec le didacticiel STM8S103F. Outre le STM8S103F, Sduino prend également en charge d'autres microcontrôleurs STM8S comme les STM8S003, STM8S105C, STM8S105K, STM8S, STM8S208MB, ESP14, etc. La procédure expliquée dans ce tutoriel est la même pour tous.
Configuration de l'IDE Arduino
Étape 1: Si vous êtes complètement nouveau dans l'environnement Arduino, téléchargez Arduino en fonction de votre système d'exploitation et installez-le.
Étape 2: Suivez Fichier -> Préférences pour ouvrir la fenêtre des préférences et collez le lien ci-dessous dans la zone de texte de gestion des tableaux supplémentaires et cliquez sur OK.
github.com/tenbaht/sduino/raw/master/package_sduino_stm8_index.json
Étape 3: Suivez Outils -> Carte -> Gestionnaire de carte pour ouvrir la boîte de dialogue du gestionnaire de carte et recherchez «sduino». Cliquez sur installer et fermez la boîte de dialogue une fois l'installation terminée.
Étape 4: Redémarrez l'EDI, puis suivez Outils -> Carte -> STM8S103F3 . Vous pouvez sélectionner d'autres cartes si vous avez une carte de développement différente.
Maintenant, l'IDE Arduino est prêt pour la programmation de la carte de développement STM8S103F3. Laissez-nous installer la carte, la connecter à l'ordinateur et programmer pour un simple clignotement de LED.
Configuration de la carte STM8S103F3 pour la programmation Arduino IDE
Connectez le ST-Link V2 à la carte de développement comme indiqué ci-dessous.
Les connexions sont assez simples et la meilleure partie est que vous n'avez pas besoin de composants externes. Ma configuration matérielle pour la programmation est indiquée ci-dessous, je viens d'utiliser les fils d'en-tête femelles pour établir ma connexion. Cependant, notez que le brochage de votre ST-Link peut différer du mien, assurez-vous de suivre le brochage de l'appareil avant d'effectuer les connexions.
Établissez la connexion et connectez l'appareil à votre ordinateur, l'installation du pilote devrait commencer automatiquement. Vous pouvez utiliser le gestionnaire de périphériques pour vous assurer que votre ordinateur a détecté correctement ST-LINK V2. Vous remarquerez également que le voyant de test sur la carte clignote si c'est la première fois que vous mettez la carte sous tension.
LED clignotante sur STM8S103F3 en utilisant Arduino
Maintenant, pour un simple clignotement de LED, nous pouvons utiliser le programme de clignotement de la section exemple. Suivez File -> Example -> Generic_Example -> Basics -> Blink .
Le programme complet de clignotement de la LED embarquée est illustré ci-dessous:
void setup () {// initialise la broche numérique LED_BUILTIN comme sortie. pinMode (LED_BUILTIN, OUTPUT); } // la fonction de boucle s'exécute encore et encore pour toujours void loop () {digitalWrite (LED_BUILTIN, HIGH); // allume la LED (HIGH est le niveau de tension) delay (1000); // attend une seconde digitalWrite (LED_BUILTIN, LOW); // éteint la LED en faisant le retard de tension LOW (1000); // attendez une seconde}
Comme vous pouvez le voir, c'est très similaire au programme de clignotement Arduino. Pour télécharger le programme, assurez-vous que votre carte est connectée via st-link v2 comme indiqué ci-dessus et sélectionnez le programmateur comme «ST-Link / V2» comme indiqué ci-dessous.
Remarque: contrairement aux cartes Arduino, il n'est pas nécessaire de sélectionner le bon port COM pour programmer la carte. Vous utiliserez le port COM uniquement pour la communication série.
Une fois le port COM sélectionné, le téléchargement du code est également très simple. Appuyez simplement sur le bouton de téléchargement (entouré en rouge ci-dessous) et le code sera compilé et téléchargé automatiquement sur notre tableau.
Voilà, le programme est téléchargé directement sur la carte et vous devriez voir la LED intégrée clignoter. Aucun logiciel de téléchargement externe, rien du tout. Aussi simple que ça. Vous pouvez consulter la vidéo au bas de cette page pour le travail.
Mappage des broches Arduino pour STM8S103F3
Si vous souhaitez procéder à partir d'ici, vous devez savoir comment adresser chaque broche de la carte de développement STM8S103F3. Le mappage des broches peut être compris à partir de cette image ci-dessous-
Par exemple, à partir du schéma de circuit de la carte STM8S103F3, nous savons que la LED intégrée est connectée au PB5. Pour adresser cette broche sur Arduino, nous devons utiliser 3, donc le programme peut être écrit comme-
void setup () {// initialise la broche numérique LED_BUILTIN comme sortie. pinMode (3, SORTIE); } // la fonction de boucle s'exécute encore et encore pour toujours void loop () {digitalWrite (3, LOW); // allume la LED (HIGH est le niveau de tension) delay (1000); // attend une seconde digitalWrite (3, HIGH); // éteint la LED en faisant le retard de tension LOW (1000); // attendez une seconde}
Compilation de bibliothèques SPL sur l'IDE Arduino
Comme mentionné précédemment, nous pouvons également utiliser la bibliothèque SPL sur Arduino IDE. Si vous vous souvenez, dans notre précédent tutoriel GPIO STM8S, nous avons écrit un code pour faire clignoter la LED embarquée ainsi qu'une LED externe à l'aide du bouton poussoir. Le même code avec très peu de modifications peut également être compilé sur Arduino. Le code modifié est illustré ci-dessous.
#define Green_LED GPIOA, GPIO_PIN_3 void setup () {GPIO_DeInit (GPIOA); // prépare le port A pour le travail GPIO_DeInit (GPIOB); // prépare le port B pour fonctionner // déclare PA2 comme broche de tirage d'entrée GPIO_Init (GPIOA, GPIO_PIN_2, GPIO_MODE_IN_PU_IT); // Déclarer PA3 comme broche de sortie Push Pull GPIO_Init (Green_LED, GPIO_MODE_OUT_PP_LOW_SLOW); // Déclarer PB5 comme push pull Broche de sortie GPIO_Init (GPIOB, GPIO_PIN_5, GPIO_MODE_OUT_PP_LOW_SLOW); } void loop () {if (GPIO_ReadInputPin (GPIOA, GPIO_PIN_2)) // si le bouton est enfoncé GPIO_WriteLow (Green_LED); // LED allumée sinon GPIO_WriteHigh (Green_LED); // LED OFF GPIO_WriteReverse (GPIOB, GPIO_PIN_5); retard (100); }
Pour conclure, l'IDE Arduino avec le Sduino est une très bonne option si vous voulez démarrer votre développement avec STM8S. Cependant, la plate-forme est toujours en cours de développement et de nombreuses bibliothèques Arduino ne sont pas encore prises en charge. Pourtant, si vous souhaitez approfondir et contribuer au développement, ce serait formidable. Mais, dans un souci d'apprentissage, je vais continuer la série de tutoriels avec STVD et le compilateur cosmique C.