MCP2221.dcu FULL-Software für Delphi 7 und Delphi 10.1 Berlin
Die einfachste Art, den Baustein MCP2221 unter Delphi zu steuern.
Im Lieferumfang enthalten:
* MCP2221.dcu
* Delphi 7 oder 10.1 Berlin Software namens Project1 als Quelltext, um die Eigenschaften der MCP2221.dcu zu verdeutlichen.
* Bedienungsanleitung in deutscher Sprache.
Allgemeine Beschreibung:
Die von Microchip® gelieferten dll Dateien liefern dem Anwender eine Fülle von Möglichkeiten, den Baustein MCP2221 über Software an zu sprechen und zu betreiben. Jedoch bieten die dll einige Nachteile.
Laut Aussage von Microchip wurden die dll in C++ geschrieben und sind somit für C++ Programmierer gedacht. Eine Verwendung mit Delphi® wurde seitens Microchip nie beabsichtigt. Entsprechend treten folgende Probleme auf, wenn man Delphi 7 und die dll für MCP2221 verwendet:
- Teilweise komplizierte Konstruktoren (so genannte Handles), die den Zugriff auf bestimmte Funktionen erschweren.
- Manche Parameter sind im UNICODE-Format zu übergeben. Delphi 7 kennt aber kein UNICODE-Format
- Es sind unterschiedliche Parametertypen zu berücksichtigen je nach Funktion: Char, Integer, Arrays etc.
Auch der exzellente Microchip-Support konnte hierzu keine Lösung bieten.
Deshalb hier nun unsere Software-Lösung für den MCP2221
Technische Zusammenhänge:
Folgende Zusammenhänge sind vorhanden:
- Die von Microchip mitgelieferten dll erlauben den Zugriff auf den Microchip Baustein MCP2221.
- Die von uns gelieferte MCP2221.dcu ist die Schnittstelle zwischen dem Delphi - Anwender / Programmierer und der MCP2221-dll
Das zusätzlich zur MCP2221.dcu in Quelltext mitgelieferte Delphi Programm zeigt dem Anwender die Verwendung der dcu anhand von Beispielen zu jeder Funktion der dcu.
Vorteile der gelieferten Software MCP2221.dcu:
- Alle von der MCP2221.dcu verwendeten Variablen sind vom Typ „string“. Der Anwender braucht sich um die verschiedenen Parametertypen keine Sorgen mehr zu machen. Ob Sie eine Variable an den MCP2221-Baustein senden oder von ihm empfangen, diese Variablen sind immer vom Typ „string“. Diese Vorgehensweise vereinfacht die Programmierung erheblich.
- Die Kommunikation über die MCP2221.dcu geschieht immer über Prozeduren (keine Funktionen). Auch diese Art vereinfacht die Programmierung.
- Die MCP2221.dcu prüft intern, ob die übergebenen Parameter korrekt sind. Ein Absturz der selbst geschriebenen Software wird dadurch minimiert.
- Keine Softwareinstallation nötig: man kopiert lediglich die MCP2221.dcu ins Delphi-Arbeitsverzeichnis und hat Zugriff auf alle Prozeduren der dcu.
- Es gibt zwei Varianten der MCP2221.dcu: eine Voll- und eine Demo-Version. Damit kann auch der Anwender zwei Varianten seiner Software an den Endkunden weiter geben. Der Unterschied zwischen den beiden Varianten besteht darin, dass die Demo-Variante ab und zu Meldungen auf den Bildschirm bringt, die Vollversion hingegen nicht.
- Alle Funktionen stehen in komplettem Umfang auch in der Demo-Variante zur Verfügung. Die Demo-Variante besitzt also – im vergleich zur Vollvariante – denselben Funktionsumfang ohne Einschränkungen. Sie können also die Demo-Variante in aller Ruhe testen und später die Vollversion erwerben.
- Die zusätzlich mitgelieferte Software ist ein Delphi 7 / 10.1 Berlin Vollprogramm im Quelltext, das die einzelnen Prozeduren der MCP2221.dcu zeigt. Man kann diese Quelltexte 1:1 in sein Delphi-Programm übernehmen.
- Die MCP2221.dcu in der Demo-Variante und die Quelltexte zum Test aller Prozeduren der dcu sind frei verfügbar. Die Vollvariante der MCP2221.dcu ist kostenpflichtig.
Folgende Befegle bringt die MCP2221.dcu mit sich:
DLL Initialisation
|
DLLStart
|
USB
|
Get_VID_PID
|
Get_PowerSource
|
Get_Remote_Wakeup_Enable
|
Get_Current_Req
|
Get_Str_Manuf
|
Get_Str_Descr
|
Get_Ser_Number
|
Get_Fac_SerNo
|
Get_Ser_Num_En_Enable
|
Get_Firmware_Version
|
Get_Hardware_Version
|
Get_Connection_Status
|
Get_Dev_Count
|
Set_VID_PID
|
Set_PowerSource
|
Set_Remote_Wakeup_Enable
|
Set_Current_Req
|
Set_Ser_Num_En_Enabled
|
Interrupt Pin & GP Clock
|
Get_Interrupt_Pin_Mode
|
Get_Clock_Pin_Divider_Value
|
Get_Clock_Pin_Duty_Cycle
|
Set_Interrupt_Pin_Mode
|
Set_Clock_Pin_Configuration
|
GPIO Configuration
|
Get_GP_Pin_Configuration
|
Get_Gp_Pin_Direction
|
Set_GP_Pin_Configuration
|
Set_Gp_Pin_Direction
|
DAC & ADC
|
Get_Dac_Voltage_Reference
|
Get_Dac_Value
|
Get_Adc_Voltage_Reference
|
Set_Dac_Voltage_Reference
|
Set_Dac_Value
|
Set_Adc_Voltage_Reference
|
Initial Pin Values
|
Get_Initial_Pin_Value_LedUartTx
|
Get_Initial_Pin_Value_LedUartRx
|
Get_Initial_Pin_Value_LedI2C
|
Get_Initial_Pin_Value_Sspnd
|
Get_Initial_Pin_Value_Usbcfg
|
Set_Initial_Pin_Value_LedUartTx
|
Set_Initial_Pin_Value_LedUartRx
|
Set_Initial_Pin_Value_LedI2C
|
Set_Initial_Pin_Value_Sspnd
|
Set_Initial_Pin_Value_Usbcfg
|
Device Operations, Functions
|
Reset_Device
|
Get_Adc_Data
|
Clear_Interrupt_Pin_State
|
Read_GPIO_PinValue
|
Write_Gpio_PinValue
|
I2C Options
|
Read_I2c_Data
|
Write_I2c_Data
|
Stop_I2c_Data_Transfer
|
RS232 nicht vorhanden. Es werden Links zur Verfügung gestellt, um zu einfachen und verständlichen Delphi 7 Routinen für den MCP2221 zu gelangen.
|
|