-
Artikel
AVR-GCC-Tutorial
anderen Compilern bzw. älteren Versionen des gcc genutzt werden soll. Verändern von Registerinhalten. Einzelne Bits setzt und löscht man "Standard-C-konform" mittels logischer (Bit-) Operationen. Es wird jeweils nur der Zustand des angegebenen Bits geändert, der vorherige Zustand der anderen Bits bleibt erhalten
Befehlszeilen: Mit den C-Bitoperationen kann man den Status der Bits abfragen. Siehe auch Bitmanipulation#Bits_prüfen Interne Pull-Up Widerstände. Portpins für Ein- und Ausgänge (GPIO) eines AVR verfügen über zuschaltbare interne
-
Artikel
Bitmanipulation
den C-Regeln, die 1 als Integer-Typ ansieht. Beim AVR-GCC bedeutet das 16-Bit/signed und die folgende Operation bringt ggf. nicht das gewünschte Ergebnis (Stichwort: „Integer Promotion“). Angenommen, Bit 15
, um direkt einzelne Bits in den CPU-Registern r0…r31 sowie den IO-Registern 0…0x1F zu prüfen. ARMv6-M (Cortex-M0). Zum Prüfen von einzelnen Bits wird auf ARM-Prozessoren im Wesentlichen die lsls -Instruktion in Kombination
-
Artikel
FIFO
Vergleich nicht mehr (wegen dem 'Überlauf' am Ende des Arrays, der den Ringschluss bewirkt) und die Abfrage einer zusätzlichen Bedingung ist zur Voll-Abfrage erforderlich. Bei gleichzeitigem Zugriff zwischen dem Befüller (zb. einer UART-ISR) und dem Entnahmecode (zb. der Code in der Hauptschleife) muss
wird der Gegenstelle signalisiert, dass sie mit dem Senden fortfahren kann. Code-Beispiel. FIFO mit C-Präprozessor. Hinweis: viele C-Compiler übersetzen automatisch eine Modulo-Division mit einem Divisor einer 2-er Potenz in Form einer entsprechenden Bitmaskierung. Zum einen erspart man sich dadurch
-
Artikel
FPGA
kompatibel zu etablierten Prozessorarchitekturen (MIPS, SPARC, AVR), zum Teil aber auch auf die FPGAs einzelner Hersteller hin optimiert. Als Programmspeicher werden die FPGA-internen RAM-Blöcke oder externe Speicher (SDRAM, SRAM) genutzt. Für einige Prozessorkerne stehen Hochsprachen wie C, C++ etc. zur Verfügung
Blockrams als FIFO mit "breitem" Busanschluss: Linksseitig besitzt das FIFO eine Breite von z. B. 256 Bit (Xilinx-Rams lassen sich ohne weitere Umbeschaltung über den Wizzard mit bis zu 1024 Bits deklarieren und nutzen). Rechtsseitig einen 16- oder 32 Bit breiten Busanschluss für einen Prozessor bzw Parallelinterface
-
Artikel
AVR In System Programmer
oben; der Stecker hat am Pin 3 eine Rastnase zum verpolungssicheren Einstecken). Wie üblich gilt N.C. = Not Connected, d.h. nicht verbunden: DATA 1 2 VCC N.C. 3 4 N.C. N.C. 5 6 GND Programmer-Varianten. Mittlerweile existiert eine fast unüberschaubare Zahl von Programmer-Varianten und Untervarianten
UART, TWI, SPI verwendet werden (hab ich noch nicht probiert). ich aber: Beim Schreiben der Fuse Bits musste ich das Tool myAVR_ProgTool.exe verwenden Mit avrdude ist das Schreiben der Fuse-Bits mit dem AVR910-Modus möglich. avrdude-Kommandozeile : avrdude -c avr910 -P PORT -p PART -U lfuse:w:0xFF:m