Forum: Mikrocontroller und Digitale Elektronik AVR oder ARM


von leonard (Gast)


Lesenswert?

Ich brauche für ein Projekt ein Kontroller der ordentlich schnell ist 
und mehr als 40 I/O Pins hat, min. 2 UARTs, mehrere SPI, min.eine I2C- 
Schnittstelle. USB-Kontroller währe natürlich auch noch praktich und 
wenn möglich sollte direkt eine Grafikeinheit vorhanden sein.
Bisher habe ich immer nur AVRs programmiert, meine Fragen deshalb:
1) Giebt es eigentlich einen ARM den man über die SPI-Schnittstelle
programmieren kann, oder muss ich mir einen JTAG-Programmer kaufen?
2) Wird ein ARM ähnlich wie ein AVR programmiert, ich meine von
den Ports her und so?
3)Ist es kompliziert die interne Grafikeinheit zu verwenden?

Danke,
Leonard

von Outi O. (outlaw)


Lesenswert?

Wie in Deinem anderen Fred schon gepostet, versuchs mit nem Raspberry 
Pi.

Der hat zwar keine 40 IOs aber das kannste sicher noch erweitern.

Der hat auch SPI und I2C, seriell und einiges mehr.

Bootet u.A. Debian (Raspbian) von SD Karte, hat 4 USB Ports und ne 
Netzwerkschnittstelle.

Nachtrag:

Programmiert wird der über Linux und dort halt mit allem, was unter 
Debian für ARM geht. Python wird gerne benutzt aber auch C und Co. 
sollten kein Problem sein.

Vergleichen kannste das nicht mit AVR, das sind 2 verschiedene Welten.

Ach ja, ne Grafikeinheit hat der auch, die kann sogar Full HD ruckfrei 
wiedergeben. Brauchst halt nur ne Lizenz dafür. Die kostet aber fast nix 
und kann beim Hersteller bestellt werden.

: Bearbeitet durch User
von Leonard H. (Gast)


Lesenswert?

Und wie kann ich den Raspbery bitte programmieren? Hat der eine JTAG 
schnitstelle? Kann man den in C programmieren?

Ich dachte eher an eine Eigenentwicklung und nicht an ein Fertigmodel.
LH

von Oliver S. (oliverso)


Lesenswert?

X. H. schrieb:
> Und wie kann ich den Raspbery bitte programmieren?

Na ja, bei der Frage lautet die Antwort: Gar nicht. Das gilt dann aber 
erst recht für Bare-Bone-ARM-Boards.

X. H. schrieb:
> Ich dachte eher an eine Eigenentwicklung und nicht an ein Fertigmodel.

Was genau verstehst du unter Eigenentwicklung?

Oliver

von Pete K. (pete77)


Lesenswert?

AVR und ARM zu programmieren sind schon zwei Paar Schuhe.

Schau Dir mal die Beispiele für einen STM32F4 hier im Forum an, dann 
bekommst Du ein Geführ für die Materie.

Raspberry & Co. sind Linux Boards, das hat mir Mikrocontroller dann 
nichts mehr zu tun. Aber auch hier gibt es Foren, die Hilfestellung 
geben.

Zu Frage 1) hilft es, die Datenblätter der jeweiligen Chips zu lesen.

Zu Frage 2): nein

Die Raspberry GPIOs kann man per php programmieren.

: Bearbeitet durch User
von Lothar (Gast)


Lesenswert?

Pete K. schrieb:
> Die Raspberry GPIOs kann man per php programmieren.

Kann man auch ganz ohne Linux mit BASCOM-ähnlichem BASIC programmieren:

https://www.riscosopen.org/content/sales/risc-os-pico

Pete K. schrieb:
> AVR und ARM zu programmieren sind schon zwei Paar Schuhe.
>
> Schau Dir mal die Beispiele für einen STM32F4 hier im Forum an, dann
> bekommst Du ein Geführ für die Materie.

Ein kleiner ARM wird nicht anders programmiert als ein AVR (ist sogar 
einfacher: linearer Adressraum, logisch aufgebauter Assembler):

https://learn.adafruit.com/getting-started-with-the-lpc810/introduction

Was den STM32 schwierig macht ist nicht der ARM-Kern sondern die 
aufgeblasene Peripherie, die eine Programmierung ohne die 
gewöhnungsbedürftigen Libraries schwierig macht.

von Frank K. (fchk)


Lesenswert?

leonard schrieb:

> 1) Giebt es eigentlich einen ARM den man über die SPI-Schnittstelle
> programmieren kann, oder muss ich mir einen JTAG-Programmer kaufen?

Kaufe einen Segger JLink. Der funktioniert am Besten. ARMs verwenden 
JTAG und ab Cortex zusätzlich SWD (quasi 2-Draht-JTAG). Bei kleinen ARMs 
ist nur SWD herausgeführt.

> 2) Wird ein ARM ähnlich wie ein AVR programmiert, ich meine von
> den Ports her und so?

Prinzipiell ja. Wobei Du wissen musst: Bei den ganzen Controllern ist 
der Prozessorkern das einzig gemeinsame. Peripherie wie I2C, SPI, UARTs, 
Timmer sind von Hersteller zu Hersteller verschieden.

> 3)Ist es kompliziert die interne Grafikeinheit zu verwenden?
Kommt drauf an, was Du unter kompliziert verstehst. Das größere Problem 
wird sein, einen entsprechenden Chip zu finden, der sich mit 
Haushaltsmitteln löten lässt. Das meiste in dieser Größenordnung ist 
BGA, und das wirst Du nicht verarbeiten können. Außerdem kommen dann 
Leiterplatten mit 4,6 oder mehr Lagen auf Dich zu.

fchk

von lh (Gast)


Lesenswert?

> 3)Ist es kompliziert die interne Grafikeinheit zu verwenden?
>Kommt drauf an, was Du unter kompliziert verstehst. Das größere Problem
>wird sein, einen entsprechenden Chip zu finden, der sich mit
>Haushaltsmitteln löten lässt. Das meiste in dieser Größenordnung ist
>BGA, und das wirst Du nicht verarbeiten können. Außerdem kommen dann
>Leiterplatten mit 4,6 oder mehr Lagen auf Dich zu.

Das ist das kleinste Problem, die Platine lasse ich fertigen, und das 
löten bekomme ich schon hin.

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.