Gefunden für bit prozessoren projekt - Zum Elektronik Forum





1 - Was macht die CPU, bei einem IRQ ? -- Was macht die CPU, bei einem IRQ ?




Ersatzteile bestellen
  0. Wenn nicht das entsprechende Interrupt-Enable-Bit UND (falls vorhanden) das Global-Interrupt Enable-Bit gesetzt ist, passiert garnix.

1. Das Interrupt-Enable-Bit oder GIE wird gelöscht, und damit weitere Interrupts verhindert.
Gewöhnlich landet nur der Programmzähler auf dem Stack. Um das Sichern des Statusregisters muss sich die ISR kümmern.
Es gibt auch Prozessoren, die keinen expliziten Stackpointer haben, sondern bei denen Call/Return und auch die Interrupt Behandlung erfolgt, indem der Program Counter einfach mit einem Register vertauscht wird.
Der Einsprung ins Unterprogramm bzw. in die ISR erfolgt dann mit exakt der gleichen Instruktion wie die Rückkehr von dort.

2. Kann so sein, aber es gibt auch andere Konzepte, wie feste Interrupt Adressen, oder dass der Interrupt Vector von der externen Hardware geliefert wird.

5. "ISR wird beendet" ist ein bischen kurz gegriffen.
Sämtliche benutzten Register müssen restauriert werden, auch Status, dann erst kann 6. erfolgen.

6. Da gibt es oft spezielle Instruktionen die das abgeschaltete Interrupt-Enabel wieder setzen.
Ausserdem wird automatisch entweder jetzt, oder bevor die Interrupt Sequenz begonnen wurde der Program Counter erhöht, sonst würde die betreffende In...
2 - Steuern und Regeln -> wo und wie anfangen -> die Suche nach dem roten Faden -- Steuern und Regeln -> wo und wie anfangen -> die Suche nach dem roten Faden
Dann mal von vorn:
Du benötigst ja zunächst eine Plattform.

Du kannst dich heute zwischen unzählichen Plattformen und Architekturen entscheiden.
Meine persönlichen Favoriten der Mikrocontroller sind:

8 bit
- die AVR-Familie von Atmel: einfach zu handhabende und schnell erlernbare Architektur, viele Entwicklungsmöglichkeiten (Programmer von einigen Euro bis mehrere hundert Euro), eine tolle IDE (Atmel Studio) und viele Ressourcen im Internet. Kann auch in Form eines Arduinos eingesetzt werden, auch wenn ich persönlich den Arduino-Hype nicht teile. Prozessoren sind relativ günstig, aber für ihre Rechenleistung sehr teuer. Typische Vertreter ATmega88PA (kein ATmega8 mehr, ist veraltet), ATmega328P, ATXmegaxxx (teuer, aber leistungsfähiger). Taktraten bis 32MHz

8 bis 16 Bit
- PIC-Serien von Microchip. Kannste nach gucken, ich würde sie aber nicht empfehlen. Das liegt nicht daran, dass sie schlecht sind, sondern dass ich arbeitsbedingt nur wenig damit zu tun hatte, obwohl sie grade für Regelungstechnik und Stellglieder gut geeignet sind (hochauflödende PWM und Brückenhardware).









3 - MSP430 -- MSP430

Zitat : Nun möchte ich gerne auch Analoge Signale einlesen wie zb den onboard Taster Ein Taster ist doch aber die typische Quelle eines Digitalsignals.
Zu meiner Schande muß ich gestehen, daß ich diese Stromsparer von TI schon seit Ewigkeiten in der Bastelkiste liegen habe, aber noch nicht dazu gekommen bin mich näher damit zu befassen. Ich kann dir da also leider keine heißen Tipps geben.
Von anderen Prozessoren her kann ich dir aber sagen, daß die programmtechnische Behandlung der ADCs aufwändiger ist, als nur die Abfrage, ob an einem Pin 1 oder 0 anliegt.

Iirc hat der MSP430 ja sowohl einen 10-Bit als auch einen 12-Bit ADC an Bord.
Beide sind sind eigentlich zu schade um damit nur eine Taste abzufragen.
Besonders der 12-Bit ADC bietet ja die gleiche Auflösung wie die gängigen Digitalvoltmeter, aber er ist wesentlich schneller.

...
4 - Parallele EProms/Sram auslesen -- Parallele EProms/Sram auslesen
Ja 2 Byte sind 16 Bit.
Nur was soll ein "16-Bit cmos" sein?

Solltest dich mal präziser ausdrücken.
Wenn es um Prozessoren handelt liest einfach mal hier weiter http://de.wikipedia.org/wiki/16-Bit-Architektur ...
5 - Programmiereinheit ? -- Programmiereinheit ?
Bevor es ans Programmieren geht, solltest du dich für einen Hersteller entscheiden.
Die MSP430 Serie von TI ist gut für batteriegetriebene Projekte mit nicht allzu hoher Rechengeschwindigkeit geeignet und dort gibt es auch 12-Bit ADCs, aber die Serie ist in Hobbykreisen nicht so verbreitet, wie die Prozessoren von Microchip oder Atmel. ...
6 - Registerinhalte zusammenfassen/addieren -- Registerinhalte zusammenfassen/addieren

Zitat : das es zum Schluss als Wert in einer Variablen steht? Dazu musst du dir erst einmal eine Variable zulegen, in welche die 10 Bit hineinpassen. Der 8-Bit µC kan das ja nicht per se.
Vorzugsweise werden das wohl 2 Byte sein, aber wenn du Gleitkommaarithmetik damit machen willst, braucht man standardmäßig 4 Byte oder sogar das Doppelte.
Das Schöne am Gleitkomma ist, daß der Programmierer sich nicht viele Gedanken zu machen braucht, das Üble, daß dabei sehr viel Programmspeicher und RAM gebraucht wird, und die Berechnungen langsam sind, sofern der Prozessor nicht entsprechende Hardware an Bord hat.

Bleiben wir bei 2 Byte Ganzzahlen, dann ist die nächste Frage, ob man damit den Wertebereich 0..64k abdecken will (unsigned) oder -32k..+32k (signed). Ist diese Entscheidung einmal gefallen, dann sollte man sich im ganzen Programm daran halten, sonst kommt man schnell in Teufels Küche.

Prinzipiell können diese beiden Bytes an beliebigen Speicherste...
7 - Kleines Problem mit itoa -- Kleines Problem mit itoa

Zitat : Nein, die 20Byte sind eine Berechnung. Das ganze Programm ist 1,4kB groß. Dann schmeiss mal die Multiplikation und besonders die Division raus (und achte darauf, dass nicht woanders welche vorkommen) und schreib nur:
uint32_t Umrechnung=ZehnBitWert;
Dann wirst du sehen, wieviel Platz MUL und DIV kostet.
Es kann natürlich passieren, dass die betreffenden Routinen trotzdem eingebunden werden, das ist eine Frage der Optimierung, die der Compiler bzw. Linker vornimmt, - oder eben nicht.

Dein Prozessor kann hardwaremäßig 8x8 Bit multiplizieren, aber viele kleinere können das nicht per se und müssen dafür jedesmal ein Unterprogramm abarbeiten.
Außerdem haben sie vielleicht nur 20 Bytes RAM, mit denen man nicht so verschwenderisch umgehen kann.

Ganz übel würde das, wenn du überflüssigerweise mit genormten IEEE-Gleitkommazahlen hantiertest.
Bei kleinen Prozessoren ist dann plötzlich sämtlicher Platz für Programm und Daten verbraucht u...
8 - TCP/IP Pakete versenden -- TCP/IP Pakete versenden
@Jornbyte

Der Tipp war super.

Pures, schnelles C für 8-Bit Prozessoren.
Das bekommt man auf jedem Prozessor zum Laufen.

So etwas habe ich schon lange gesucht.

Was man sonst findet, ist ohne Rücksicht auf Speicherbelegungen und Bearbeitungsgeschwindigkeiten pogrammiert, als ob die Welt mit Windows und dem PC beginnt, fernab jeder Hardware, mit dem ganzen überladenen Geraffel und am Liebsten noch rekursiv. Da schaut niemand mehr hinter die Kulissen, was so ein Compiler aus dem C++-Code eigentlicht macht.
Wenn es zu langsam ist, warten wir eben auf die Rechner mit dem neuen Quarz.

Hochachtungvoll
Brizz ...
9 - Clock/Data auslesen über LPT -- Clock/Data auslesen über LPT
Weißt du denn überhaupt, in welcher Größenordnung (Millisekunden, Mikrosekunden) die Taktimpulse liegen?

Gefühlt würde ich sagen, die sind deutlich zu schnell für den LPT. Der würde das eventuell über einen passenden Treiber hinbekommen (die Hardware wird das evtl. schaffen), aber mit so einem krüppeligen Programm ist da nichts zu machen.

Im Übrigen müssten die Taktimpulse mindestens mit der doppelten Taktfrequenz abgetastet werden, damit keine Flankenwechsel verpasst werden.

Dafür benutzt man oft kleine Mikrocontroller, die bei jedem Flankenwechsel ein Interrupt auslösen. Ein Programm ließt dann die Datenleitung aus und taktet die Bits schrittweise in einen Speicher. Nach z.B. 8 Bits wurde dann ein Byte empfangen.
Sowas gibt es auch in Hardware und es heißt dann SPI.

Kannst dich ja mal über Prozessoren wie ATmega8 o.ä. schlau machen

Hast du eine Dokumentation der Schnittstelle? Gibt da einige Fallstricke - einige takten z.B. das MSB zuerst aus, während andere das LSB als erstes Bit bevorzugen. Je nach dem ist dann auch die Taktpolarität anders.

P.S.:
Dokumentation wäre klasse. Denn unter Umständen kann man mit dem EN-Eingang ein „Handshake“ implementieren, damit das G...
10 - Hochfrequenzschaltungen jenseits von 100 MHz. Was macht die Industrie da anders? -- Hochfrequenzschaltungen jenseits von 100 MHz. Was macht die Industrie da anders?

Zitat : nzwischen ja auch locker Taktraten jenseits von 100 MHz erreichenDie aber nicht unbedingt nach draussen kommen.
Solange die Verbindungen zwischen den Baugruppen auf dem Chip bleiben, sind die Leitungen nur Bruchteile von Millimetern lang und auch deren Kapazitäten sind sehr gering. Dafür genügen dann schon sehr zarte, dafür aber schnelle Treibertransistoren.
Erst wenn man mit den Signalen vom Chip runter muß, wird es ungefähr um den Faktor 10 langsamer. Schuld daran sind vor allem die großen Endstufentransistoren sowie die Schutzschaltungen, die man benötigt, damit der Anwender das Bauteil überhaupt in die Hand nehmen darf.

Auch die Prozessoren, die das Herz eines PC bilden, kommunizieren mit der Außenwelt vergleichsweise gemächlich, während die Logik auf dem Chip mit mehreren GHz getaktet wird.


11 - Bausteine gesucht -- Bausteine gesucht
Tach,

Ein 8-Bit-Prozessor mit etwas mehr SRAM und Programmspeicher wie der ATmega32 oder größer (64, 128, etc.) sollte locker reichen.

Gegen die AVR32- und für die AVR(8Bit)-Typen spricht das Gehäuse der AVR32er.
Für die größeren Prozessoren spricht vor allem, dass sie eher dazu in der Lage sind, größere Displays sehr flott und zum Teil mit Hardwarebeschleunigung zu betreiben, den Rest bekommt man auch in kleine Mikrocontroller rein.

Achja, und natürlich die Tatsache, dass man die größeren Prozessoren nicht neu brennen muss, wenn man mal andere Programme ausführen will - sie können Programme aus dem RAM ausführen, was sämtliche AVR 8-Bitter nicht können. Updates sind so einfacher.
Bootloader kann man auch auf den AVRs mit 8 Bit einsetzen. ...
12 - Arbeitsspeicher aufrüsten -- Arbeitsspeicher aufrüsten

Zitat : Er ist etwas länger als 13cm.
So um die 133,35mm/5.250"?

Ob das Mobo den futtert, da musst Du CPU-Z o.ä. mal fragen, wie der Chipsatz heißt - sonst können wir das nicht sagen.

Was das ominöse single-sided/double-sided angeht, hier eine Erklärung, wie so ein Speicherriegel arbeitet:

Gewünscht ist, dass der RAM 64-bit tauglich ist, also auf Anfrage einer Adresse 64 Bit (ein Datenwort) auf einen Schlag rausgibt (das gab's auch schon zu Zeiten der 32-Bit-Prozessoren, wurde mit dem 586er aka Pentium eingeführt). Den Aufbau dazu realisiert man wie folgt (Beispiel: 512 Mebibyte SD-RAM):
Auf einer Platinenseite sitzen acht Chips. Jeder dieser Chips ist für 8 Bits zuständig (8*8 Bits=64 Bits). In jedem dieser Chips müssen insgesamt 512MB/8=64MB Platz finden. Intern in den Chips realis...
13 - Mega8 programmieren -- Mega8 programmieren

Zitat : Das braucht man perl nicht sagen. Der kennt die auswendig, alleSchön wär's


Zitat : Höchstens vielleicht für Uhren oder sehr hohe Baudraten (der UART), wo das Schwingen prinzipbedingt extrem genau sein muss.

Aber auch da würde ich erstmal einige Quarze selektieren.Für UARTs, gleich welcher Baudrate, reicht es die Frequenz auf 5% genau einzuhalten, denn der Empfänger kann sich ja nach höchstens 10 Bit neu synchronisieren. Dafür braucht man eigentlich keinen Quarz, denn die in heutige Prozessoren eingebauten RC-Oszillatoren sind genau genug.
Ohne Abgleichmöglichkeit und ohne genaue Auswahl de...
14 - Ideen für eine Entschärfungs-Simulation (für LARP) -- Ideen für eine Entschärfungs-Simulation (für LARP)
@Leo:

Zitat :
nicht meckern, das war irgendwann mal schnell hingepfuscht

Das triffts ziemlich... Wack!

@trasher:

Zitat :

Laut dieser ist beim Ansteuern einer LED die I/O-Spannung per Pull-Down auf die Durchflussspannung der LED zu senken. Beim Speaker wäre dies durch die breite Toleranz nicht nötig.

Naja.
Also, der Widerstand dient der Begrenzung des Stromes durch die LED. Die Flussspannung dient u.U. zum Berechnen dieses Widerstandes, der mit 7k5Ω zwar ausreicht, um die LED sichbar leuchten zu lassen, ein wenig weniger wäre besser und auch für den IO-Pin kein Problem. Errechne doch mal den Widerstand, wenn du ...
15 - Eprom 2716 finde keinen passenden Dessambler -- Eprom 2716 finde keinen passenden Dessambler

Zitat : So kriegst Du das auf keinen Fall. Vielleicht nicht ganz so, aber sehr, sehr änhlich!
Vor allem wenn man den Prozessortyp betrachtet:
http://www.linurs.org/mc14500.htm

Das sind 1-Bit Prozessoren und die Befehlsfolge die diese Prozessoren verarbeiten können sind nun mal nicht viel anderes als eine Anweisungsliste mit "UND" "ODER" "NICHT". Daher sieht das Programm den AWL Programmen aus eine SPS sehr ähnlich. Die Ausdrucke der Veknüpfungen "Q00=E17&E18" (Programm ist etwas übertieben, obwohl es oft als solches bezeichnet wird) sehen auch wirklich so aus, wie sie Blade78 beschrieben hat, weil mehr als Bitverknüpfungen hat das Teil nicht drauf. Ein Assemblerprogramm auch nichts anderes als eine AWL, eine SPS kennt nämlich neben Bitoperationen meist auch noch eine Vielzahl anderer Befehle, wie ...
16 - PIC und C Amfängerfrage -- PIC und C Amfängerfrage
Moin,

Ich habe leider keine Ahnung von PICs, aber kann man dort nicht auch einen ganzen Port (=eine IO-Adresse) in eine Variable laden?
Angenommen, das klappt (und davon gehe ich aus), sehe dein Programm so aus:

#define TASTER_BIT_POSITION 3 //Taster hängt an Bit 3

int main(void)
{
...
...
...
//testen, ob Taster 1 oder 0 liefert:
unsigned char i=PORT_LESEN; //hier irgendwie den kompl. Port einlesen

if(!(i & 1<<TASTER_BIT_POSITION)){
...
};

...
return(0);
};

Um zu verdeutlichen, was der Teil "1<<TASTER_BIT_POSITION"bedeutet, erkläre ich erstmal den Schiebeoperator >> und <<:

Diese Operatoren schieben ein Bit an eine bestimmte Position; z.B. wäre der Ausdruck i = 1<<7; das gleiche wie i = 128; oder i = 0x80; oder binär i = 10000000b (klar? Der Rechte Operand gibt also an, an welche Position das Bit geschoben wird, während der linke Opreand angibt, ob das Bit gesetzt (=1) oder gelöscht (=0) ist.

Mit dem #define TASTER_BIT_POSITION kann man also festlegen, welches Bit vom Taster repräsentiert wird und mit dem 1<<TASTER_BIT_POSITION wird eine Zahl generiert, an der _nur_ das 3. Bit 1 ist. Verunde ich nun die Zahl
17 - Einführung in die Mikrocontrollertechnik -- Einführung in die Mikrocontrollertechnik
Hallo,

ich sehe das genauso. Es gibt für beide Familien an die 100 unterschiedliche Prozessoren. Diese Teilen sich in Gruppen ein, welche bestimmte gleiche Eigenschaften haben. Also z.Bsp. gibt es die Gruppe wo der interne Datenbus nur 8-Bit hat. Daneben gibt es aber auch neuere Typen mit 16-Bit breitem Datenbus. Beide Gruppen gibt es sowohl bei den AVRs als auch bei den PICs.

Die Diskussionen der Beführworter einer jeweiligen Familie geht meist auch nur auf meiner Meinung nach sehr kleinen Details ein, welche eigentlich nicht der Rede wert sind. Man kann mit beiden Familien das selbe Gerät bauen. Meist informiert man sich logischerweise nur sehr detailiert über "seine" Familie und übernimmt Meinungen der jeweiligen "anderen" Familie vom Hörensagen. Auch ich bin dem ein wenig verfallen, da ich halt noch nicht mit den AVRs gearbeitet habe. Ich wollte es zwar immer mal anfangen um mir halt ein eigenes Urteil bilden zu können. Das Problem ist aber, dass wenn man sich erst mal auf einen µC eingearbeitet hat man später nur selten bereit ist zu wechseln. Du wirst dich als automatisch jetzt entscheiden und den Weg weiter gehen mit der Familie deiner Wahl.

Und auch wenn ich ein PICianer bin muss ich doch leider gestehen, dass man weit mehr P...
18 - Memory Sticks zusammenschalten -- Memory Sticks zusammenschalten
ok.

system overflow.


also soweit hatte ich die sache mit dem fpga ja verstanden.
aber calidus hat recht:

Zitat : Das mit den FPGAs vergiss mal lieber, das ist für Dich nur eine weitere Baustelle, auf der du erst noch lernen müsstest, und würde halt nochmal extrem Zeit kosten.

zuerst mal muss ich mit 8 bit riscprozessoren umgehen lernen, um dann mit "richtigen" 32 bit prozessoren arbeiten zu können.
aber ich bin sozusagen immoment opfer meines eigenen tatendranges, sodass ich mich mit dem usb interface und protokoll und so beschäftigen werde. denn früher oder später werde ich große mengen an messdaten speichern müssen,
weshalb ich dann sowieso sticks benutzen muss.nicht schnell, nur viel über lange zeit, d.h. jeder nochsolangsame avr(das sind halt gerade dsie, mit denen ich mich beschäftige) reicht aus, solange er ein usbinterface hat(vielleicht baue ich mir...
19 - Atmel Evaluations-Bausatz; Prozessor-Qual... -- Atmel Evaluations-Bausatz; Prozessor-Qual...

Zitat :
DonComi hat am 12 Aug 2006 11:38 geschrieben :


Und was hat das mit dem Board von Pollin zu tun?
Das ist ja nichtmal für Prozessoren von Atmel geschweigedenn für 8bit-µCs.

....das Board ist für alle µC geeignet...es sei denn, ATMEL baut ECL-Bausteine mit in seine Architektur ein.

Ausserdem geht es hier nur um ein Beispiel.
...dieses Board hatten wir in Verbindung mit einem C515µC -Board an der BTFA benutzt...ein reiner 8-Bitter!


Zitat :
Das hat nix mit dem Extensionport zu tun...
20 - 64-Bit-Dual-Core-Prozessor für Notebook-PCs -- 64-Bit-Dual-Core-Prozessor für Notebook-PCs

AMD hat die mobile Technologie »Turion 64 X2« vorgestellt, die erste und einzige Familie der 64-Bit-Dual-Core-Prozessoren für flache und leichte Notebook-PCs.

Zur vollständigen Meldung:
Link
...
21 - Z80 Befehlsübersicht -- Z80 Befehlsübersicht

Zitat : Übersicht über alle Befehle, die der Z80 kennt.. wenn möglich auch mit einer kurzen Beschreibung, was der Befehl tut...
Im wesentlichen ist das in Superset der 8080-Befehle, wenn auch mit anderen Mnemonics.
Das ist kein Wunder, denn beide Prozessoren sind Kinder von Frederico Faggin, der Chefdesigner bei Intel war und nach Meinungsverschiedenheiten mit Exxon-Geld die Firma Zilog gründete.

Zusätzlich zu den 8080 Befehlen hat der Z80 die Adressierung über die Indexregister IX und IY, die aber kaum jemand benutzt hat, weil sie unglaublich langsam war.
Die Adressierung über DE und HL, die schon der 8080 beherrschte, ging trotz der erforderlichen Ladeoperationen meist schneller.
Ein schönes Beispiel, daß weniger oft mehr ist und auch erahnen läßt, warum seit langem RISC Prozessoren den CISC Maschinen die Schau stehlen.

Eine gewisse Erleichterung für die Assemblerprogrammierung waren aber Schieben und Rotieren sowie Bit-Operationen mit ...
22 - Anfängerfrage zu ATtiny -- Anfängerfrage zu ATtiny
aha, unter Manuell...

mal ne andere Frage. Mittlerweile kann ich gar nicht mehr durchführen was ich eigentlich wollte...nämlich das setzen, bzw. prüfen dieser BIT's...BASCOM erkennt nämlich einfach nicht mehr die Prozessoren (beide).

Ich hab es auch mal mit TwinAVR probiert, aber auch das kann keine Verbindung herstellen. Hab ich mir jetzt möglicherweise die Prozessoren gekillt bzw. unbewusst irgend welche falschen BIT's reingeschrieben?

Am Anfang ging zumindest das Beschreiben immer noch, auch wenn ich meist zwei Anläufe brauchte bis der Prozessor erkannt wurde.

Vielen Dank nochmals für eure Hilfe...

Nicht gefunden ? Eventuell gibt es im Elektroforum Transistornet.de für Bit Prozessoren Projekt eine Antwort
Im transitornet gefunden: Bit Prozessoren Projekt


Zum Ersatzteileshop


Bezeichnungen von Produkten, Abbildungen und Logos , die in diesem Forum oder im Shop verwendet werden, sind Eigentum des entsprechenden Herstellers oder Besitzers. Diese dienen lediglich zur Identifikation!
Impressum       Datenschutz       Copyright © Baldur Brock Fernsehtechnik und Versand Ersatzteile in Heilbronn Deutschland       

gerechnet auf die letzten 30 Tage haben wir 8 Beiträge im Durchschnitt pro Tag       heute wurden bisher 7 Beiträge verfasst
© x sparkkelsputz        Besucher : 192594855   Heute : 3971    Gestern : 7576    Online : 405        16.8.2026    14:26
3 Besucher in den letzten 60 Sekunden        alle 20.00 Sekunden ein neuer Besucher ---- logout ----su ---- logout ----
xcvb ycvb
0.0451650619507