Microcontrôleur PIC du Système d'Exploitation
J'ai entendu il est possible d'écrire un Système d'Exploitation, en utilisant le haut dans le chargeur de démarrage et un noyau que vous écrivez, pour le microcontrôleur PIC. J'ai aussi entendu dire qu'il a un RTOS.
- Est-ce vrai? Pouvez-vous réellement faire un noyau du système d'exploitation (à l'aide de C/C++) pour le PIC?
- Si oui à la question 1, il y a des exemples de cela?
- Si oui à la question 1, auriez-vous besoin de tout type de logiciel pour créer le noyau?
- Puce est la seule compagnie qui fait les microcontrôleurs PIC?
- Pouvez le microcontrôleur PIC être programmé sur un mac?
Merci!
Pourquoi croyez-vous besoin d'un système d'exploitation sur un petit micro-contrôleur PIC ?
Ses un projet dans lequel je suis en train d'écrire un petit os qui permet de faire beaucoup de choses pour un si petit appareil. Le PIC est petit, pris en charge, moderne et peu coûteux.
En tant que professionnel intégré programmeur, je trouve que l'utilisation d'un système d'exploitation temps réel sur un PIC est presque toujours une meilleure idée que de ne pas.
intéressant - j'aurais pensé qu'un RTOS surpuissant pour la plupart des PIC applications, mais je peux voir la valeur d'un petit noyau multitâche.
D'accord; il y a différents niveaux de RTO... FreeRTOS est un petit noyau multitâche, et exactement à la bonne place sur un PIC. Nous avons trouvé que c'est presque toujours mieux que d'écrire son propre ordonnanceur, en particulier sur les PIC24 et.
Ses un projet dans lequel je suis en train d'écrire un petit os qui permet de faire beaucoup de choses pour un si petit appareil. Le PIC est petit, pris en charge, moderne et peu coûteux.
En tant que professionnel intégré programmeur, je trouve que l'utilisation d'un système d'exploitation temps réel sur un PIC est presque toujours une meilleure idée que de ne pas.
intéressant - j'aurais pensé qu'un RTOS surpuissant pour la plupart des PIC applications, mais je peux voir la valeur d'un petit noyau multitâche.
D'accord; il y a différents niveaux de RTO... FreeRTOS est un petit noyau multitâche, et exactement à la bonne place sur un PIC. Nous avons trouvé que c'est presque toujours mieux que d'écrire son propre ordonnanceur, en particulier sur les PIC24 et.
OriginalL'auteur Coder404 | 2012-05-01
Vous devez vous connecter pour publier un commentaire.
Je vous suggère de vérifier FreeRTOS.
Découvrez la "prise en charge des Mcu" la page pour les outils pris en charge. Comme pour les boutons -- eh bien, ce serait votre travail à mettre en œuvre.
Voir: freertos.org/a00090.html#MICROCHIP
Typique d'un RTOS noyau fournit priorité en fonction de préemption fil de planification, de communication inter-processus et généralement un minimum de cadre pour la gestion des interruptions. I/O n'est généralement pas inclus. Dans votre cas, vous pouvez avoir le bouton d'entrée de déclenchement d'une interruption puis le signal d'interruption d'un événement à un fil. Sinon (et de manière moins efficace), vous pourriez avoir un fil d'interrogation les entrées et l'envoi d'événements à d'autres threads.
OriginalL'auteur Oliver
Oui, vous pouvez écrire votre propre noyau (j'ai écrit 2 de mes propres). Oui, vous pouvez l'écrire en C pour PIC. Si vous voulez de préemption de la planification, alors vous allez avoir un vrai dur de dur en évitant d'assemblage complètement lors de l'écriture du changement de contexte. D'autre part, vous pouvez facilement écrire une coopérative noyau purement en C (je l'ai fait moi-même). (Notez que la création d'un système d'exploitation n'est pas une tâche simple... j'aimerais obtenir vos pieds humides dans le plus pur C en premier, puis UTILISER un OS ou deux, puis essayez d'en créer un).
Un excellent exemple de cela est FreeRTOS. Il a préexistants ports (c'est à dire MPLAB projets qui s'exécutent sans aucune modification sur la Explorer16 carte de démonstration) pour PIC24F, PIC33F, et PIC32MX (ainsi que 20-quelques rares autres officiel de ports pour les autres fournisseurs d'appareils). PIC18F est pris en charge, mais c'est pas joli...
Vous avez seulement besoin de MPLAB pour créer le noyau (gratuit de Microchip). Il peut travailler interchangably avec C et de l'assemblée. En fonction du processeur, il y a des versions gratuites de leurs C30 et C32 compilateurs pour aller avec MPLAB.
PIC est un type de microcontrôleur, et est une marque de la Puce. De nombreuses autres sociétés de microcontrôleurs et de les appeler quelque chose d'autre (par exemple, AVR, LPC, STM32).
Oui, la nouvelle version de MPLAB X est pris en charge sur Mac, Linux et Windows.
Un supplément est à noter que vous pouvez utiliser un autre IDE du programme pour le PIC, microcontrolers comme ccs c de ccsinfo.com l'un des meilleurs IDE+Compilateur C pour PIC, ou vous pouvez utiliser l'un de mikroeletronika il prend en charge C, Pascal ou Basic pour PIC et AVR.
OriginalL'auteur Nathan Wiebe
Je seconde le vote pour FreeRTOS; nous utilisons tout le temps sur PIC24 dessins. Le port fonctionne bien et ne pas utiliser une tonne de mémoire.
Puce prend en charge de nombreux tiers RTOSes.
La plupart ont gratuit des projets de démonstration que vous pouvez télécharger, de construire dans MPLAB, et de programmes sur une carte Explorer16 très facilement. Ensuite, vous pouvez expérimenter au contenu de votre coeur.
OriginalL'auteur Adam Casey
PIC n'est pas une architecture unique. PIC10 diffère considérablement de PIC24, bien qu'ils et chaque PIC entre partagent quelques points communs. Le MIPS PIC32 sur l'autre main est une architecture entièrement différente. Donc, vous devez être clair sur ce PIC que vous faites allusion.
Un OS sur un PIC n'est pas ont être et RTOS, mais qui serait parfaitement adapté au domaine d'application les appareils sont utilisés, donc tout ce qui n'étaient pas en temps réel capables serait un peu moins utile.
Il y a beaucoup de RTOS ports déjà pour PIC.
Il n'y a rien de spécial au sujet d'un noyau planificateur en termes de méthode de développement, C et dans la plupart des cas, un peu d'assembleur sont tout ce qui est nécessaire - pas d'outils spéciaux. Vous pouvez utiliser 100% de l'assembleur si vous l'avez souhaité, et cela peut être nécessaire pour obtenir le plus petit/le plus rapide du code, mais seulement si votre connaissance de l'assembleur est mieux que le compilateur.
PIC est spécifique à Puce, si La parallaxe SX est plus ou moins un clone. À la différence de BRAS par exemple, la Puce n'a pas de licence de l'architecture à des tiers pour les fabricants de puces ou des fournisseurs de propriété intellectuelle. Personne ne souhaite en tout cas de l'OMI; il y a beaucoup mieux les architectures. ARM Cortex-M est particulièrement adapté à la RTOS noyau de la mise en œuvre, et AVR instruction est conçu pour l'efficacité de la traduction du code source C. Même le vénérable 8051 est bien adapté à RTOS mise en œuvre; ses huit enregistrer les banques de faire des changements de contexte très rapide (jusqu'à huit threads), et comme le BRAS, 8051 architecture appareils sont disponibles à partir de plusieurs fabricants.
OriginalL'auteur Clifford
Le matériel de la pile de PIC 18F CPU est à seulement 31 octets de long. D'autres de la mémoire RAM ne peut pas être utilisé sous forme de pile. Même 8051 IRAM de la mémoire de 128 octets de la pile. J'ai fait RTOS pour 8051, ARM et PIC 18F, et ne se sent pas bien à PIC 18F. Si la RAM(16 ko à 64 KO) de PIC32 peut être utilisé comme pile, si le pointeur de pile est de 16 bits de long, il sera beaucoup mieux que PIC18F types. Quelqu'un sait qui?
OriginalL'auteur Long Wan