-
Thread
8051er oder AVR
Wenn ich die Wahl zwischen 8051 oder AVR zu treffen hätten, nähme ich einen 16 Bit PIC oder einen 32 Bit Cortex. Ansonsten kommt es natürlich immer auf die Anwendung an.
Hier eine andere aktuelle Buchempfehlung (*): http://www.elektronik-labor.de/Literatur/010AVR_C.html *AVR-Mikrocontroller in C programmieren* Über 30 Selbstbauprojekte mit ATtiny13, ATmega8, ATmega32 Autor: Dr. Günter Spanner http://www.elo-web.de/elektronikbuecher/mikrocontroller/avr-mikrocontroller-in-c-programmieren
-
Thread
C: Pixel auf dem Bildschirm ausgeben
Wenn du schon QBasic kennst wieso nimmst du dann nicht einfach FreeBASIC? screenres 640,480,32 'Besser wie screen wasauchimmer pset (1,1),rgb(32,64,128) sleep -1
TO wirklich hardwarenah programmieren will, dann würde ich ein halbwegs leistungsstarkes Board mit AVR32, PIC24, dsPIC oder Cortex-M3 und kleinem TFT vorschlagen. Zum einen ist die Dokumentation vollständig, man kann (so gut wie) alle Algorithmen implementieren und bis zum letzten Taktzyklus optimieren
-
Thread
USB-Programmer
Rat fragen. Ich habe mir diesen hier mal ausgeguckt: http://cgi.ebay.de/USB-ISP-Programmer-ATMEL-AVR-ATmega-ATTiny-/310274763880?pt=Wissenschaftliche_Ger%C3%A4te&hash=item483dd12c68 Er sollte möglichst billig sein, da ich Student bin. Und auch nicht als Bausatz vorliegen. Es wäre nett, wenn ihr
Der AVR-ISP mkII ist bei csd-electronics gerade für EUR 32.49 im Angebot.
-
Thread
atmega32 & 74HC595 Schieberegister
3686400 definiert" #define F_CPU 16000000UL /* Quarz mit 3.6864 Mhz */ #endif #include <avr\io.h> #include <util\delay.h> #include "spi.h" #define DD_MOSI PINB5 #define DD_SCK PINB7 #define DDR_SPI PORTB void SPI_MasterInit(void) { // Set MOSI and SCK output, all others input DDR_SPI = (1<<DD_MOSI)|(1<<DD_SCK); // Enable SPI, Master, set clock rate fck/16 SPCR = (1<<SPE)|(1<<MSTR)|(1<<SPR0); } int main(void) { SPI_MasterInit(); while (1) { PORTB |
-
Thread
Array mit 512 Bytes über Rs232 vom PC zum PIC
geht's nicht! So müsste es passen: a = 128 + (nummer And 384) / 128 + (DMXValues(nummer) And 128) / 32 Sascha
. Durchlauf dürfen sich die Daten ja höchstens 1x ändern... Ich hoffe du verstehst was ich meine :DD Wie könnte ich das anders (schneller) lösen? thx, Emanuel
-
Thread
Biete CentiPad Embedded Linux Module
MHz, main 10.000 MHz CPU0: D VIVT write-back cache CPU0: I cache: 16384 bytes, associativity 64, 32 byte lines, 8 sets CPU0: D cache: 16384 bytes, associativity 64, 32 byte lines, 8 sets Built 1 zonelists Kernel command line: console=ttyS0 root=/dev/ram0 AT91: 96 gpio irqs in 3 banks PID hash
negative Kontrastspannung für ein LCD zu erzeugen. - auf der Oberseite ist Platz für einen SOIC8-AVR (z.B. Tiny13), der kann dann AD-Wandeln. Oder wahlweise ein zweites SOIC8 EEPROM Auf dem CentiBOB http://www.harerod.de/centipad/documents/CentiBOB201psk_color.pdf kann man noch nachrüsten: -
-
Thread
Makro locate (ASM)
Ich schreibe vom Programm aus nicht direkt auf das LCD, sondern auf einen Bildschirmspeicher im AVR-SRAM. Dabei sind die Zeichen linear angeordnet, also Zeile 0 zuerst, dann Zeile 1, 2 und 3. Das Übertragen an das LCD erfolgt in einem Task der Mainloop, der alle etwa 1ms aufgerufen wird und nur
Axel schrieb im Beitrag #1914819: > http://www.mikrocontroller.net/articles/AVR-Tutorial:_Stack#Weitere_Informationen_.28von_Lothar_M.C3.BCller.29: > wird immer darauf hingewiesen, Register zu sichern. Das Tutorial ist ein "One size fits all" Machwerk. Dort wird dir zunächst
-
Thread
Kompatibelität CC1100 und RFM12
FREQ0 # -> 433,249969 MHz 0x49, // MDMCFG4 0x75, // MDMCFG3 0x02, // MDMCFG2 0x32, // MDMCFG1 0xC1, // MDMCFG0 CHANSPC_M 0x35, // DEVIATN 0x04, // MCSM2 0x0C, // MCSM1 0c 0x38, // MCSM0 0x16, // FOCCFG 0x6C, // BSCFG 0x43, // AGCCTRL2 0x40, //
du deine Konfiguration hier posten? Ich wollte auch Betty mit RFM12 kommunizieren lassen. Gruß AVR
-
Artikel
Diskussion:AVR-GCC-Tutorial/LCD-Ansteuerung
Ich habe da mal einen Vorschlag... Wie bereits in Re: LCD an ATmega32 spinnt geschrieben finde ich es etwas ungeschickt, wenn die Adreßberechnung für das DD-RAM (je nach Zeile und Spalte) in lcd.c fest verdrahtet ist. Je nach LCD-Typ müssen hier nämlich andere Konstanten
Sichtbarkeitsbereich von i ist sehr lokal (innerhalb des for). Der Compiler kann u.U. günstiger optimieren Moderne AVR/WinAVR Versionen haben C99 per default aktiviert Pro B: Funktioniert auch, wenn der C99 Standard in (älteren) AVR-GCC/WinAVR Installationen nicht per Kommandozeile definiert ist. Version A bringt eine
-
Thread
Labornetzgerät als Projekt
aber auch noch die den Schmitt-Trigger versorgen.... Evtl. auch noch eine kleine Anzeigeplatine mit AVR, LED Anzeigen und RS232 Ausgang... Grüße Timo
Timo S. schrieb im Beitrag #1872803: > Evtl. auch noch eine kleine Anzeigeplatine mit AVR, LED Anzeigen LCD wäre da doch vorzuziehen .-)
-
Thread
pgm_read_byte_far
pgm_read_byte_far() braucht eine 32-bit-Zahl als Adresse. Zeiger sind im AVR-GCC aber nur 16 bit groß.
Hm. So wie ich das sehe, wird ein Pointer beim Zugriff aufs Flash ohnehin zu einem uin16_t bzw. uint32_t gecasted. Da stellt sich für mich schon die Frage, ob man 32-Bit-Pointer in gcc-avr einführen sollte, nur um sie anschließend wieder auf uint32_t zu casten. Sonst wird doch nirgendwo ein 32-Bit-Poiter
-
Thread
Atmega8 an SD-Karte: Endlosschleife nur woran liegts
blinken lassen. Aber egal was ich mach es landet immer folgendes auf der Karte: [code] dd.MM|hh:mm|ttt. dd.MM|hh:mm|ttt. dd.MM|hh:mm|ttt. dd.MM|hh:mm|ttt. dd.MM|hh:mm|ttt. dd.MM|hh:mm|ttt. dd.MM|hh:mm|ttt. dd.MM|hh:mm|ttt. dd.MM|hh:mm|ttt. dd.MM|hh:mm|ttt. dd.MM|hh:mm|ttt. dd.MM|hh:mm|ttt. dd.MM|hh:mm|ttt. dd.MM|hh:mm|ttt. dd.MM|hh:mm|ttt. dd.MM|hh:mm|ttt. dd.MM|hh:mm|ttt. dd.MM|hh:mm|ttt. dd.MM|hh:mm|ttt. dd.MM|hh:mm|ttt. dd.MM|hh:mm|ttt. dd.MM|hh:mm|ttt. dd.MM|hh:mm|ttt. dd.MM
-
Thread
NeuesOS für AVR Mikrocontroller
Guten Abend, ich habe angefangen den Code für den atMega32 an zu passen. "system/header/nano_os.h" [code] #elif defined (__AVR_ATmega32__) #define RAMSTART 0x60 #define HEAPSTART 0x085f #define STACK_SIZE 54 // immer Timer0 ! #define TIMER_REGISTER
dec hex filename 0 692 0 692 2b4 nano_os.hex atmega32 $ avr-size nano_os.hex text data bss dec hex filename 0 712 0 712 2c8 nano_os.hex
-
Thread
Einschaltdauer von Platinenrelais?
: Die Relais zunächst voll ansteuern und dann per (Software-)PWM den Haltestrom reduzieren. 73, DD6FM :-)
Schaltung hat eine Stromaufnahme von <18mA. Sicher hätte man das mit Logik lösen können, aber ein AVR hat schon alles notwendige in sich. So wird der Eingang nur mit <150µA belastet. Auch den reduzierten Dauerstrom der Relais von ca. 7,5mA sollte der AVR langfristig standhalten. Wigbert
-
Thread
EA DOGL 128x64 will nicht
für die Initialisierung ab. Habe aber auch diverse andere Beispiele ausprobiert. [c] #include <avr/io.h> #include <util/delay.h> #define DDR_SPI DDRB #define DDR_CLR DDRD #define PORT_SPI PORTB #define PORT_CLR PORTD #define DD_MOSI DDB5 #define DD_SCK DDB7 #define
: [c] #include <avr/io.h> #include <util/delay.h> #include <util/delay.h> #define DDR_SPI DDRB #define DDR_CLR DDRD #define PORT_SPI PORTB #define PORT_CLR PORTD #define DD_MOSI DDB5 #define
-
Thread
SPI läuft unregelmäßig
keine Sekunde an. Woran kann das liegen? Master: [c] #define F_CPU 16000000UL #include <avr/io.h> #include <util/delay.h> #define DDR_SPI DDRB #define DD_MOSI 5 #define DD_SCK 7 #define DD_SS 4 void SPI_MasterInit(void) { /* Set MOSI and SCK output, all others input */ DDR_SPI
_delay_ms(1000); } return 0; } [/c] Slave: [c] #define F_CPU 16000000UL #include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> #define DDR_SPI DDRB #define DD_LED 3 #define DD_SS 4 #define DD_MOSI 5 #define DD_MISO 6 #define DD_SCK 7 void SPI_SlaveInit(
-
Thread
Softune Problem beim Datenzugriff über einen Struct
gefunden. Also mein Problem ist das ich versuche eine Software die ich mal vor Jahren auf einem AVR geschrieben habe auf einem Fujitsu MB96F326 zum laufen bringen will. Jedoch ist der Softune Workbench lange nicht so gut wie das WINAVR. So nun zu meinem Problem: Wenn ich versuche über eine Struct
Hallo, diese Erfahrungen habe ich auch gemacht. Ich arbeite mit MB90F334 (16bit) und MB91F467 (32bit) bei mit Softtune. Hab es mit "dummys" zwischen den einzelnen Werten hingebogen. Es funktioniert aber 'schön' ist was anderes. Was wäre denn die Alternative? mfg Rene
-
Thread
Berechnungsfehler?
heinz Buchegger schrieb im Beitrag #1840052: > Insbesondere kostet Floating Point Rechnerei auf einem AVR eine Menge > Zeit. Ja...jein. Teilweise sind die recht gut optimiert. uint32_t zum Bleistift rechnet sehr viel länger herum, ist zwar ein paar Stellen genauer, dafür fehlt die Dynamik. Ich
so, könnt ihr euch anschauen, ist nahezu das komplette Programm. Bitte zerpflückt mich :DD
-
Thread
Entwicklungsboard komplett umgehen
ein Bootloader auch mit einem Programmiergerät in den uC? - Opensource Programmiersoftware gemäß AVR911 ist keine 3. Alternative, zu einem 2.uC mit Programmiersoftware (AVR910) oder einem Bootloader (AVR109). Ist das richtig? Kurz, bei mir dreht sich alles darum, wie ich ein teures Entwicklungsboard
Mit dem AVR-Studio kannst du Die Programme für alle 8-Bit AVR schreiben. Mit dem Studio32 für die AT91er, fragt sich halt nur wie die Programme dann auch auf den Chip kommen. Ob Dein gewünschter Programmer
-
Thread
Problem Codesegment
Hallo, ich glaube ich habe ein Verständnisproblem. Ich habe einen ATMega32, Dieser sollte 32Kb Programmspeicher haben. Soweit mirbekannt beginnt die Anwendung direkt hinter der Interrupttabelle. So jetz mein Problem. Ich habe 2 Tabellen a 256 Bytes die ich ins Codesegment
0x08, 0xC8 .DB 0xD8, 0x18, 0x19, 0xD9, 0x1B, 0xDB, 0xDA, 0x1A .DB 0x1E, 0xDE, 0xDF, 0x1F, 0xDD, 0x1D, 0x1C, 0xDC .DB 0x14, 0xD4, 0xD5, 0x15, 0xD7, 0x17, 0x16, 0xD6 .DB 0xD2, 0x12, 0x13, 0xD3, 0x11, 0xD1, 0xD0, 0x10 .DB 0xF0, 0x30, 0x31, 0xF1, 0x33, 0xF3, 0xF2, 0x32 .DB 0x36, 0xF6,
-
Thread
Einsteigerfragen
nicht selber ätze wollte ich auf DIP-Gehäusen auf Lochraster aufbauen)? Gibt es zwischen 8 und 32 Bit auch noch eine Stufe? Denn z.B. aus den Produktbeschreibungen bei Reichelt werde ich nich so ganz schlau. Sonst würde es ja sinn machen mit mehr Bit anzufangen!? Aber ich habe das AVR-Studio nur
machen mit mehr Bit anzufangen!? Aber ich habe das > AVR-Studio nur in der 8-Bit Version kostenlos gefunden - kostet die > 32-Bit Entwicklungsumgebung? Klar, 16-Bitter. Aber ich hatte oben schon geschrieben: Fang mal mit den kleinen AVR an, am besten
-
Thread
20Euro Embedded System mit ARM, 128MB ram und 256MB Flash
Woher bekommst Du den Treiber für das Display ? >>>- OS : Windows 2000 SP4, Windows XP SP2 (32bit), Windows Vista & 7 (32bit/64bit)
-n Linux-2.6.32-5 -d /boot/vmlinuz-2.6.32-dockstar-core /boot/uImage /usr/bin/mkimage -A arm -O linux -T ramdisk -C gzip -a 0x00000000 -e 0x00000000 -n initramfs -d /boot/initrd.img-2.6.32-dockstar-core /boot/uInitrd
-
Thread
SimulAVR Version 0.1.2.6 von 2010 hat keine Definitionsfiles für den ATTiny 2313
dennoch eine Version unter http://git.savannah.gnu.org/cgit/simulavr.git/snapshot/simulavr-10ce341854a0dd1debf1119d2f41ae21dd8fae17.tar.gz, die wie im folgenden zu sehen den 2313 unterstützen soll. Gut siehts aus, auch wenn ich zum installieren ein paar Pakete runter laden mußte. $ /usr/local/bin/simulavr -v SimulAVR 0.9git Supported devices: at90s4433 at90s8515 atmega128 atmega16 atmega168 atmega32 atmega328 atmega48 atmega88 attiny2313 @Jörg: Ich danke für den Tipp!!! --ich melde mich, wenn
-
Thread
Einsteigerboard für AVR-µC mit USB-Schnittstelle
www.srt-versand.de/index.php.....dd49932d00865747.65532223 Fischl USBasp (Bausatz) -> 16,50€ http://www.fischl.de/usbasp/ Watterott Atmel STK500 -> 75€ http://www.watterott.com/de/ATSTK500 CSD Elektronics AVR Dragon -> 49€ http://www.csd-electronics.de/de/ EBAY (aus China) AVR JTAGICE Emulator Debugger ATMEL Programmer JTAG ICE EUR 53€ +22€ Versand http://cgi.ebay.de/AVR-JTAGICE-Emul.....ain_0&hash=item45f153dbd4 Ebay (China) USB AVR JTAG ICE MkII-CN 32 Studio Emulator
-
Thread
Algorithmus für Linefollower mit 5 Sensoren
wür einen µC nutzt du denn? und was hat die Frage 32bitµC oder nicht damit zu tun? Ein 8bit-AVR langweilt sich mit der Aufgabe zu tode. 5x AD-Wandlung, winzig kleines bisschen rechnen, neue Comparewerte an Timer übergeben, fertich
Brocken Sei schrieb im Beitrag #1790591: > per I2C auswerten muss, oder ich nehme einen 32 Bit uC, auf was ich > nicht gerade aus bin. Wenn ich das richtig sehe, dann betreibst du deinen Mega32 (Mega16?) ohne Quarz. Fang erst mal an, dem einen 16Mhz QUarz zu verpassen. Alleine das bringt
-
Thread
Erfahrungsberichte zu verschiedenen USB-ISP-Programmern
Wird das Gerät denn von AVR-Studio erkannt?
Schritt. Danach muss es auch noch mit dem ATmega funzen. Das ging dann recht problemlos mit einem ATmega32 (Pollin AVR Board). Lesen und Programmieren ging super und auch sehr schnell. Eigentlich soll das Pollin Board auch mit dem ATmega644 laufen, daher hab ich mal den 644er eingesteckt. Leider versagt
-
Thread
Programm für PC ohne Betriebssystem
> Schwierigkeiten kommen. Diese Schwierigkeiten sind nicht grösser als bei Programmierung von AVR Mikrocontrollern. Die haben nämlich auch kein Betriebssystem - ja nicht einmal ein BIOS.
die linke obere Ecke des Bildschirms und lege vom Inhalt des Bildschirms eine Tabelle an. Tabelle(32Bit-Offset,32Bit-Color,...) Vor dem Neu-Setzen des Mousezeigers wird der Hintergrund der vorherigen Position des Mousezeigers restauriert. Dieses Beispiel wurde für MASM 5 entwickelt. Eine CPU mit
-
Thread
Atmega644 UART - Komische Ausgabe
***********************************/ #include <stdlib.h> #include <avr/io.h> #include <avr/interrupt.h> #include <avr/signal.h> #include <avr/pgmspace.h> #include "uart.h" /* define CPU frequency in Mhz here if not defined in Makefile */ #define F_CPU 3686000UL
[c] #include <stdlib.h> #include <avr/io.h> #include <avr/interrupt.h> #include <avr/signal.h> #include <avr/pgmspace.h> #include "lcd.h" #include "uart.h" /* define CPU frequency in Mhz here if not defined in Makefile */ #