Forum: Mikrocontroller und Digitale Elektronik SAMB11 (Cortex-M0) schläft nicht


von Marcel D. (diablokiller999)


Angehängte Dateien:

Lesenswert?

Hi Leute!
Ich habe ein merkwürdiges Problem mit meinem Cortex-M0 Controller, er 
will einfach nicht schlafen.
Habe ein Example von ATMEL genommen und es modifiziert, so dass die LED, 
welche erst durch den Interrupt leuchten soll, direkt nach dem sleep 
eingeschaltet wird um so zu überprüfen, ob der Timer die LED leuchten 
lässt (und der Controller somit schläft) oder es gar keinen Schlaf gibt.
Wie sich zeigt, leuchtet die LED aber sofort und nicht erst nach 10 
Sekunden.
Laut Example schickt das WFI-Command den Controller in den Sleep-Modus.
Jemand eine Idee, woran das liegen könnte?

von Jim M. (turboj)


Lesenswert?

Schau mal im Family Manual nach wieviele Bits der Timer überhaupt hat. 
Atmel knausert da gerne mal, ich kenne viele Cortex M0 die nur 
16-bittige Timer haben. Und nein, ich schaue jetzt nicht selber nach.

von Sepp aus Hintertupfing (Gast)


Lesenswert?

Marcel D. schrieb:
> Hi Leute!
> Ich habe ein merkwürdiges Problem mit meinem Cortex-M0 Controller, er
> will einfach nicht schlafen.

Hast du es schon mit Akkupunktur in den verschiedenen Control Register
versucht ;-)
Eine Landkarte  für die Punkte gibt es im Reference Manual.
Da bin ich mir sicher :-)

von Marcel D. (diablokiller999)


Lesenswert?

Sepp aus Hintertupfing schrieb:
> Eine Landkarte  für die Punkte gibt es im Reference Manual.
> Da bin ich mir sicher :-)

Ist ja das Problem, es gibt kein Reference Manual dafür, hat Atmel nie 
released, zumindest keines mit Registerbeschreibungen und da liegt auch 
der ganze Ärger mit dem Controller, den ich zur Zeit habe. Habe es schon 
mit dem Deepsleep im SCR-Register über die CMSIS probiert, selbst darauf 
schlägt er nicht an. Beim WFE-Command ist es das Gleiche.

> Schau mal im Family Manual nach wieviele Bits der Timer überhaupt hat.
Der AON Sleep Timer scheint 32Bit zu haben soweit ich das sehen kann, 
steht zumindest so im Datasheet Seite 28 
(http://www.atmel.com/Images/Atmel-42426-SmartConnect-SAMB11-SOC_Datasheet.pdf). 
Es kommt auch kein Interrupt, der WFI-Befehl wird einfach übersprungen. 
Selbst in einem Programm ohne Timer, nur mit dem WFI-Befehl und einer 
sich einschaltenden LED wird der WFI-Befehl übersprungen. Der Timer 
funktioniert dabei anstandslos, der Interrupt kommt nach den von mir 
eingestellten 10Sek und schaltet mir die LED ein.

von Jim M. (turboj)


Lesenswert?

Marcel D. schrieb:
> Ist ja das Problem, es gibt kein Reference Manual dafür, hat Atmel nie
> released, zumindest keines mit Registerbeschreibungen und da liegt auch
> der ganze Ärger mit dem Controller, den ich zur Zeit habe. Habe es schon
> mit dem Deepsleep im SCR-Register über die CMSIS probiert, selbst darauf
> schlägt er nicht an. Beim WFE-Command ist das Gleiche.

Du hättes mal dazu scheiben sollen, das das so ein Bluetooth Low Energy 
Dingens ist. Da gibt es reichlich zu beachten in Hardware und Software.

Ich empfehle NRF51/NRF52 von Nordic, da gibt es wenigstens vernünftige 
Doku zu.

von Marcel D. (diablokiller999)


Lesenswert?

Das Interessante ist ja, dass nicht mal ein Atmel-Example funktioniert. 
Habe schon in der ASF n Bugreport dazu gemacht, bis jetzt kümmert sich 
da niemand drum.

Jim M. schrieb:
> Ich empfehle NRF51/NRF52 von Nordic, da gibt es wenigstens vernünftige
> Doku zu.

Klingt an sich ganz geil (muss ich nur n neues Devboard besorgen).
Ist die IDE/Compilersuite dazu kostenlos oder so ein Bullshit wie bei 
TI?
Ist die Erstellung eigener BTLE-Services simpel? Bei Atmel ist das alles 
tief in der API versteckt und total undurchsichtig :-/

Habe auch schon einen Blick auf den Blue Gecko geworfen, habe mit Silabs 
bis jetzt gute Erfahrungen gemacht, vor allem weil einem in den 
Supportforen geholfen wird - bei Atmel habe ich schon 6 Threads eröffnet 
und auf keinen eine Antwort erhalten, der Atmel Support-Bereich ist seit 
Wochen nicht erreichbar.

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.