Forum: PC-Programmierung hilfe zu ctypes struct


von zhinek20 (Gast)


Lesenswert?

hallo an alle user,

ich habe folgende schriegkeiten:
in meinem programm habe ich eine c-struct erstellt, die filgendermaßen 
aussieht:
1
class tCanMsgStruct(Structure):
2
    _fields_ = [
3
                ('m_dwID',c_uint32),
4
                ('m_bFF',c_byte),
5
                ('m_bDLC',c_byte),
6
                ('m_bData',c_byte*8),
7
                ('m_dwTime',c_uint32),
8
                ]
Das ist eine Strucktur für eine CAN Nachricht.

UcanWriteCanMsg() braucht folgendes:
1
UcanWriteCanMsg (
2
                         tUcanHandle               UcanHandle_p,
3
                         tCanMsgStruct*          pCanMsg_p 
4
                         );
Nun möchte ich mit der funktion UcanWriteCanMsg() eine Nachricht auf den 
Port schreiben, weiss aber nicht genau wie ich dieses struct der 
Funktion übergebe.

kann mir da jemand helfen?
gruß zhine2

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

zhinek20 schrieb:
> class tCanMsgStruct(Structure):
>     fields = [
>                 ('m_dwID',c_uint32),
>                 ('m_bFF',c_byte),
>                 ('m_bDLC',c_byte),
>                 ('m_bData',c_byte*8),
>                 ('m_dwTime',c_uint32),
>                 ]

Das ist kein C.

von zhinek20 (Gast)


Lesenswert?

tut mir leid ich habe vergessen zu erwähnen dass ich mit python 
programmiere und c-funktionen in python nutzen will oder beeser das 
struct da oben.

von sebastians (Gast)


Lesenswert?

Ich nehme an, du musst einfach nur die Funktion "pointer" aufrufen. Guck 
mal ins python-Handbuch, da ist ein ctypes Tutorial drin.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.