En temps réel OS / LCD à bord de Discovery 12 $


Un jour j’ai eu un professeur de collège s’apprête à nous élèves apprendre un truc mathématique puissant en EE101 - analyse de circuit je pense que de la maille.  Avant il a commencé, a-t-il dit, « Aujourd'hui, mes élèves, je vous donne un gros canon. »  Il a obtenu notre attention et je me souviens de la citation, mais malheureusement, je serais mal à mailler analyse aujourd'hui.

Aujourd'hui, mes lecteurs Instructible, je vous donne gros canons !

Pour tout ce que vous les programmeurs de logiciels embarqués de hardcore hot-shot, le temps de l’étape jusqu’au prochain niveau en apprenant à utiliser un temps réel embarqué OS sur votre prochain projet.  Non seulement vous obtenez une priorité basée en temps réel préemptif OS, vous obtenez également toutes les bonnes choses qui vont avec le temps réel embarqué OS comme : tâches, files d’attente, les sémaphores binaires, sémaphores, récursif sémaphores et Mutex pour la communication et synchronisation entre tâches, ou entre les tâches et les interruptions de comptage.  Me donne la chair de poule juste à y penser !  Toute la puissance de ce logiciel est livré par le biais de FreeRTOS qui existe depuis longtemps.

Oh, et le matériel que nous allons exécuter sur fait ma tête tourner.  Nous ne parlons pas peu une micro Pic ou Atmel.  Non, non, nous allons courir cet OS sur un nouveau 24MHz 32 bits ARM® Cortex™-M3 de ST Micro.  Les gens de ST Micro ont fait une carte de développement, appelée la découverte de VL STM32 (VL est abréviation de valeur ligne), disponible pour 12 dollars!  Ils vendent probablement le jury à perte.  À titre de comparaison, cette planche est à environ 1/3 le coût d’une carte Arduino standard.

Le micro STM32F100RBT6B 24MHz qui est utilisée sur la carte découverte est probablement le plus lent qu’ils vendent.  La plupart de ces puces course beaucoup plus vite !  Cependant, la puce elle-même n’est pas trop cher - transporteurs de Digi-Key la puce pour 3,50 $ sur commande plus de 100 pièces.  Pour 3,50 $, vous n’obtenez 128 k flash et 8 k RAM - aucun EEPROM nécessaire depuis le micro peut écrire à son propre flash.

Voici les spécifications juste derrière la page web de Mouser pour la puce de STM32F100RBT6B :

  • Noyau : ARM Cortex M3
  • Largeur de Bus de données : 32 bits
  • Programme Type de mémoire : Flash
  • Taille de la mémoire programme : 128 KB
  • Données RAM taille: 8 KB
  • Type d’interface : I2C, SPI, USART
  • Fréquence d’horloge maximale : 24 MHz
  • Nombre d’entrées/sorties programmables : 51
  • Nombre de minuteries: 6
  • Tension d’alimentation: 2 V à 3,6 V
  • Température maximale: + 85 C
  • Paquet / cas : LQFP-64
  • 3 rd party OCDS : ULINK2 MDK-ARM, RL-bras, EWARM, EWARM-BL,
  • Outils de développement par fournisseur : STM32100B-EVAL
  • Minimum de température de fonctionnement:-40 ° C
  • ADC sur puce : 12 bits, 16 canaux
  • On-Chip DAC : 12 bits, 2 canaux

Juste au cas où vous pensez que le bras n’est pas bon pour les petits projets, j’ai fait une autre recherche sur Digi-Key et retroussé une puce ARM encore moins cher de NXP.  Le micro NXP (Digi-Key partie numéro 568-5142-ND) est une autre puce ARM Cortex-M0.  Toutefois, les pistes de puce NXP à 50MHz (je reçois plus de chair de poule à nouveau), a 8k de flash / 2k de RAM, 28 e/s sur 32 broches, I²C, SPI, USART pour (roulement de tambour s’il vous plaît) 1,46 $ @ 100pcs.  J’adore la Loi de Moore en action.

Apprendre ce genre de choses a application réelle dans le marché du travail aussi.  Baragouiné sur tout votre Arduino dernier projet ne va pas obtenir beaucoup d’attention dans un entretien avec un employeur.  Cependant, expliquant comment vous avez résolu un problème d’inversion de priorité sur embarqué temps réel QU'OS sera !  Croyez-moi, j’ai interviewé / embauché beaucoup de programmeurs embarqués au fil des ans comme un ancien employé de Motorola.

Voici un lien pour acheter la découverte STM32 pour 12 millions de dollars de Mouser.  Acheter deux juste au cas où - le coût d’expédition est fou alors vous pourriez aussi bien obtenir deux.  Oh, et l’écran LCD sur la photo provient aussi de Mouser (12,50 $ chaque).

http://www.Mouser.com/stm32discovery/

Le système d’exploitation que nous allons utiliser s’appelle FreeRTOS et leur adresse web est ensuite répertorié.

http://www.FreeRTOS.org/

Ne vous inquiétez pas, vous pouvez utiliser cet OS dans votre produit commercial sans exposer votre code source.  Le système d’exploitation utilise une licence GPL modifiée et est aussi libre de droits.  Pour un démontage complet des termes de la licence, voici un autre lien :

http://www.FreeRTOS.org/index.html?http:// www.freertos.org/a00114.html

L’en temps réel FreeRTOS OS a été autour depuis longtemps et est très stable.  L’OS a été porté à 26 différentes architectures et est très bien documenté.  J’ai d’abord utilisé FreeRTOS sur un produit pour GM.  Mon code, couplé avec FreeRTOS, tourne en quelques dizaines de milliers de véhicules.  En ce temps-là, j’ai utilisé FreeRTOS sur une puce de Freescale Star12 (beaucoup moins puissant).  Je crois vraiment que ce projet à l’aide de FreeRTOS sauvé mon bacon.

Avoir le système d’exploitation capable de fonctionner sur 26 différentes architectures, comme je le disais avant, ne signifie pas votre liée à une partie spécifique du matériel.  J’aime la liberté de choix.  Si vous souhaitez vraiment plonger, je suggère d’acheter le livre « En utilisant le FreeRTOS temps réel du noyau – un Guide pratique ».  La version de l’eBook est seulement $25 dollars - acheter le livre contribue au développement de FreeRTOS trop.  Vous pouvez facilement trouver le livre à FreeRTOS.org.  Remarque, je n’ai aucun intérêt financier dans FreeRTOS ou ST - j’aime tout les deux.

Pour rester sur les développements futurs, que je travaille sur vous pouvez toujours lier à mon flux RSS depuis mon site web.  J’ai essayer de poster des étapes intermédiaires avant j’ai rassembler assez de choses ensemble pour un instructible.  Mon adresse de site web (électronique de puissance) est répertoriée suivant :

pH-elec.com

Pour les flux RSS, ajouter un signet « en direct » :

www.pH-ELEC.com/RSS.Xml

Articles Liés

La température sur écran LCD 16 x 2

La température sur écran LCD 16 x 2

Dans mon précédent post, j'ai affiché la température sur serial monitor. Aujourd'hui, je vais vous montrer comment afficher la température de la sonde thermique à un WC1602A0 de LCD 16 x 2. Hier, j'ai pensé que mon écran est cassé, mais je lui ai don
Arduino Nano : BMP180 la pression barométrique et la température I2C afficheur LCD 2 X 16 avec Visuino

Arduino Nano : BMP180 la pression barométrique et la température I2C afficheur LCD 2 X 16 avec Visuino

Le BMP180 est un capteur de température et Arduino de pression barométrique combiné très populaire. J'ai déjà fait Instuctable avec BMP180. Un certain nombre de personnes a toutefois demandé comment vous pouvez connecter un autre périphérique I2C sur
Affichage température sur écran LCD à l’aide de STS-21(I2C)

Affichage température sur écran LCD à l’aide de STS-21(I2C)

SalutSalutations bonnes..!! J'ai (Somanshu Choudhary) pour le compte d'entreprises de technologie Dcube va pour mesurer la température à l'aide d'Arduino nano et affichage sur 16 X 2 LCD c'est l'une des applications de I2C protocole pour lire des don
Affichage de la température sur écran LCD

Affichage de la température sur écran LCD

J'ai réunira deux projets dans ce instructable.Je démontrerai comment mesurer la température à l'aide d'une sonde de température LM35 et un Arduino, puis affichez la température sur une série LCD 16 X 2 en Celsius et Fahrenheit.Vous pouvez trouver le
PICAXE - capteur de température DS18B20 pour LCD

PICAXE - capteur de température DS18B20 pour LCD

ceci est mon premier dessin Picaxe, projet de programme et de la construction. Ce projet connecte un capteur DS18B20 à un LCD parallèle en utilisant un PICAXE 20 X 2. Il mesure la température de la pièce et lit les à l'écran chaque seconde ou deux. C
Arduino alimenté par sonde de température avec écran LCD sortie première fois auteur entrée

Arduino alimenté par sonde de température avec écran LCD sortie première fois auteur entrée

Jamais été un gars un peu de concours, mais j'ai avancé et entré dans pour le premier concours d'auteur de temps, si vous aimez mon intructable ou même d'apprendre quelque chose de nouveau et je pense j'ai gagné votre vote s'il vous plaît ! =]Bonjour
La température DHT11 distance Wi-Fi une humidité I2C afficheur LCD 2 X 16 avec deux ESP8266 et Visuino

La température DHT11 distance Wi-Fi une humidité I2C afficheur LCD 2 X 16 avec deux ESP8266 et Visuino

ESP8266 modules sont contrôleurs seul grand peuplement faible coût avec construit en Wi-Fi, et j'ai déjà fait un clin d'oeil simple instructable avec module ESP8266 NodeMCU.L'avantage de ESP8266 sur l'Arduino et autres contrôleurs est le builtin Wi-F
Temp. Capteur affichage sur écran LCD w / Arduino

Temp. Capteur affichage sur écran LCD w / Arduino

Ce qu'il fait essentiellement :Ce projet arduino détecte la température de la sonde de température. Lorsqu'il détecte la température, il affiche sur le moniteur série, que j'ai personnellement pense est évidemment très gênant. Maintenant pour résoudr
ATTiny84 + LCD + température LM35 capteur

ATTiny84 + LCD + température LM35 capteur

Il s'agit d'un capteur de température simple construit avec un ATtiny84, LM35 et un écran LCD 16 x 1 caractère. Il est fait pour courir sur 3 piles AA ou 4,5 volts. Je l'ai fait comme un projet pour savoir comment transférer des projets Arduino dans
Arduino temps & Temp affichage bouclier

Arduino temps & Temp affichage bouclier

un autre projet, je travaille sur requis une minuterie bonne, mais plus je lis sur l'Arduino, j'ai réalisé que je ne pouvais pas faire un temporisateur précis en utilisant un Arduino qui était déjà consacré à d'autres tâches. L'Arduino perdra toujour
ORP / pH / température Data Logger

ORP / pH / température Data Logger

comme un professionnel de la qualité de l'eau travaillant dans le domaine de l'eau potable, je sais combien il est important de surveiller avec précision les niveaux de désinfectant dans l'eau potable qui obtient a servi au public.  Habituellement, c
Conseil développement Atmega16/32 avec écran LCD

Conseil développement Atmega16/32 avec écran LCD

cette instructable montre, comment faire votre propre Conseil développement pour processeurs Atmega16 ou Atmega32. L'Internet est plein de conseils de développement faits maison, mais je pense qu'il n'y a place à gauche pour un autre. Ce Conseil d'ad
Tweetez votre température environnante et surveiller n’importe où !

Tweetez votre température environnante et surveiller n’importe où !

Salut tout le monde !Je suis Geeve George un MAKER fièrement de l'Inde! J'ai commencé à faire à l'âge de 10 ans et mon zèle pour faire encore continue comme je suis fascinée par les possibilités infinies et les possibilités qu'offre la technologie !C
Utiliser twitter et le temps de poster des notes et la température de la porte du Bureau

Utiliser twitter et le temps de poster des notes et la température de la porte du Bureau

Synopsis========L'objectif de ce projet est d'utiliser un compte Twitter pour envoyerNotes de la porte de votre bureau, qui est équipé d'un 20 x 4 LCD(affichage). Ce projet présente essentiellement une mise en œuvre del'idée abordée dans cet article