Hallo, ich liebäugle mit diesem Board von dem Verkäufer. Arm Cortex M3 CPU. Bin bisher ARM7 TDMI geschädigt und meine gelesen zu haben, dass das Programmiermodell der Cortex Mx einfacher ist, nur noch Thumb Befehlssatz, und sogar eine standardisierte HAL (Layer 1)existiert CMSIS, die die Peripherie auf C-Strukturen mapped, so dass das Programmieren der Hardware etwas einfacher wird. http://www.ebay.de/itm/NEU-NXP-ARM-Cortex-M3-LPC1768-Development-Board-3-2-TFT-LCD-Module-64KB-SRAM-/320942666451?pt=Wissenschaftliche_Ger%C3%A4te&hash=item4ab9ac72d3 Was brauche ich noch alles (nur Freeware!), um loslegen zu können? Ich habe noch einen Olimex Wiggler (USB) um die JTAG anzusprechen, den brauche ich also nicht, JTAG ist JTAG denke ich mal. Wie siehts mit der Programmierumgebung aus und welchen Compiler muss ich in diese installieren? GCC? Meine Lizenz für Rowley Crossworks ist leider älter von 2004 und hat die Cortex Familie nicht drin. Aber Singlestep Debugging, schön mit Leuchtbalken und Watchfenstern etc sollte möglich sein.
Wenn Du mit den LPC's liebaeugelst, kauf Dir vorab einen mbed, da ist alles dabei was Du brauchst und Du bekommst access zu einem online Compiler und den ganzen Lib's von NXP. Danach kannst Du Dir dann das ebay board kaufen und den mbed als Programmer benutzen.
Ihhh..... der sieht ja aus wie ein Arduino Nano :-( 56 Euro bei Watterod, Wucher! Nee, zu wenig Speck dran, kann man ja nichts mit machen ohne Targethardware. Sehe aber grad auf der mbed Seite, dass die das Sorglos Paket da zum Download anbieten.... aber "Online Compiler".... nee, ich möchte den GNU CC haben.
Hallo; zum Thema Programmierumgebung:siehe mal unter CooCox / CooIde: http://www.coocox.org/index.html
Ich spiel auch mit dem Gedanken mir sowas zuzulegen. GCC-Toolchain kannst du hiermit ganz einfach aus den Quellen selber bauen: http://crosstool-ng.org/ Ich hab gerade damit eine für den Raspberry Pi gebaut. Funktioniert sehr komfortabel.
Noch komfortabler ist es eine Toolchain fertig downzuloaden: https://launchpad.net/gcc-arm-embedded Schau im Wiki unter STM32: GCC und STM32: Programmierung, das ist zwar für die STM32 Controller aber das Software-Setup ist das selbe, da auch Cortex-M3/4F.
Wenn's auch was anderes sein darf... Silicon Labs hat eine sehr gute, kostenlose Entwicklungsumgebung für ihre Cortex-M3 (leider noch nicht für die von Energy Micro übernommenen) http://www.silabs.com/products/mcu/Pages/32-bit-mcu-software.aspx#suite Cypress für die PSoCs ebenso http://www.cypress.com/?id=2494
Danke für die ganze Tipps und Links !!!!! Super! Glaube Coocox wäre was für mich...
Dann muss ich doch etwas weiter ausholen. Christian J. schrieb: > Ihhh..... der sieht ja aus wie ein Arduino Nano So ist er auch zu verstehen. USB Kabel anstoepseln und loslegen, nichts weiter erforderlich. Keine Compiler zu bauen oder IDE's anpassen. Keine Datenblaetter lesen. Der ideale Einstieg. >:-( 56 Euro bei > Watterod, Wucher! Nee, zu wenig Speck dran Der Preis beim mbed kommt nicht von der Hardware, sondern vom Zugriff auf den online compiler und die Community dahinter. Das was da zum Download steht, ist nur die mbed lib, nicht die Libs der Community. Mit den Libs der Community, einem mbed, dem online compiler und einem MagJack hast Du in 3 min einen Webserver am laufen. Das gilt nicht nur fuer einen Webserver sondern fuer alles erdenkliche was man mit einem uC machen kann. Im Klartext soll das heissen, die Infos an die man durch den mbed kommt wiegen den ++Preis tausend mal auf. In der mbed community hab ich auch geschrieben wie man eclipse mit dem gcc und den mbed libs auf einem PC zum laufen bekommt ohne den online compiler zu benutzen. Wenn Du Dich dann mit dem mbed in die Materie eingearbeitet hast, kannst Du Dir ein richtiges DevBoard mit viel Speck kaufen oder bauen und der mbed dient Dir immer noch als Programmer/Debugger. Am Ende sei noch erwaehnt, dass ich inzwischen von den LPC's ein wenig abgekommen bin und mehr mit den STM32's mache. Spezielle Gruende dafuer sind das es mir leichter faellt die STM RM's zu lesen und zu verstehen als die von NXP und das es mehr allgemeine Informationen zu den STM32's im Netz gibt als zu den LPC's. Der mbed bleibt aber als "rapid prototyping plattform" ungeschlagen.
Juergen G. schrieb: > So ist er auch zu verstehen. ... > Keine Datenblaetter lesen. > Der ideale Einstieg. Ah ja. Da hat einer den Eingang zum Schlaraffenland entdeckt. Nur Preis. Kein Fleiß. Na denne. W.S.
W.S. schrieb: > Ah ja. Da hat einer den Eingang zum Schlaraffenland entdeckt. > > Nur Preis. > Kein Fleiß. Nicht "einer", tausende naemlich alle die die mit Arduino anfangen. NXP nennt es nur anders, da heisst es "rapid prototyping"
Oder ein Tiva Board für 12$ bei Texas Instruments bestellen. IDE ist dann Eclipse basierend zum Download. Spricht aber nichts gegen einen Umstieg auf einen GCC Compiler. Die low Level Treiber findet man bei TI unter TivaWare
Juergen G. schrieb: > Dann muss ich doch etwas weiter ausholen. Danke Dir erstmal für deine ausführlichen Ausführungen. Klar, die Infos sind wichtig, wüsste heute gar nicht mehr wie ich ohne Internet entwickeln sollte aber in den 90igern ging das auch, man ging eben in eine Bücherei oder Buchladen. Derzeit bin ich noch Arduino verseucht, werde das erstmal auf Eclipse umdoktorn, da die einfache Shell bereits ausgereizt ist und ich "richtig" programmieren möchte. Da das Physical computing spannender ist als zb das was man mit einem Rasbperry machen kann will ich das auch mit dem Cortex weiter verfolgen, also Hobbyanwendungen (echte habe ich nicht), die was machen, tun, sich bewegen, messen usw. Und ich hoffe das schaut dann genauso schick aus wie mein Ardunio Testbrett :-) Gruss, Christian
whao, so aufgeraeumt siehts auf meinen Steckbrettern nie aus. @Christian J. meld Dich mal an, dass ich Dir eine PN senden kann Ju
You call this a Steckbrett? That's not a Steckbrett. This is a Steckbrett! Ich hab hier u.a. zwei DUE um damit am CAN-Bus rumzuspielen. Die Dinger sind eigentlich nicht ganz billig aber ich habe die paar Euro mehr im Vergleich zu STM ooder NXP nicht bereut, denn die auf Visual Studio basierende IDE ist Gold gegen alles was ich bisher so sah. Intellisense, Codevervollständigung und eingebautes Terminal funktionieren fehlerfrei. Ehrlich, dagegen ist das Netbeans-Zeug von Microchip die reinste Seuche.
Yeah, that comes very closed to how it looks on my desk while developing a system. Das mit der IDE ist Geschmackssache.
Joachim ... schrieb: > denn die auf Visual Studio > basierende IDE ist Gold gegen alles was ich bisher so sah. Intellisense, > Codevervollständigung und eingebautes Terminal funktionieren fehlerfrei. Witzig, viele andere fluchen genau darüber... Glücklicherweise hängt Intellisense etc. nicht von der Ziel-Plattform ab, das kann man auch für die STM32 etc. zweckentfremden. Oder eclipse nehmen, das kann das nämlich auch alles ganz wunderbar. Die STM32 Dev-Boards sind nicht nur billiger, sondern auch leistungsfähiger...
@Kindergärtner Pssstttt, damit trittst Du eine Lawine los. Nichts von Goethes Zauberlehrling gelernt?
Joachim ... schrieb: > This is a Steckbrett! Jo, damit kannste dich bei "Fingers elektzrische Welt bewerben" aber mehr auch nicht. Perfektion ist angesagt und Dokumentation damit ich den Ramsch auch 3 jahre später noch verstehe. Gilt natürlich auch im Code.... ;-)
1 | ////////////////////////////////////////////////////////////////////////////////////
|
2 | /*
|
3 | Funktion: CalcSonnenAufgang()
|
4 | Modul : rtc_user.c
|
5 | --------------------------------------------------------------------------------
|
6 | Beschreibung : Berechnet den Sonnenaufgang und Untergang
|
7 | |
8 | Zeitgleichung: WOZ - MOZ = -0.171*sin(0.0337 * T + 0.465) - 0.1299*sin(0.01787 * T - 0.168)
|
9 | Deklination = 0.4095*sin(0.016906*(T-80.086))
|
10 | Zeitdifferenz = 12*arccos((sin(h) - sin(B)*sin(Deklination)) / (cos(B)*cos(Deklination)))/pi;
|
11 | Sonnenaufgang h=-50 Bogenminuten = -0.0145
|
12 | |
13 | Aufgang Ortszeit = 12 - Zeitdifferenz - Zeitgleichung
|
14 | Untergang Ortszeit = 12 + Zeitdifferenz - Zeitgleichung
|
15 | |
16 | Aufgang = Aufgang Ortszeit - geographische Länge /15 + Zeitzone
|
17 | Untergang = Untergang Ortszeit - geographische Länge /15 + Zeitzone
|
18 | |
19 | aufgerufene Funktionen :
|
20 | Eingabeparameter : ptr (Zeiger auf aktuelle Zeit für Sommerzeit)
|
21 | sonne (Zeiger auf Ergebnisstruktur
|
22 | T (Tag des Jahres)
|
23 | Rückgabe : -
|
24 | veränderte Globals : SAG_Std,SAG_Min, SUG_Std,SUG_Min
|
25 | öffentlich/private : öffentlich
|
26 | |
27 | Autor: Christian J.
|
28 | letzte Änderung: 20.2.2005
|
29 | */
|
30 | ////////////////////////////////////////////////////////////////////////////////////
|
31 | |
32 | |
33 | uint8_t CalcSonnenAufgang(zeit_t *ptr, struct sonnenstand *sonne, uint16_t T) |
34 | {
|
35 | #define hoehe -0.0145 // Sonnenhöhe in RAD
|
36 | #define PI 3.141592654
|
37 | |
38 | float B, |
39 | Deklination, // Deklination der Sonne |
40 | Zeitdiff, // Zeitdifferenz |
41 | DIFF_WOZ_MOZ, |
42 | Aufgang_MOZ, // Aufgang mittlere Ortzeit |
43 | Untergang_MOZ, // Aufgang mittlere Ortszeit |
44 | Aufgang_WOZ, // Aufgang wahre Ortszeit |
45 | Untergang_WOZ; // Untergang wahre Ortszeit |
46 | |
47 | static uint16_t oldvalue = 0; |
48 | |
49 | |
50 | // Prüfen, ob Berechnungen für aktuellen Tag bereits vorliegen
|
51 | |
52 | if (oldvalue == T) |
53 | return 1; |
54 | |
55 | oldvalue = T; |
56 | |
57 | // Berechnungen
|
58 | B = PI *N_BREITE / 180; |
59 | Deklination = 0.4095*sin(0.016906*(T-80.086)); |
60 | Zeitdiff = 12*acos((sin(hoehe) - sin(B)*sin(Deklination)) / (cos(B)*cos(Deklination)))/PI; |
61 | DIFF_WOZ_MOZ = -0.171*sin(0.0337*T+0.465) - 0.1299*sin(0.01787*T-0.168); // WOZ-MOZ |
62 | |
63 | Aufgang_MOZ = 12 - Zeitdiff - DIFF_WOZ_MOZ; |
64 | Untergang_MOZ = 12 + Zeitdiff - DIFF_WOZ_MOZ; |
65 | |
66 | Aufgang_WOZ = Aufgang_MOZ + (15 - O_LAENGE)*(float)4/60; |
67 | Untergang_WOZ = Untergang_MOZ + (15 - O_LAENGE)*(float)4/60; |
68 | |
69 | |
70 | // Sommerzeit berücksichtigen
|
71 | if (IsSommerzeit(ptr)) { |
72 | Aufgang_WOZ = Aufgang_WOZ + 1; |
73 | Untergang_WOZ = Untergang_WOZ + 1; |
74 | }
|
75 | |
76 | // globale Float Werte setzen
|
77 | sonne->f_SAG = Aufgang_WOZ; |
78 | sonne->f_SUG = Untergang_WOZ; |
79 | sonne->f_Tagdauer = sonne->f_SUG - sonne->f_SAG; |
80 | |
81 | // Umrechnung in Stunden/Minuten
|
82 | |
83 | sonne->SAG_Std = floor(Aufgang_WOZ); // Sonnenaufgang |
84 | sonne->SAG_Min = (Aufgang_WOZ - (float)sonne->SAG_Std) * 60; |
85 | |
86 | sonne->SUG_Std = ceil(Untergang_WOZ)-1; // Sonnenuntergang |
87 | sonne->SUG_Min = (Untergang_WOZ - (float)sonne->SUG_Std) * 60; |
88 | |
89 | return 1; |
90 | }
|
Das Steckbrett erinnert mich an das .... MP3 Decoder mit UKW Sendereinheit für den privaten Rundfunk auf nem "Finger" Treffen. Der blaue Kondensator koppelt wohl das Audiosignal des DAC auf de Modulation der HF Stufe....
Preisgünstiger geht es hier zu: http://www.ebay.com/sch/haoyu_electronics/m.html?rt=nc Ein Webserver in 10 min ging damit: http://www.ebay.com/itm/NXP-ARM-Cortex-M3-LPC1768-Mini-DK2-Development-board-2-8-SPI-Interface-TFT-LCD-/181045429910?pt=LH_DefaultDomain_0&hash=item2a27260696 auch. Lieferzeit ca. 7 Tage Beim LCD kann man zwischen SPI und 16 Bit-Parallelinterface wählen.
Juergen G. schrieb: > Nicht "einer", tausende naemlich alle die die mit Arduino anfangen. Oh ja. Das werden dann die Chefentwickler von morgen. (Grund: ab einer gewissen Position baucht man nur noch einen Finger...) W.S.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.