Forum: Mikrocontroller und Digitale Elektronik ATSAMD51 mit AtmelStudio und USB


von Mike T. (miket)


Angehängte Dateien:

Lesenswert?

Hi,

hat jemand mit dem ATSAMD51 und AtmelStudio schonmal USB (CDC) zu laufen 
gebracht ?
Die ATSAMD51 ist zwar relativ neu, ist aber im Atmel Studio nicht in 
einem neuen Projekt auswählbar, weil ASF3 ihn nicht unterstützt. Es wird 
nur noch Atmel Start (und ASF4) unterstützt. Wenn ich dort eine USB CDC 
Komponente einbinde, das ganze in Atmel Studio exportiere, kompilieren 
und laufen lasse wird am angeschlossenen PC auch ein virtueller COM Port 
erkannt, aber der funktioniert nicht. Man kann den Port mit keinem 
Terminal-Programm öffnen. Putty beendet sich einfach, Termite friert 
ein.

Ich denke die Clock habe ich richtig, 48MHz für USB ansonsten 
funktioniert überhaupt nichts.

Leider gibts überhaupt keine Beispiele mit dem SAMD5x und auch kein 
EvalBoard. Bei Microchip haben die Atmel-ICs wohl die niedrigste Prio.

von Jim M. (turboj)


Lesenswert?

Kann man die 48MHz für USB (DFLL48M) auch aus dem HF Quarz generieren?

Ich frage das, weil z.B. beim LPC176x die PLL laut Manual nicht für USB 
freigegeben ist wenn sie aus'm 32kHz Uhrenquarz gespeisst wird. Zuviel 
Jitter da zu selten nachjustiert werden kann.

Das muss für den 10 Jahre jüngeren ATSAMD51 natürlich nicht gelten 
(Handbuch/Errata Sheet hab ich nämlich nicht gelesen), und ein simples 
Software Problem ist hier auch gar nicht unwahrscheinlich.

Ich sehe gelegentlich USB CDC Implementierungen die mit simplen "serial 
Line state" Settings aus dem Tritt kommen - da diese nicht oder nicht 
korrekt implementiert sind.

von Mike T. (miket)


Lesenswert?

Hi Jim,
das habe ich auch probiert. Der DFLL48 braucht aber max 33kHz am 
Eingang. Ich habe den 12Mhz in einem Clock generator runtergeteilt auf 
23kHz, dann in den DFLL48 auf 48MHz. -> Gleiches Ergebnis.

Dann hab ich noch probiert die 12MHz durch die DPLL0 auf 48Mhz zu 
bringen und die in CPU und USB zu verwenden. -> Dann wird garkein USB 
Device mehr im PC erkannt ("... hat nicht ordnungsgemäß 
funktioniert...).

Ohne die DFLL48 scheint USB garnicht zu laufen.

Ich habe auch schon probiert die CPU mit dem gleichen Takt oder 24MHz 
laufen zu lassen, weil ich dachte dass es ein problem mit der 
Syncronisierung sein könnte. Immer das gleiche.

von Rudolph (Gast)


Lesenswert?

Direkt nach dem Reset läuft der D51/E51 doch schon mit 48MHz aus der 
DFLL48M los, also für einen ersten Test könnte man das Clock-System auch 
ignorieren.
Das geht dann vielleicht nur bei Raumtemperatur, aber das reicht ja fürs 
erste.

Mit einer der beiden FDPLL200M kommt man mit einem 12MHz Quarz auch 
direkt auf 48MHz indem man den Vor-Teiler der PLL benutzt um erstmal auf 
2MHz runter zu gehen, mehr als 3,2MHz vertragen die PLLs nämlich nicht.
Diesen Vor-Teiler kann man nur im START nicht verwenden, den gibt es 
dort schlichtweg nicht.

von Mike T. (miket)


Lesenswert?

Hi,
danke für Eure Antworten !
Das Clock-System ignorieren habe ich auch jetzt probiert. Hab alles 
auskommentiert, das in den init-Routinen mit den Oszillatoren zu tun 
hatte. Dann läuft er tatsächlich mit 48MHz, USB wird erkannz, hängt 
genauso.

Drum glaube ich mittlerweile nicht mehr dass das ein Problem mit dem 
Takt ist. Eher ein Bug im CDC Stack. Ich habe noch etwas herausgefunden 
: Wenn ich den COM-Port der im Windows angezeigt wird öffne (z.B. mit 
Putty) und etwas hinschicke, dann hängt Putty (zumindest bis ich den USB 
rausziehe oder den Debuggger stoppe). Wenn ich in dem Zustand den 
Debugger anhalte, hängt das Programm immer in dieser Funktion fest :
1
static inline void hri_port_set_OUT_reg(const void *const hw, uint8_t submodule_index, hri_port_out_reg_t mask)
2
{
3
  ((Port *)hw)->Group[submodule_index].OUTSET.reg = mask;
4
}

Aber warum wird die immer wieder endlos aufgerufen ?

von Rudolph R. (rudolph)


Lesenswert?

Was sagt eigentlich USBTreeView dazu?

von Mike T. (miket)


Lesenswert?

USBTreeView sagt :
1
    =========================== USB Port1 ===========================
2
3
Connection Status        : 0x01 (Device is connected)
4
Port Chain               : 1-1
5
Properties               : 0x01
6
 IsUserConnectable       : yes
7
 PortIsDebugCapable      : no
8
 PortHasMultiCompanions  : no
9
 PortConnectorIsTypeC    : no
10
ConnectionIndex          : 1
11
CompanionIndex           : 0
12
 CompanionHubSymLnk      : USB#ROOT_HUB30#4&11118949&0&0#{f18a0e88-c30c-11d0-8815-00a0c906bed8}
13
 CompanionPortNumber     : 13
14
15
      ======================== USB Device ========================
16
17
        +++++++++++++++++ Device Information ++++++++++++++++++
18
Friendly Name            : Serielles USB-Gerät (COM33)
19
Device Description       : Serielles USB-Gerät
20
Device Path              : \\?\usb#vid_03eb&pid_07ee#5&20dbd6ce&0&1#{a5dcbf10-6530-11d2-901f-00c04fb951ed}
21
Device ID                : USB\VID_03EB&PID_07EE\5&20DBD6CE&0&1
22
Hardware IDs             : USB\VID_03EB&PID_07EE&REV_0100 USB\VID_03EB&PID_07EE
23
Driver KeyName           : {4d36e978-e325-11ce-bfc1-08002be10318}\0027 (GUID_DEVCLASS_PORTS)
24
Driver                   : \SystemRoot\System32\drivers\usbser.sys (Version: 10.0.17763.1  Date: 2018-09-15)
25
Driver Inf               : C:\WINDOWS\inf\usbser.inf
26
Legacy BusType           : PNPBus
27
Class                    : Ports
28
Class GUID               : {4d36e978-e325-11ce-bfc1-08002be10318} (GUID_DEVCLASS_PORTS)
29
Interface GUID           : {a5dcbf10-6530-11d2-901f-00c04fb951ed} (GUID_DEVINTERFACE_USB_DEVICE)
30
Service                  : usbser
31
Enumerator               : USB
32
Location Info            : Port_#0001.Hub_#0001
33
Location IDs             : PCIROOT(0)#PCI(1400)#USBROOT(0)#USB(1), ACPI(_SB_)#ACPI(PCI0)#ACPI(XHC_)#ACPI(RHUB)#ACPI(HS01)
34
Container ID             : {178a2601-f375-11e9-9376-f8633f62fba0}
35
Manufacturer Info        : Microsoft
36
Capabilities             : 0x84 (Removable, SurpriseRemovalOK)
37
Status                   : 0x0180600A (DN_DRIVER_LOADED, DN_STARTED, DN_DISABLEABLE, DN_REMOVABLE, DN_NT_ENUMERATOR, DN_NT_DRIVER)
38
Problem Code             : 0
39
Power State              : D0 (supported: D0, D3, wake from D0)
40
COM-Port                 : COM33 (\Device\USBSER000)
41
42
        +++++++++++++++++ Registry USB Flags +++++++++++++++++
43
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\usbflags\03EB07EE0100
44
 osvc                    : REG_BINARY 00 00
45
46
        ---------------- Connection Information ---------------
47
Connection Index         : 0x01 (1)
48
Connection Status        : 0x01 (DeviceConnected)
49
Current Config Value     : 0x01
50
Device Address           : 0x06 (6)
51
Is Hub                   : 0x00 (no)
52
Device Bus Speed         : 0x01 (Full-Speed)
53
Number Of Open Pipes     : 0x03 (3 pipes to data endpoints)
54
Pipe[0]                  : EndpointID=2  Direction=IN   ScheduleOffset=0  Type=Interrupt
55
Pipe[1]                  : EndpointID=1  Direction=OUT  ScheduleOffset=0  Type=Bulk
56
Pipe[2]                  : EndpointID=1  Direction=IN   ScheduleOffset=0  Type=Bulk
57
Data (HexDump)           : 01 00 00 00 12 01 00 02 02 00 00 40 EB 03 EE 07   ...........@....
58
                           00 01 01 02 00 01 01 01 00 06 00 03 00 00 00 01   ................
59
                           00 00 00 07 05 82 03 40 00 0A 00 00 00 00 07 05   .......@........
60
                           01 02 40 00 00 00 00 00 00 07 05 81 02 40 00 00   ..@..........@..
61
                           00 00 00 00                                       ....
62
63
        --------------- Connection Information V2 -------------
64
Connection Index         : 0x01 (1)
65
Length                   : 0x10 (16 bytes)
66
SupportedUsbProtocols    : 0x03
67
 Usb110                  : 1 (yes)
68
 Usb200                  : 1 (yes)
69
 Usb300                  : 0 (no)
70
 ReservedMBZ             : 0x00
71
Flags                    : 0x00
72
 DevIsOpAtSsOrHigher     : 0 (Is not operating at SuperSpeed or higher)
73
 DevIsSsCapOrHigher      : 0 (Is not SuperSpeed capable or higher)
74
 DevIsOpAtSsPlusOrHigher : 0 (Is not operating at SuperSpeedPlus or higher)
75
 DevIsSsPlusCapOrHigher  : 0 (Is not SuperSpeedPlus capable or higher)
76
 ReservedMBZ             : 0x00
77
Data (HexDump)           : 01 00 00 00 10 00 00 00 03 00 00 00 00 00 00 00   ................
78
79
    ---------------------- Device Descriptor ----------------------
80
bLength                  : 0x12 (18 bytes)
81
bDescriptorType          : 0x01 (Device Descriptor)
82
bcdUSB                   : 0x200 (USB Version 2.00)
83
bDeviceClass             : 0x02 (Communications and CDC Control)
84
bDeviceSubClass          : 0x00
85
bDeviceProtocol          : 0x00 (No class specific protocol required)
86
bMaxPacketSize0          : 0x40 (64 bytes)
87
idVendor                 : 0x03EB
88
idProduct                : 0x07EE
89
bcdDevice                : 0x0100
90
iManufacturer            : 0x01 (String Descriptor 1)
91
 *!*ERROR  String descriptor not found
92
iProduct                 : 0x02 (String Descriptor 2)
93
 *!*ERROR  String descriptor not found
94
iSerialNumber            : 0x00 (No String Descriptor)
95
bNumConfigurations       : 0x01 (1 Configuration)
96
Data (HexDump)           : 12 01 00 02 02 00 00 40 EB 03 EE 07 00 01 01 02   .......@........
97
                           00 01                                             ..
98
99
    ------------------ Configuration Descriptor -------------------
100
bLength                  : 0x09 (9 bytes)
101
bDescriptorType          : 0x02 (Configuration Descriptor)
102
wTotalLength             : 0x0043 (67 bytes)
103
bNumInterfaces           : 0x02 (2 Interfaces)
104
bConfigurationValue      : 0x01 (Configuration 1)
105
iConfiguration           : 0x00 (No String Descriptor)
106
bmAttributes             : 0x80
107
 D7: Reserved, set 1     : 0x01
108
 D6: Self Powered        : 0x00 (no)
109
 D5: Remote Wakeup       : 0x00 (no)
110
 D4..0: Reserved, set 0  : 0x00
111
MaxPower                 : 0x32 (100 mA)
112
Data (HexDump)           : 09 02 43 00 02 01 00 80 32 09 04 00 00 01 02 02   ..C.....2.......
113
                           00 00 05 24 00 01 10 05 24 01 01 00 04 24 02 02   ...$....$....$..
114
                           05 24 06 00 01 07 05 82 03 40 00 0A 09 04 01 00   .$.......@......
115
                           02 0A 00 00 00 07 05 01 02 40 00 00 07 05 81 02   .........@......
116
                           40 00 00                                          @..
117
118
        ---------------- Interface Descriptor -----------------
119
bLength                  : 0x09 (9 bytes)
120
bDescriptorType          : 0x04 (Interface Descriptor)
121
bInterfaceNumber         : 0x00
122
bAlternateSetting        : 0x00
123
bNumEndpoints            : 0x01 (1 Endpoint)
124
bInterfaceClass          : 0x02 (Communications and CDC Control)
125
bInterfaceSubClass       : 0x02 (Abstract Control Model)
126
bInterfaceProtocol       : 0x00 (No class specific protocol required)
127
iInterface               : 0x00 (No String Descriptor)
128
Data (HexDump)           : 09 04 00 00 01 02 02 00 00                        .........
129
130
        -------------- CDC Interface Descriptor ---------------
131
bFunctionLength          : 0x05 (5 bytes)
132
bDescriptorType          : 0x24 (Interface)
133
bDescriptorSubType       : 0x00 (Header Functional Descriptor)
134
bcdCDC                   : 0x1001 (CDC Version 10.01)
135
Data (HexDump)           : 05 24 00 01 10                                    .$...
136
137
        -------------- CDC Interface Descriptor ---------------
138
bFunctionLength          : 0x05 (5 bytes)
139
bDescriptorType          : 0x24 (Interface)
140
bDescriptorSubType       : 0x01 (Call Management Functional Descriptor)
141
bmCapabilities           : 0x01
142
 D7..2:                  : 0x00 (Reserved)
143
 D1   :                  : 0x00 (sends/receives call management information only over the Communication Class interface)
144
 D0   :                  : 0x01 (handles call management itself)
145
bDataInterface           : 0x00
146
Data (HexDump)           : 05 24 01 01 00                                    .$...
147
148
        -------------- CDC Interface Descriptor ---------------
149
bFunctionLength          : 0x04 (4 bytes)
150
bDescriptorType          : 0x24 (Interface)
151
bDescriptorSubType       : 0x02 (Abstract Control Management Functional Descriptor)
152
bmCapabilities           : 0x02
153
 D7..4:                  : 0x00 (Reserved)
154
 D3   :                  : 0x00 (not supports the notification Network_Connection)
155
 D2   :                  : 0x00 (not supports the request Send_Break)
156
 D1   :                  : 0x01 (supports the request combination of Set_Line_Coding, Set_Control_Line_State, Get_Line_Coding, and the notification Serial_State)
157
 D0   :                  : 0x00 (not supports the request combination of Set_Comm_Feature, Clear_Comm_Feature, and Get_Comm_Feature)
158
Data (HexDump)           : 04 24 02 02                                       .$..
159
160
        -------------- CDC Interface Descriptor ---------------
161
bFunctionLength          : 0x05 (5 bytes)
162
bDescriptorType          : 0x24 (Interface)
163
bDescriptorSubType       : 0x06 (Union Functional Descriptor)
164
bControlInterface        : 0x00
165
bSubordinateInterface[0] : 0x01
166
Data (HexDump)           : 05 24 06 00 01                                    .$...
167
168
        ----------------- Endpoint Descriptor -----------------
169
bLength                  : 0x07 (7 bytes)
170
bDescriptorType          : 0x05 (Endpoint Descriptor)
171
bEndpointAddress         : 0x82 (Direction=IN EndpointID=2)
172
bmAttributes             : 0x03 (TransferType=Interrupt)
173
wMaxPacketSize           : 0x0040 (64 bytes)
174
bInterval                : 0x0A (10 ms)
175
Data (HexDump)           : 07 05 82 03 40 00 0A                              ....@..
176
177
        ---------------- Interface Descriptor -----------------
178
bLength                  : 0x09 (9 bytes)
179
bDescriptorType          : 0x04 (Interface Descriptor)
180
bInterfaceNumber         : 0x01
181
bAlternateSetting        : 0x00
182
bNumEndpoints            : 0x02 (2 Endpoints)
183
bInterfaceClass          : 0x0A (CDC-Data)
184
bInterfaceSubClass       : 0x00
185
bInterfaceProtocol       : 0x00
186
iInterface               : 0x00 (No String Descriptor)
187
Data (HexDump)           : 09 04 01 00 02 0A 00 00 00                        .........
188
189
        ----------------- Endpoint Descriptor -----------------
190
bLength                  : 0x07 (7 bytes)
191
bDescriptorType          : 0x05 (Endpoint Descriptor)
192
bEndpointAddress         : 0x01 (Direction=OUT EndpointID=1)
193
bmAttributes             : 0x02 (TransferType=Bulk)
194
wMaxPacketSize           : 0x0040 (64 bytes)
195
bInterval                : 0x00 (ignored)
196
Data (HexDump)           : 07 05 01 02 40 00 00                              ....@..
197
198
        ----------------- Endpoint Descriptor -----------------
199
bLength                  : 0x07 (7 bytes)
200
bDescriptorType          : 0x05 (Endpoint Descriptor)
201
bEndpointAddress         : 0x81 (Direction=IN EndpointID=1)
202
bmAttributes             : 0x02 (TransferType=Bulk)
203
wMaxPacketSize           : 0x0040 (64 bytes)
204
bInterval                : 0x00 (ignored)
205
Data (HexDump)           : 07 05 81 02 40 00 00                              ....@..
206
207
    ----------------- Device Qualifier Descriptor -----------------
208
Error                    : ERROR_OPERATION_ABORTED
209
210
      -------------------- String Descriptors -------------------
211
none

von Thomas Z. (usbman)


Lesenswert?

Was soll bcdCDC = 10.01 sein? USB ist LSB First. Der Deskriptor ist 
falsch. Das soll wohl 1.10 sein. Bytes vertauscht. Wenn kein Strings 
Support vorhanden ist sollte die StrId auf 0 gesetzt werden.

Thomas

von Mike T. (miket)


Lesenswert?

Hi,
Stimmt, das steht in der cdcdf_acm_desc.h, die Atmel Start exprtiert hat 
in Zeile 82 falsch drin. Ich habe dort  USB_CDC_HDR_DESC_BYTES(0x1001) 
durch  USB_CDC_HDR_DESC_BYTES(0x0110) ersetzt, jetzt stehts auch im 
USBTreeView :
1
bcdCDC                   : 0x110 (CDC Version 1.10)
Jetzt hab ich auch noch Strings eingestellt, ändert aber alles nichts am 
Verhalten.

von d511 (Gast)


Lesenswert?

Der D51 ist auch im ASF4 nicht voll unterstützt. Die höchste HAL Schicht 
fehlt komplett, zumindest Stand vor 6 Monaten.

Laut den Microchip Leuten wird das auf MPLABX umgezogen.

Ich bin dann zu STM gegangen. Die kack AtmelStart Website ist von allen 
vergleichbaren Tools (CubeMX etc.) die schlechteste.

Vom Preis/Leistung scheint der SAMD5x aber unschlagbar.
Es gibt übrigens von Adafruit praktische Evalboards mit dem D51.

von Thomas Z. (usbman)


Lesenswert?

Mike T. schrieb:
> Jetzt hab ich auch noch Strings eingestellt, ändert aber alles nichts am
> Verhalten
Das habe ich auch nicht erwartet. Ist mehr ein formales Ding.

Ich bin mir nicht 100% sicher aber ich glaube CDC fordert Compount 
Descriptoren.
Zumindest steht es so in USB Complete von Jan Axelson. Ich würde deshalb 
bcdUSB auch auf 1.1 setzen. Dann sind die Compount Descriptoren auf 
jedenfall nicht notwendig. Da dein Chip vermutlich sowieso nur Fullspeed 
kann ist 2.0 nicht notwendig.

Thomas

von Mike T. (miket)


Lesenswert?

Jep, aber in MPlab (Harmony3) funktionierts auch nicht richtig.
Das Adafruit-Teil hab ich schon gesehen. Leider nur für Arduino und 
µPhython und beides ist für meine Aufgabe nicht geeignet. Habe von denen 
aber z.B. den Bootloader bei mir Flashen können, daher weiß ich, dass 
meine USB zumindest hardwaremäßig ok sind.

von Thomas Z. (usbman)


Lesenswert?

Dein USB funktioniert sonst würdest du nichts in UsbView sehen. Der 
nächste Schritt wäre jetzt die Control requests näher anzuschauen.
Du sagst ja dass SetLineCoding usw supported wird.

Thomas

von Rudolph (Gast)


Lesenswert?

d511 schrieb:
> Laut den Microchip Leuten wird das auf MPLABX umgezogen.

Hmm, okay, dann werde ich mit dem E51 wohl eher kein USB machen.

von Mike T. (miket)


Lesenswert?

Rudolph schrieb:
> d511 schrieb:
>> Laut den Microchip Leuten wird das auf MPLABX umgezogen.
>
> Hmm, okay, dann werde ich mit dem E51 wohl eher kein USB machen.

Beim E51 müsste das eigentlich alles sehr ähnlich sein. Im MPLab hab ich 
aber schonmal das Problem, dass der Atmel-ICE zwar erkannt wird, aber 
als noch nicht richtig unterstützt nicht auswählbar anzeigt. Zudem 
stürzte das Harmony-Fenster mit irgendeiner Filenotfound-Meldung ab, als 
ich das Projekt öffnen wollte.

von Rudolph R. (rudolph)


Lesenswert?

Mike T. schrieb:
> Im MPLab hab ich aber schonmal das Problem, dass der Atmel-ICE zwar
> erkannt wird, aber als noch nicht richtig unterstützt nicht auswählbar anzeigt.

Und ich habe keinen Bock für MPLAB-X meine Projekte zu portieren, nur 
weil irgendeinen Witzbold bei Microchip auf die Idee gekommen ist die 
Includes komplett über den Haufen zu werfen - und zwar ohne erkennbaren 
Mehrwert.
Wenn ich für USB mit dem E51 quasi zwangsläufig MPLAB-X benötige, dann 
eben kein USB, zumal ja nicht mal ansatzweise abzusehen ist, wann der 
ATSAM Support im MPLAB-X überhaupt halbwegs funktioniert.

Andere Hersteller werden schon noch mit vergleichbaren Automotive 
Controllern auf den Markt kommen die CAN-FD unterstützen, wenn Microchip 
schon nichts besseres zu tun hat als die Kunden zu vergraulen.
Und da graust es mir vor allem auch vor den XC Compilern die kostenlos 
kastriert sind und nicht gewerblich genutzt werden dürfen.
Wer weiss schon, wie lange man die Atmel-Studio GCCs noch mit MPLAB-X 
benutzen kann...

von Mike T. (miket)


Lesenswert?

Hey, gerade habe ich mehr durch Zufall noch etwas herausgefunden :
Wenn ich das USB-Kabel an einen anderen Port am Rechner anstecke (der 
virtuelle COM-Port bekommt dann eine andere Nummer), dann funktioniert 
es. Das Echo-Beispiel schickt dann das gesendete zurück. Nach Reset oder 
an. und ausstecken am selben Port geht es wieder nicht mehr. Erst wenn 
man wieder in einen anderen Port geht es wieder ein mal.
Die Platine wird vom USB versorgt, wird also genauso resettet egal ob es 
ein anderer oder gleiche USB-Port ist, also was ist dann der Unterschied 
?

von Thomas Z. (usbman)


Lesenswert?

Das ist ganz einfach es funktioniert nur genau einmal wenn der Treiber 
neu installiert wird deine Requests sind am A... Bau ordentliche 
Funktionen für Set/GetLineCoding ein und es wird immer gehen.
Nähere Infos findest du in der CDC Spec die übrigens bei 1.2 steht.

Thomas

: Bearbeitet durch User
von Mike T. (miket)


Lesenswert?

Thomas Z. schrieb:
> Das ist ganz einfach es funktioniert nur genau einmal wenn der Treiber
> neu installiert wird deine Requests sind am A... Bau ordentliche
> Funktionen für Set/GetLineCoding ein und es wird immer gehen.
> Nähere Infos findest du in der CDC Spec die übrigens bei 1.2 steht.
>
> Thomas
Genau um so etwas nicht machen zu müssen gibt es ASF.

von Thomas Z. (usbman)


Lesenswert?

Mike T. schrieb:
> Genau um so etwas nicht machen zu müssen gibt es ASF.

Gut hilft dem TO aber nicht da dieses ASF ja bei ihm nicht Out of the 
Box funktioniert.
Ich kenn das Verhalten was der TO beschreibt, von unvollständigen CDC 
Implementierungen.

Thomas

von Mike T. (miket)


Lesenswert?

Thomas Z. schrieb:
> Gut hilft dem TO aber nicht da dieses ASF ja bei ihm nicht Out of the
> Box funktioniert.
Ja, aber der Hinweis auf eine 120seitige Spec mit 12 Seiten Errata hilft 
ebenso wenig. Denn damit den Fehler in dem verschachtetel 
Atmel-Quellcode zu finden ist hoffnungslos.

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.