Forum: PC-Programmierung c / c++ / c# auf Atom CPU


von rick new (Gast)


Lesenswert?

hallo forum,

möchte auf einem embedded mini - itx eine Windwows Applikation 
programmieren.
Ich habe an WinCE gedacht. CPU ist zum Beispiel ein AtomZ530. Ein Board 
habe ich schon gefunden. Ich bekomme es mit mit installierten WinCE und 
allen Treibern.

Benötige ich für das Visual Studio (2005 / 2010) noch eín spezielles SDK 
damit ich die Applikation entwickeln und debuggen kann?
Wenn ja, wo bekomm ich das her?

Ich weiss, sind Basics, habe aber nichts in Netz gefunden.

Danke für eure Hilfe.

Rick

von Christian B. (casandro)


Lesenswert?

Du auf dem Atom kannst Du auch ein normales Windows drauf tun und ganz 
normal entwickeln. Das ist ja das Elegante an einer x86 Architektur.

Aber bei so grundlegenden Fragen würde ich erstmal mit Linux anfangen. 
Da ist die Entwicklung deutlich weniger frustrierend.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

rick new schrieb:
> Benötige ich für das Visual Studio (2005 / 2010) noch eín spezielles SDK
> damit ich die Applikation entwickeln und debuggen kann?

Ja, Du brauchst die Programmierunterstützung für Windows CE. Windows CE 
kann keine normalen Windows-Binaries ausführen.

> Wenn ja, wo bekomm ich das her?

Von Microsoft.


Allerdings: Warum willst Du ausgerechnet auf normaler PC-Hardware 
Windows CE laufen lassen? Besser geeignet (weil unkomplizierter, 
vertrauter und binärkompatibel) wäre XPe.

von ole (Gast)


Lesenswert?

Christian Berger schrieb:
> Aber bei so grundlegenden Fragen würde ich erstmal mit Linux anfangen.
> Da ist die Entwicklung deutlich weniger frustrierend.
Ohne Grafik wäre Linux okay, aber mit X und dann der msitige 
US15W-Grafikchipsatz, na dann lieber ein anderes Board mit ohne Atom 
Z5XX-CPU.

von rick new (Gast)


Lesenswert?

Hallo miteinander,

Danke für Eure Antworten.
Grund für Windows CE: ein gekaufter EtherCAT Master garantiert nur unter 
WinCE Echtzeit (Windows Embedded Compact 7.0 geht auch).

Für XPembedded müsste eine Echtzeiterweiterung gekauft werden (z.B.: 
INtime). Dafür musst du dann wieder extra Lizenzkosten zahlen. Darum 
WinCE.

Die Applikation sollte auf einem Echtzeit Ethercatmaster aufbauen.

lg rick

von Christian B. (casandro)


Lesenswert?

Entschuldigung, aber Du willst industrielle Steuerung in Echtzeit über 
Ethernet und mit Windows machen? Tut mir Leid, aber davon muss ich Dir 
bei Deinem Kenntnisstand abraten. Das mag vielleicht einfach aussehen 
ist aber etwas, was ich ohne jahrzehntelange wirklich tief gehende 
Erfahrung nicht versuchen würde.

Also setzt Dich bitte zunächst erst mal mit folgenden Themen 
auseinander:
Ethernet (dann wirst Du übrigens schon mal feststellen, dass darüber 
Echtzeit eigentlich nicht geht)
Netzwerksicherheit
C/C++ Programmierung (wirklich lernen, kein "Lerne C/C++ in 2000 Tagen" 
Schellkurs!)
Windows (kein billiger MSCE Kurs, sondern die ganze Geschichte mit 
Systemarchitektur seit Windows 3.0 und der kompletten API)

Das ist alles hoch komplex. Alleine Windows XP hat 40 Millionen 
Codezeilen. Die Embedded Versionen haben sicherlich auch nicht viel 
weniger. Das zu beherrschen ist eine gigantische Aufgabe.

Was dabei herauskommt, wenn man das nicht kann, hast Du ja hoffentlich 
bei Stuxnet gesehen.

von Arc N. (arc)


Lesenswert?

Christian Berger schrieb:
> Entschuldigung, aber Du willst industrielle Steuerung in Echtzeit über
> Ethernet und mit Windows machen?

Dazu ist Windows CE gedacht.
http://www.scribd.com/doc/47474118/Independent-Real-Time-Report-for-Windows-Embedded
http://www.intel.com/content/dam/doc/case-study/industrial-solutions-with-ce-6-and-atom.pdf
(warum Intel für den Atom die selben Timings wie für einen Pentium 200 
MMX angibt, wäre mal interessant zu erfahren...)

> Windows (kein billiger MSCE Kurs, sondern die ganze Geschichte mit
> Systemarchitektur seit Windows 3.0 und der kompletten API)

Windows CE ist nicht XPe(mbedded). Die Systemarchitektur ist heute eine 
völlig andere, nur das API ist mehr oder weniger gleich geblieben.

> Das ist alles hoch komplex. Alleine Windows XP hat 40 Millionen
> Codezeilen. Die Embedded Versionen haben sicherlich auch nicht viel
> weniger. Das zu beherrschen ist eine gigantische Aufgabe.

Nochmal, es geht um CE, nicht um XP.
Quelltext gibt's hier:
http://www.microsoft.com/windowsembedded/en-us/downloads/download-windows-embedded-compact-ce.aspx
http://www.microsoft.com/windowsembedded/en-us/downloads/download-windows-embedded-ce6.aspx

> Was dabei herauskommt, wenn man das nicht kann, hast Du ja hoffentlich
> bei Stuxnet gesehen.

Was hat Stuxnet (http://de.wikipedia.org/wiki/Stuxnet) damit zu tun? Das 
was da gemacht wurde, ist auf (fast) jedem Betriebssystem möglich.

von JojoS (Gast)


Lesenswert?

Wenn der HW Lieferant ein BSP (Board Support Package) mitliefert ist es 
ziemlich einfach. Früher gab es eigene Compilerversionen für CE, heute 
müsste das im VS drin sein (oder über Plugin nachrüstbar). Es gibt aber 
auf der MS Embedded Seite Tutorials und Videos, such erstmal danach.
@Christian: EtherCAT ist nicht Ethernet, deshalb ist hier Echtzeit 
garantiert. Gruselig wird nur das Thema Safety SPS...

von Bartli (Gast)


Lesenswert?

C# macht echt keinen Spass auf Windows CE, schon nur deshalb weil das 
.NET Compact Framework teilweise an den bescheuertsten Stellen 
abgespeckt ist.

>Benötige ich für das Visual Studio (2005 / 2010) noch eín spezielles SDK
>damit ich die Applikation entwickeln und debuggen kann?
>Wenn ja, wo bekomm ich das her?

Du brauchst Visual Studio 2005 / 2008 Professional. 2010 unterstützt 
keine Smart Devices (so nennt das Microsoft halt).

Weiter müsste dir der Boardhersteller ein SDK für dein Board liefern. 
Dort drin sind in erster Linie Windows CE Header die an das OS deines 
Boards angepasst sind (oder es sein sollten).

von Bartli (Gast)


Lesenswert?

> Ohne Grafik wäre Linux okay, aber mit X...

Wozu X? Qt oder was auch immer auf fbdev und los geht's.

von Zwie B. (zwieblum)


Lesenswert?

Mei, rennt der Stuxnet-Hoax wieder frei rum?

Abgesehen davon, dass es den TE nicht interessiert, aber wo ist das 
Problem bei X?

von Bartli (Gast)


Lesenswert?

Ja, ein bisschen Ressourcen braucht X halt schon...je nachdem halt 
zuviel.

Wenn du ein Gerät baust, auf welchem zum Schluss nur eine einzige 
Applikation fullscreen läuft dann sitz auf den Framebuffer und gut ist.

von ole (Gast)


Lesenswert?

Zwie Blum schrieb:
> Abgesehen davon, dass es den TE nicht interessiert, aber wo ist das
> Problem bei X?

Bartli schrieb:
> Ja, ein bisschen Ressourcen braucht X halt schon...je nachdem halt
> zuviel.
Die Ressourcen sind weniger ein Problem, wenn genug RAM da ist, kann der 
Atom das schon.

An Bartli und Zwie Blum:
Das es keinen vernünftigen Treiber für X beim US15W gibt. Es gibt einen 
geschlossenen, der nicht weiterentwickelt wird und nur bei Prä-KMS 
Linux-Kerneln funktioniert oder EMGD, den gibt es bei Intel und der 
läuft aber nur mit bestimmten Xorg- und Kernel-Versionen. Getestet wird 
der nur für MeeGo und (alten) Fedora-Versionen.

Um es deutlich zu sagen, irgendwie geht es, man hat aber viele 
Einschränkungen. Wenn man nicht muss, lässt man es und holt sich was 
anderes mit einem anderen Grafikchipsatz.
Um ein Zeichen für Intel zu setzen, am besten keinen von Intel.

Intel hat den damals schön angepriesen und eine Ubuntu-Version 
funktionierte damit auch gut. Danach ging es nur noch abwärts, 
mittlerweile gibt es bei Ubuntu in PPAs ein paar Lösungsansätze, aber 
als ich vor einem halben Jahr dran war, war das auch alles nichts Halbes 
und nichts Ganze. Zumal ich die PPA-Software nicht als Lösung für die 
Industrie ansehe.
Der 3.0er soll mit dem psb-gfx und dem fbdev halbwegs funktionieren, 
habe ich aber nie getestet.

Bartli schrieb:
>> Ohne Grafik wäre Linux okay, aber mit X...
> Wozu X? Qt oder was auch immer auf fbdev und los geht's.
Kann der fbdev den Widescreen? Ansonsten ging der und auch Vesa, aber 
halt nie mit Widescreen. War damals so ein Ding für einen Kunden, der 
einen Widescreener in Hochformat wollte, okay, drehen geht nur mit fbdev 
aber die Auflösung hat der nie gekonnt. Da habe ich dann eine alte 
EMGD-Version mit Debian 6.0.1a eingerichtet. Wie gesagt, es geht, aber 
mit, selbst für Linux, vielen Einschränkungen.
Auch mit xorg.conf habe ich es seinerzeit nicht hinbekommen, mit uvesafb 
konnte ich sogar der Shell Widescreen bei bringen, aber wenn X kam, 
zack, war wieder alles verzehrt.

von Zwie B. (zwieblum)


Lesenswert?

Ich hab' hier X11 auf 64 und 32 MB laufen (ARM, aber das ist ziemich 
egal), Debian ist da ein 'bischen' zäh, aber buildroot baut eine sehr 
schnelle Umgebung. Deshalb meine Fragm wo das Problem bei X liegen soll.

Das mit dem Inteltreiber ist ja leider die alte Marketinggeschichte bei 
Consumerprodukten, eary adopters können sich (wie immer) in den A... 
beissen ;-)

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.