pic mit PC steuern

OP #1319455
Lesenswert?

Hi,
ich studiere Elektrotechnik, ich habe mir in der letzte Zeit mit PIC 
Programmierung beschäftigt. Ich habe ein Aufgabe bekommen und ich 
brauche eure Hilfe.
Ich muss ein PIC mit einem PC steuren, der PIC ist mit Sensoren 
verbunden, die Zuständer der Pins-Sensoren von der PIC müss ich von der 
Rechner freigeben und auslesen können. ich werde PIC18F2550 verwenden, 
da er ein USB Schnittstelle hat. Die USB-Schnittstelle von den PIC zu 
prorammieren ist keine Problem. Die Frage ist, wie wird ein PC den PIC 
erkennen, die Steuerung muss durch eine Schaltfläche (Fenster mit 
Tasten)am PC durchgeführt werden, ist das möglich? welche 
Programmieresprache brauche ich dafür?
Grüße
#1319475
Lesenswert?

Du musst den PIC so programmieren, dass er vom PC als COM-Port erkannt 
wird.

Ich verwende den PIC-C Compiler von ccsinfo.com da sind schon mehrere 
Beispiel-Projekte (in c) für USB dabei. Was du suchst ist die CDC-Klasse 
(Communication Device Class). Das ganze ist aber ziemlich kompliziert, 
dass ich auch immer nur die Beispiele für eigene Projekte abgeändert 
habe...

Chris
Gast #1319538
Lesenswert?

@Sabine
Deine Worte:

>Die USB-Schnittstelle von den PIC zu
>prorammieren ist keine Problem.

Wo ist denn dann dein Problem?

Dann das hier von dir:

>PIC einfach als virtuellen com-Port
>ich habe das nicht verstanden, kannst du mir mehr erklären?

Du hast keine Ahnung.

>>Du musst den PIC so programmieren, dass er vom PC als COM-Port erkannt
>>wird.

>kannst du mir mehr erklären? es wäre nett,

Lass das mit USB besser sein. Das kann man nicht in
zwei, drei, oder hundert Zeilen Text erklären.
Gast #1319600
Lesenswert?

>ich bin in 3 Semester und ich habe nicht zuviel Ahnung, deswegen habe
>ich im Forum geschrieben,

Naja, in meinem 3 Semester gab es noch kein USB.
Irgendwie hab ich das trotzdem geschafft. Viel lesen halt.

Und wenn ich das hier lese,...

>Die Frage ist, wie wird ein PC den PIC
>erkennen, die Steuerung muss durch eine Schaltfläche (Fenster mit
>Tasten)am PC durchgeführt werden, ist das möglich? welche
>Programmieresprache brauche ich dafür?

Du bist mit der Aufgabe völlig überfordert.
Wer hat dir diese Aufgabe gestellt?
Gast #1319641
Lesenswert?

noch was... wenn ich dir einen tip geben darf: lass die finger von CSS 
in bezug auf die PIC18, dieser compiler hat so viele fehler wie sand am 
meer. wenn was funktioniert, dann ist das nachvollziehen sehr einfach, 
falls mal etwas nicht funktioniert, gibste dir lieber gleich den 
gnadenschuss. falls du CSS nicht kennst, besser so.
ps: der COM-Port ist die serielle schnittstelle. du kennst sicher die 
kleinen teile, die du am USB einstecken kannst und dann einen serielle 
schnittstelle hast: genau das meinen die anderen ;-) bzw. dass der PIC 
gegenüber dem PC genau ein solches gerätchen simuliert, denn viele 
können dir helfen bezüglich der seriellen schnittstelle aber nicht 
bezüglich USB (weniger erfahrung weil komplizierter). jedoch habe ich 
selber noch nie die serielle schnittstelle bei den PIC benutzt sondern 
nur immer gleich die USB-schnittstelle mit der von Microchip zur 
verfügung gestellten libraries oder eben fix-fertig mit den dateien aus 
dem oben genannten link ;-)
Gast #1319664
Lesenswert?

@Sabine
Lass dich nicht fertig machen.

Alle haben mal angefangen.

Info`s mit USB und PIC gibt es einige:

Sprut ist einer, Mikroe und Oshon-Soft kenne ich noch.

http://www.sprut.de/electronic/interfaces/usb/usb.htm

Einfach zu verstehende Sachen brauchst du, schwerer kannst du immer 
noch.

Wenn du den Umgang mit USB lernen willst, fange mit einer Möglichkeit 
an.

USB ist sehr komplex, aber keine Zauberei.

Oshon ist auch mit einigen Beispielen dabei, sogar mit Purebasic.

http://www.oshonsoft.com/pic18usb.html

im Forom von Mikroe bekommst du in allen Sprachen Info`s: C, Pascal, 
Basic.

http://www.mikroe.com/forum/

Aber auch im Purebasic-Forum (User: MPZ hat was verständliches im Umgang 
mit PC und USB(HID) geschrieben.

http://www.purebasic.fr/german/

Und letzte Bemerkung:

@Schlauberger und Runtermacher--->
Helfen ist angesagt, nicht andere dumm da stehen lassen.

In der Sache Hilfestellung geben ist viel schlauer.
Gast #1319668
Lesenswert?

Nachtrag:
Kleiber informiert auch gut, kannte ich noch nicht.

Google mal nach Michael Roland, der hat auch mal ein gutes pdf, aber für 
AVR`s ins Netz gestellt, habe es aber nicht mehr gefunden.


Und ev. merkst du es an meinen Links, man muss nicht C können, Basic 
geht auch!!
Gast #1319869
Lesenswert?

für programmierung einer oberfläche  auf dem PC geht auch lazarus
ist delphi-ähnlich
dort bastelt man sich mit fertigen libs seine buttons auf eine form und 
hat so eine grafische oberfläche mit knöpfen und extfeldern oder sonswas

alsternativ sollte so ziemlich jede hochschule auch zugang zu MSNDAA 
haben , dort gibts meist visual studio  für c, C++ , C# ...... 
kostenlos


man muss dann eben nur noch programmieren was in einer textbox stehen 
soll oder was passiert wenn der button gedrückt wurde
der rest läuft intern ab und man brauch sich nicht darum kümmern wie man 
eine oberfläche darstellt

für einsteiger is lazarus auch nicht schwer


am einfachsten auf dem PIC eine firmware schreiben die windows einen 
virtuellen COM port  , also eine serielle schnittstelle  bereitstellt

über diese serielle kannst beliebig daten übertragen
wie diese auf der PC seite  und umgekehrt ankommen ..
das liegt in deiner hand

der PIC wartet dann einfach auf bestimmte befehle
anhand des befehls fragt er den sensor ab und schickt die daten über den 
vortuellen COM zum PC
dieser empfängt die daten und kann sie darstellen oder auch speichern 
oder sonstwas
#1319892
Lesenswert?

Hallo Sabine,

ich beschäftige mich auch mit PIC18 und USB.

Ich würde dir auch die Tuts auf www.sprut.de empfehlen. Dann lädst du 
dir noch das aktuelle MPLab und den C18 Compiler runter (gibts ohne 
Optimierungen für Schüler/Studenten kostenlos) sowie das Microchip USB 
Framework.

Dann fängst du erstmal an den PIC kennenzulernen (LEDs schalten, tasten 
abfragen, UART programmieren). Nach einer Weile fühlst du dich auch beim 
PIC18 "heimisch", kommt natürlich drauf an ob das dein erster µC ist. Im 
Studium müsstet ihr aber schon was diesbezüglich gemacht haben.

Da die ganze Steuerung keinen hohen Datendurchsatz braucht hast du 
mehere Möglichkeiten:
-Ein FTDI Chip der dir UART in USB "umwandelt"
-die CDC Klasse mit dem MicrochipFramework
-eine allgemeine USB Klasse (libUSB, winUSB oder MCHPUSB) <<-- ist aber 
am kompliziertesten.

Für die Oberfläche kannst du nehmen was dir gefällt. Weit verbreitet 
unter Windows ist eben .Net. Du kannst mit VisualBasic oder C# oder 
c++/cli sehr enfach Oberflächen mit MS Visual Studio Express erstellen. 
Im Studium hab ich auch erst ANSI C++ dann C++/CLI und dann c# 
kennengelernt. Ist alles drei leistungstark. C# und VB sind 
oberflächenmäßig mächtiger und übersichtlicher.
Schau mal hier:
http://openbook.galileocomputing.de/einstieg_vb_2008/
http://openbook.galileocomputing.de/visualbasic_2008/
http://openbook.galileocomputing.de/visual_csharp/
Gast #1319918
Lesenswert?

Von mir auch noch einen Tipp:
Wenn du dich für das Visual Studio entscheiden solltest, gibt es ein 
super Buch zum Einstieg als pdf im Netz:
C++ in 21 Tagen
http://www-user.tu-chemnitz.de/~kmai/work/info/Scripte/C%2B%2B%20%20in%2021%20Tagen.pdf

Damit kann man echt schnelle Ergebnisse erziehlen. Steht auch ein 
einfaches Beispiel für Kommunikation mit dem COM-Port drin.

Wünsche dir viel Erfolg!

PS: Wo studierst du denn? Die Aufgabe klingt ein wenig nach meinem alten 
Prof. ;-)

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren