12
votes

Comment programmer du matériel?

Je suis un programmeur de base Visual Adept. Je souhaite apprendre comment le matériel programmable des personnes. Par exemple, j'ai vu des gens créer une montre à LED, des boîtes, etc. Comment réalisez-vous cela? Peut-on faire avec vb ou java? J'ai une expérience en lecture C, C ++ Code. Je ne suis que conscient de l'IO dans la langue C et C ++.


1 commentaires

Je regarde les schémas matérielles et les fiches techniques du périphérique lorsque je programmise le matériel. Je découvre également si l'appareil est mappé de mémoire ou d'E / S mappé et comment le processeur peut communiquer avec l'appareil.


6 Réponses :


2
votes

Je recommanderais de commencer avec quelque chose comme un Arduino, qui est un bon endroit pour commencer avec la programmation près du matériel. C'est une carte de prototypage avec des DEL intégrées et d'autres choses, en fonction du modèle que vous obtenez. Vous pouvez utiliser C / C ++ ou toute autre langue pouvant être compilée croisée vers un format compatible avec le matériel cible (microcontrôleur ATMEGA que je crois sur l'Arduino).

Départ: http: // www .google.com / Search? Client = Ubuntu & Channel = FS & Q = Arduino & IE = UTF-8 & OE = UTF-8


0 commentaires

20
votes

Vous recherchez probablement un microcontrôleur programmable. Si vous avez de l'expérience dans C / C ++ / Java, Checkout Arduino . Sa puce est programmée à l'aide d'un C comme langue . Ce " Comment tos " peut vous aider à démarrer. Il y a aussi de bons livres qui vous aideront à avancer:

  1. Interactivité de programmation .
  2. faire bouger les mécanismes de bricolage des inventeurs, des amateurs et des artistes

    câblage est une plate-forme similaire à Arduino.

    Regardez également le en avant langage de programmation. Il y a beaucoup d'intéressant " minuscule Ordinateurs "que vous pouvez programmer avec cette langue plutôt inhabituelle. Voici une liste partielle:

    1. Forth inc
    2. Greenarrays
    3. ZILOG Z8
    4. PIC18FXX2

      Deux livres célèbres:

      1. Démarrer avant
      2. Vous pensez (un classique dans la littérature d'ingénierie logicielle.)

1 commentaires

En avant est génial! Très différent, mais peut être beaucoup de plaisir.



1
votes

Si vous voulez simplement connecter quelque chose au port en série / parallèle informatique, vous pouvez utiliser la plupart des langues. Dans Visual Basic, vous aurez besoin d'une DLL pour y parvenir. Java pourrait peut-être le faire aussi. Si vous souhaitez programmer une puce de microcontroleur, vous apprenez mieux c, car il s'agit de la langue utilisée pour programmer la plupart d'entre eux, bien que certaines d'entre elles acceptent de base, Java, Traitement et C ++.


0 commentaires

0
votes

Il existe un certain nombre de timbres de base que vous pouvez utiliser pour que vos pieds soient mouillés. Parallaxe, par exemple, a créé leur entreprise sur des systèmes intégrés basés sur la base. Si vous souhaitez avancer à ce niveau de programmation, vous devez vraiment apprendre C pour la plus grande couverture, et je vous recommande vivement Assemilier, au moins quelques ensembles d'instructions différentes.


0 commentaires

7
votes

Comment les gens programment le matériel

Si par "Matériel", vous voulez dire un périphérique autonome (système intégré), le processus implique Cross-compilation . Le code de l'appareil est écrit dans une langue (de haut niveau) sur un ordinateur hôte PC, compilé et converti en un formulaire adapté pour téléchargement sur le périphérique cible.

Un compilateur croisé génère un code exécutable pour une plate-forme autre que celui sur lequel il s'exécute - par exemple, un compilateur AVR Cross-compiler générera un code pour le microcontrôleur AVR, mais le compilateur s'exécute sur un PC. Universely, l'assemblage et C sont utilisés, et dans une certaine mesure C ++, Java et ADA.

Si par "Hardware", vous voulez dire un périphérique connecté au PC via un port via un port (série, parallèle, USB), puis la programmation implique une interaction via ce port, éventuellement besoin d'un pilote de périphérique.

peut-il être fait en utilisant VB ou Java?

Je ne suis pas sûr de VB (peut-être qu'il y a des compilateurs VB pour Wince et son ILK). Java est utilisé sur des systèmes embarqués plus complexes / plus grands (par exemple, téléphones mobiles), principalement pour développer des applications utilisateur pour le périphérique.

Créer une montre à LED, des boîtes, etc. Comment réalisez-vous cela?

Si vous êtes intéressé à développer quelque chose comme une montre à LED, vous devez apprendre à programmer un microcontrôleur. Au moins, vous avez besoin de deux composants: le microcontrôleur et certains matériels qui chargent des programmes sur celui-ci (un programmateur ). Vous pouvez investir sur un conseil de développement ou construire un vous-même. Naturellement, vous aurez également besoin du compilateur croisé et de la sotware qui interagit avec le programmateur de sorte qu'il puisse charger du code.

Je suis partial pour AVR, alors je suggérerais ça. D'autres options incluent la photo, une variante des périphériques MSP de 8051, PSOC1 et TI.

La chaîne d'outil AVR est fournie dans winavr , et il comprend AVR-GCC (Cross-Compiler frontend ), AVRDUDE (logiciel qui interagit avec le matériel de programmeur) et une bibliothèque C (AVR-LIBC) + un tas d'outils utiles. Le matériel de programmation peut être aussi simple que DAPA / BSD sur des utilisateurs USB (AVRISP, USBASP, USBPROG) etc. .

ou, si votre PC a toujours un port parallèle, vous pouvez essayer de contrôler un ensemble de DEL utilisant une application écrite dans VB. Vérifiez http://www.lvr.com/parport.htm pour plus de détails.


0 commentaires

0
votes

Vous pourriez être intéressé par gadgeteer . Je dois jouer avec un kit il y a quelques semaines, et c'est incroyable amusant. Vous ne pouvez pas actuellement faire vb, mais vous pouvez faire C # et VB arrive très bientôt < / a>.


0 commentaires