Titel: LCD Ansteuerung Beitrag von: Mr.Vercetti am Juni 22, 2009, 15:30:29 Ich mach gerade in der Schule mit einem Freund ein Projekt und zwar eine Software um LCD´s anzusteuern.
Das ganze in C# Jetzt würde ich gerne auch das USB-Low-Cost Interface ansteuern. Das Problem ist das ich nicht weiß wie ich die USB-LCD.dll in C# umsetzte. Kann mir vll jemand dabei helfen? Titel: Re: LCD Ansteuerung Beitrag von: hackspider am Juni 22, 2009, 16:22:59 Hi,
http://sourceforge.net/projects/libusbdotnet/ damit kannst du auf den USB-Port zugreifen, allerdings müsste man dann die Methoden der USB-DLL neu implementieren. Besser ist aber glaube ich wenn du die Methoden der USB-LCD.dll mittels DLLImport läds so wie hier: http://msdn.microsoft.com/de-de/library/cc431203.aspx Gruß hackspider Titel: Re: LCD Ansteuerung Beitrag von: Mr.Vercetti am Juni 22, 2009, 22:13:22 ich habs versucht zu importieren aber es kommt dieser fehler:
"Das DllImport-Attribut ist für diesen Deklarationstyp ungültig. Es ist nur für method-Deklarationen gültig." Was muss da genau hin? Titel: Re: LCD Ansteuerung Beitrag von: hackspider am Juni 22, 2009, 23:03:56 Hi,
hatte grad en paar Probleme um das nachzuvollziehen (x64 x86 Problematik). Aber nachdem ich mir eine x64 USB-LCD.dll kompiliert hatte ging das ohne Probleme: Code: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Runtime.InteropServices; namespace DLLImport { class Program { [DllImport("USB_LCD.dll")] private static extern short USB_LCD_Connect(); static void Main(string[] args) { int x = USB_LCD_Connect(); Console.WriteLine(x.ToString()); Console.ReadKey(); } } } Gruß hackspider Titel: Re: LCD Ansteuerung Beitrag von: Mr.Vercetti am Juni 23, 2009, 08:17:59 thx jetzt gehts, habs ausserhalb der Klasse gehabt deshalb ging es nicht.
Jetzt noch ne frage zu den einzellnen Methoden. Das ist klar. short _stdcall USB_LCD_Connect (void) Was muss hie genau übergeben werden? short _stdcall USB_LCD_Init und short _stdcall USB_LCD_Command und short _stdcall USB_LCD_Data was macht die variable short LCD genau? Und ich hab diese Problem Der Typ USB_Test.Form1 der Assembly USB_Test, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null konnte nicht geladen werden, da die Methode USB_LCD_Data keine Implementierung (keine RVA) hat. Sorry raffs ncoh net so ganz (will ich aber ;D ;D ) Titel: Re: LCD Ansteuerung Beitrag von: hackspider am Juni 23, 2009, 18:49:41 Hi,
erstmal zu deiner Frage wegen dem LCD Parameter, das steht doch ziehmlich deutlich in der Readme datei drinn: Code: The argument "LCD" represents the controller-number; For one-controller-LCDs it can be set to 0 or 1. Es gibt nur wenige LCDs die mehr als einen Controller haben, es gab mal ein 4x27 CLCD bei Pollin, bei dem obere und untere Hälfte getrennt angesteuert wurden. Aber ansonsten tauchen 2 Controller nur bei sehr großen (4x40) LCDs auf. --> Kannste für "normale" LCDs auf 0 setzten. So jetzt mal zu den Parametern der Init Funktion: Um das wirklich zu verstehen solltest du dir Seite 5 (Control and Display Command) und Seite 7 (Initializing by Instruction) die von Peter Fleury (http://www.reichelt.de/?;ACTION=7;LA=6;OPEN=0;INDEX=0;FILENAME=A500%252FLCD164A%2523DIS.pdf;SID=28xUM27awQARwAAEYV1gsa5c7a564c10e0275164a1de8cfd17271]dieses PDFs[/url] mal genauer anschauen. Kurz zusammengefasst: lines = 1 Zeiliges oder Mehrzeiliges LCD (mit N im PDF gekennzeichnet) font = 5x7 Zeichensatz (F im PDF) increase = afair ob der Curser von Hand oder automatisch erhöht wird (I/D im PDF) shift = shift off/on (S im PDF) mit C_on und B_on kann man den Den Cursor und das Blinking de/aktivieren (DISPLAY ON/OFF Command) mit D_shift und R_Shift werden die Bits S/C und R/L im SHIFT Command gesetzt. um diese ganzen Settings zu verstehen, würde ich dir dringest empfehlen die Datenblätter genauer zu studieren, dann verstehst du auch was LCD_Command und LCD_Data macht. Wenn du allerdings, das ganze nur benutzen möchtest, würde ich dir Vorschlagen mal nachzuschauen was die fertigen Libraries (z.B. [url=http://homepage.hispeed.ch/peterfleury/avr-software.html)) an Attributen übergeben. Was den Fehler angeht, den du bekommst: scheint so als wäre da irgendwas bei der Definition/Aufruf der USB_LCD_Data Funktion schief gegangen. Gruß hackspider Titel: Re: LCD Ansteuerung Beitrag von: Mr.Vercetti am Juni 23, 2009, 20:18:43 thx
dann geh ich mal ans lesen
© 2001-2022 MODDING-FAQ FORUM | SMF
Alle Rechte vorbehalten. |