-
Thread
[C] AVR-Lichtorgel per FFT MEGA8 32 644
soso, 8Mhz.. ändere mal folgenden Abschnitt [c]#if defined (__AVR_ATmega8__) ADCSRA = _BV(ADEN)|_BV(ADSC)|_BV(ADFR)|_BV(ADIF)|_BV(ADPS2)|_BV(ADPS1); #elif defined (__AVR_ATmega32__) || defined (__AVR_ATmega644__) ADCSRA = _BV(ADEN)|_BV(ADSC)|_BV(ADATE)|_BV(ADIF)|_BV(ADPS2)|_BV(ADPS1); #endif [/c] nach: [c]#if defined (__AVR_ATmega8__) ADCSRA = _BV(ADEN)|_BV(ADSC)|_BV(ADFR)|_BV(ADIF)|_BV(ADPS2)|_BV(ADPS0); #elif defined (__AVR_ATmega32__) || defined (__AVR_ATmega644__)
-
Thread
CRC Fehlerkorrektur -> Lookuptable
50% erstmal völlig aus. Eventuell werden die 20Mhz noch etwas mehr performance bringen. Dieter M. schrieb im Beitrag #5585392: > Hallo, > ich habe jetzt nicht alles gelesen, > werfe aber einfach mal den ATMEGA328pB in den Raum. > Kompatibel und hat 2 UARTs. sind die Register 1 zu 1 kompatibel
. Es scheint doch zu passen. (5mm größere PCB) Siehe Bild Und der Vorteil: ich kann mit dem 1. Atmega schnell messen (und eventuell abschalten) und alles loggen. Und mit dem 2. Atmega kann ich im sekundentakt Telemetriedaten senden. Die Verbindung der beiden geht dann über die Softuart oder
-
Thread
CNC Maschinchen
fertig gelötet und kostet knapp 3 Eur. Ist dir nicht gut genug? http://www.ebay.de/itm/Nano-V3-0-ATmega328-16M-5V-Micro-controller-CH340G-board-for-arduino/371179047627?_trksid=p2047675.c100005.m1851&_trkparms=aid%3D222007%26algo%3DSIC.MBE%26ao%3D1%26asc%3D20140117130753%26meid%3D7e167327645c458586e2189706ca0aa9%
güntige stromquelle. hat da jemand was für folgende verbraucher: 3x schrittmotor 28BYJ-48 – 5V 1x fräsmotor 5 -12V 1x atmega kann man da vielleicht auch ein altes pc-netzteil nehmen ?
-
Thread
TTL-Quarzoszillator an AVR via 74HCT-Gatter?
rezikproken Zähler kann die Referenzfrequenz ja auch belibig krumm sein. Da die Frequenzen recht nah bei 16MHz liegen, lässt sich ein AVR auch direkt damit speisen -- und zwar genau so, wie ich es oben beschrieben habe -- BTDT. Nachtrag: Verwendet wurden ATmega16 (Takt über 68p auf XTal1, interner Oszillator
Volker B. schrieb im Beitrag #7383993: > Nachtrag: Verwendet wurden ATmega16 (Takt über 68p auf XTal1, War das mit oder ohne Spannungsteiler? Volker B. schrieb im Beitrag #7383993: > interner Oszillator aktiviert, Den „Full swing“ oder den „Low power crystal oscillator
-
Thread
ATMEGA328P-AU läuft etwa um Faktor 10 langsamer als normal
0x05 pro.menu.cpu.16MHzatmega328.bootloader.file=atmega/ATmegaBOOT_168_atmega328.hex pro.menu.cpu.16MHzatmega328.build.mcu=atmega328p pro.menu.cpu.16MHzatmega328.build.f_cpu=16000000L [/c] [c] pro.menu.cpu.8MHzatmega328
=0x05 > pro.menu.cpu.16MHzatmega328.bootloader.file=atmega/ATmegaBOOT_168_atmega328.hex > pro.menu.cpu.16MHzatmega328.build.mcu=atmega328p > pro.menu.cpu.16MHzatmega328.build.f_cpu=16000000L > pro.menu.cpu.8MHzatmega328.
-
Thread
LED steuer Problem
avrasm] .include "m8def.inc" ldi r16, 0b00000110 ; PORTD PIN1&2 Ausgang out DDRD, r16 ldi r16, 0b11111101 ; PORTB PIN1 Eingang out DDRB, r16 ldi r16, 0b00000010
[avrasm] .include "m8def.inc" ldi r16, 0b00000110 out DDRD, r16 // PinD1:2 für die LED`s als Ausgang ldi r16, 0b11111101 out DDRB, r16 // PinB1 für den Taster als Eingang
-
Thread
Atmega32U4 Drehzahl messen
oder M32U4 ? Zweitens: Wieso und warum hast du Timer0 CTC auf 1 gestellt? Probiere es mal so: ( Für *M32* ) [code] volatile uint16_t Drehzahl; volatile uint8_t impulse=0; volatile uint8_t Flag
LPD3806-600BM-G5-24C Denke habe jetzt das richtige ergebnis. Impulse kommen 600/U bei nutzung von nur 1 Phase. [code] Erstens: Hast du jetzt M32 oder M32U4 ? [/code] Atmega32U4 [code] Zweitens: Wieso und warum hast du Timer0 CTC auf 1 gestellt? [/code] Timer0 gibt es jetzt nicht mehr.
-
Thread
virtueller COM-Port mit Atmega
Schnittstelle mehr hat. Es werden nur die Leitungen Rx und Tx verwendet. Super wäre, wenn ich einen Atmega (z.b. M88) mit der entsprechenden Software flashen und dazwischenschalten könnte.
m.n. schrieb im Beitrag #4323079: > Such mal in den AVR-Programmen, wo die UART-ISR ausgebremst wird. > Oder pollst Du noch? Es ist ein NWT mit Pic16F876. Habe auf die Firmware keinen Einfluss. Mit
-
Thread
Mikrocontroller Empfehlung gesucht
Hallo zusammen, ich suche für ein Projekt einen Mikrocontroller. Dieser sollte haben: 1xSPI,1xI2C, 4xIO-Pin, gut benutzbare Sleep Modes. Ich bin noch relativ neu in der Materie, und habe bisher nur mit Arduino, einem Standalone atmega1284p und Raspberry Pi Pico gearbeitet. Ich hätte noch
bekommt umso mehr Funktionen kann man wiederum einbauen welche die Konkurenz dann nicht hat und mit 1mA betreibt man heute drei Microcontroller, ein LCD und ein analoges Frontend. Jedes uA zaehlt! Olaf
-
Thread
Arduino / ATmega328p reagiert nicht mehr, HVPP funktioniert
ich nun einen neuen BootLoader usw auf den ATMega16U2 laden muss, damit ich wie gehabt mit der Arduino IDE den ATMega328pa laden kann (weil ich z.B mit einen Programmer mittels ICSP1 was auf den ATMega16U2 dummerweise geladen habe und ich deshalb
Arduino UNO als Arduino/Genuino uno => ich müßte dann wohl das file Genuino-COMBINED-dfu-usbserial-atmega16u2-Uno-R3.hex oder Arduino-COMBINED-dfu-usbserial-atmega16u2-Uno-Rev3.hex nehmen - welches?? Und würde es reichen, nur das korrekte *.hex file zu flashen oder muss zusätzlich noch ein
-
Thread
Notstrom Betrieb eines Mini-PC, Umschaltung Batterie/Netzteil
sie beim Entladen eventuell zu klein? Muss der Akku vor dem Tiefentladen geschützt werden? Major M. schrieb im Beitrag #7900647: > Step-Down an den 16s Akku und darüber PC versorgen. > Der Inverter schaltet eh bei 3v Zellspannung ab Also sind wir inzwischen bei [pre] + Ladegerät + Akku
Major M. schrieb im Beitrag #7903626: > allerdings wird es > auf den Stepdown am großen/16s LiFePo4 Akku raus laufen Vergiss nicht zu prüfen, ob man die beiden Massen (Akku mit Step-Down und Netzteil) auch
-
Thread
3A Step Down + Arduino
Stückliste: U1: TS30013-M050QFNR C1: Kerko 10uF 35V C2&C3: Kerko 22uF 10V C4: 22nF 10V D1: Schottky Diode 40V 5A L1: Inductor 4.7uH 4.4A Dies sind die Angaben aus dem DB
Jache schrieb im Beitrag #6474696: > U1: TS30013-M050QFNR > C1: Kerko 10uF 35V > C2&C3: Kerko 22uF 10V > C4: 22nF 10V > D1: Schottky Diode 40V 5A > L1: Inductor 4.7uH 4.4A Ist Ok. Mein persönlicher Tipp: C4 bekommt 100nF C1 eine
-
Thread
Pollin Atmel Evaluations-Board & Co. - Fragen
und dann noch die Fusebits -_- Testprogramm ist drauf! Aber das Ding läuft, hab gerade ein Atmega16 drin. Nunja jetzt wollt ich mal schauen was das Ding über Hyperterminal von sich gibt. Also mit 9600 Baud, 8 Databits, 1 Stopbits, Parity und Flow control auf none macht der bei Windows (XP
Drei unterschiedliche Quarze: Kleinste Fassung (Attiny2313 und Co.) 8 MHz mittlere Fassung (Atmega9 und Co.) 12 MHz große Fassung (Atmega16 und Co.) 16 MHz - Nur ein Taster active high geschaltet an PB1 - Nur zwei rote LEDs active high geschaltet an PD5 und PD6 - Kein Summer/Buzzer
-
Thread
FT232 ähnliches USB mit atmega32u4 unter C
verwenden. sich widersprechende Ratschläge und Überheblichkeit sind ungut. Fakt ist daß das Atmega2560-Board keinerlei Stress macht und dabei als USB ein Atmega16u2 verbaut ist. Als Treiber ist da ein inf-file nutzbar.
Matthias W. schrieb im Beitrag #6912347: > Fakt ist daß das Atmega2560-Board keinerlei Stress macht und dabei als > USB ein Atmega16u2 verbaut ist. Als Treiber ist da ein inf-file nutzbar. Den Stress macht eigentlich Wixdos10! Denn das ist, was unsignierte *.
-
Thread
Wie 300 PWM ausgänge?
Ich hab mal ein Projekt mit 16x16 RGB-Leds gebaut. Ein einfacher ATMega32 war ausreichend @16MHz
Beitrag #2919431: > Eumel schrieb im Beitrag #2919016: >> Nein, das kriegst du nicht mit einem Atmega hin. > > Es geht. Nicht mit PWM aber mit > > Martin Wende schrieb im Beitrag #2918986: >> Bit Angle Modulation. > > Das schafft sogar der alte Mega8. Mein Projekt hatte 16x16 RGB mit jeweils
-
Thread
AVR Prozessortakt halbieren
Jörg W. schrieb im Beitrag #4623012: > Die Werkseinstellung ist 1 MHz, da im Auslieferungszustand die > CKDVI8-Fuse gesetzt ist, die den Takt-Vorteiler auf 1:8 voreinstellt. Ja, bei einem ATmega direkt vom Hersteller schon. Bei einem Arduino-Board sollte das anders
USB/Seriell-Converter, Spannungsregler mit relativ hohem Eigenverbrauch usw. Außerdem wird der ATMega mit einem 16MHz Resonator extern getaktet. Nichts davon läßt sich wirklich sinnvoll per Software beeinflussen. Wenn Strom sparen angesagt ist (warum?) dann einen 3,3V ProMini nehmen und externen
-
Thread
IDE unter Linux
atmega169p atmega169pa atmega16a atmega16hva atmega16hva2 atmega16hvb atmega16m1 atmega16u2 atmega16u4 atmega2560 atmega2561 atmega32 atmega323 atmega324a atmega324p atmega324pa atmega325 atmega3250 atmega3250a atmega3250p atmega325a atmega325p atmega328 atmega328p atmega329 atmega3290 atmega3290a atmega3290p atmega329a atmega329p atmega329pa atmega32c1 atmega32hvb atmega32m1 atmega32u2 atmega32u4 atmega32u6 atmega406
-
Thread
Elektronik-Fotos Bilder
"Servos" sind elektromagneten? Wie hast du die aufgebaut / > angesteuert? Nichts weiter als ein 1mm oder 1,5mm Neodym-Magnet in einer Spule, die über zwei Port-Pins des Atmega angesteuert wird, so dass ich den Magneten in beide Richtungen bewegen kann. PWM, um die Kraft zu ändern. Spule: siehe Bild
1.
-
Thread
Kompleete Werkstattauflösung
ATTINY84A-PU 3 Stück ATTINY85-20SU 5 Stück ATTINY2313-20PU 3 Stück ATTINY2313A-PU 8 Stück ATMEGA32A-PU 4 Stück ATMEGA328P-PU 2 Stück mit Ard. Bootloader ATMEGA644PA-PU 1 Stück ATXMEGA16A4-AU 2 Stück Dann sind noch da: PIR Sensormodule HC-SR501 20 Stück DHT22/AM2302 Sensoren 5 Stück
M. W. schrieb im Beitrag #6066164: > Mich wundert, dass hier jemand allerlei Paragraphen zitiert, Mahnungen > verschicken will und dabei die Regel Nr 1 im Geschäftsbetrieb nicht > kennt: > > Erst
-
Thread
Delay mit Timer
Ist ein Atmega8-16
kann es auch daran liegen das ich vom Pin des Atmega ca.1,5m Kabel zum DS1820 habe und erst am D1820 den Pullup. Oder muss der Pullup so nah wie möglich am Atmegs Pin sein.
-
Thread
Padauk PFS154 Programmer mit Arduino Uno / ATmega88 - 328
Mini-Lite-Programmer und mein Programmer) und ist dann auch steckbrettkonform. https://www.ebay.de/itm/20PCS-SOP16-SSOP16-TSSOP16-To-DIP16-0-65-1-27mm-IC-Adapter-PCB-Board/173990566789?ssPageName=STRK%3AMEBIDX%3AIT&_trksid=p2060353.m2749.l2649 Ansonsten (bisher einmal gemacht für eine Spielerei mit dem PFS) habe
Kondensatoren _______________________________________________________ | | 1 | 1.8 nF | 2 | 220 nF | 3 | 10 uF / 16V | 1 | 47 uF / 25V | 16V reichen nicht 1 | 220 uF / 10V | kann auch groesser sein
-
Thread
128x128 LED-Matrix mit AVR statt Atari ansteuern
wissen, ob der ATmega16 später auch leisten kann was ich möchte. Mit der vorhandenen Technik müsste das wie folgt aussehen: * erstes Byte der ersten Zeile an Ausgang A * eine 0 an vier Pins von Ausgang B * eine 1 an
Intressantes Projekt. Aber ich würde zu nen größerem AVR raten, da der AtMega16 nur 1kb RAam hat. Ein AtMega 644 ist da pinkombatibel und hat 4kb RAM und ist somit besser geeignet die 2kb für die einzelnen LEDs im Speicher zu halten. Von der Geschwindigkeit her nehmen sich die beiden
-
Thread
DCF Digital Empfangsmodul - Korrelation - (Assembler)ATmega8
schalltet könnte man sogar mit einem Bruchteil der Frequenz sampeln." Eine separate S&H vor dem ATmega ist gar nicht nötig! Im Rahmen eines anderen Projektes lese ich den AD-Wandler eines ATmega16 in einem 16kHz- Timerinterrupt ein, um durch Unterabtastung ein Signal von ca. 125kHz einzulesen. Funktioniert
ist nicht veröffentlicht, aber die hier relevanten Punkte zur Unterabtastung eines Signals mit dem ATmega16 habe ich auszugsweise im Anhang zusammengefasst. Gruß Thomas
-
Thread
RS232 Kommunikation
Hast Du Dir das mit der Freilaufdiode mal angesehen? Der Max-Current Wert von den Port-Pins des Atmega32 liegen aber bei 40mA, also müsste das doch eig gehen oder? Das mit der Freilaufdiode habe ich mir angesehen ja. Gruß Jonas
auch X1-3 und X1-4 überbrücken und schauen, ob du Zeichen, die der ATMEGA32 versendet, auch wieder empfängst.
-
Thread
Mikrocontroller LED-Steuerung
Hier nochmal ein Bild davon. Der meistbenutzte AVR hier ist wohl der ATmega8. Es gibt auch eine neue Reihe, die dazu Pinkompatibel ist, die ATmegaX8, wobei das X die Flash-Größe angibt, also ATmega88 hat 8kB, ATmega48 hat 4kB und ATmega168 16kB. Die sind in sofern besser
sind auch schonmal dabei auch wenn ich die erstmal nicht verbaue). -mySmartUSB light -2x Atmel ATMega8-16PU -je 100 Widerstände (100, 1k und 10k Ohm) -4x Kerko (100nF) -2x IC-Sockel (28 Pole, Rastermaß 7,62; ich hoffe das passt!?Die Löcher in der Lochrasterplatine sind ca. 2,5mm auseinander, was
-
Thread
PWM-Ausgabe stimmt nicht bei AVR DDS
Ich habe einfach die fertige main.hex von hier https://github.com/dev26th/avr_dds_20 auf den Atmega16 geflasht (siehe Anhang). Interessant, dass das Compilieren vom Source-Code ein File erzeugt, das nicht mehr auf den M16 geschrieben werden kann. Eventuell wurde vom Autor ein M32 verwendet, ohne
Hi >Gräm dich nicht. Ein ATmega328 gibt es fertig auf Platine für unter 2€ Was nutzt ihm das? ATmega328 -> 28 Pins ATMega16 -> 40 Pins MfG Spess
-
Thread
Atmega8, Carry-Flag
;meine Led an PORTB,1 leuchtet! lds R18,SREG sbrc r18,0 rcall ein nop sbrs r16,0 rcall aus nop rjmp start aus: sbi DDRB,1 sbi PORTB,1 ret ein: sbi DDRB,0 sbi PORTB,0 ret
viel Platz in der Opcode-Matrix, und > Instruktionen mit Konstante wie ORI fressen 12 Bits d.h. 1/16 der > Matrix! Alleine ANDI, ORI, SUBI, SBCI, CPI, RJMP, RCALL, LDD, STD, > IN+OUT belegen jeweilt 1/16, zusammen also 10/16 > 60% aller Opcodes! > >> man also beim Vergleich gegen Konstanten
-
Thread
DSO für wenig Geld
Mit PIC24H/dsPIC33 müssten bei 2x8bit eigentlich bis 40M/s pro Kanal drin sein, da ein 16bit Move vom Port zum Speicher 1 Takt braucht. ARM7 braucht ohne DMA schon vom Core her 3 Takte für's Laden und 2 Takte für's Speichern, zzgl möglicher Wartezyklen
>So in etwa habe ich das geplant, nur viel einfacher: >Am Eingang ein fester Spannungsteiler mit 1M Ohm um Oszikompatibel zu >sein, dann ein Umschaltbarer Verstärker x1 oder x10 und Du willst am Eingang gleich 1/200 abschwächen? Also aus 2V 20mV? Ich dachte eher an 1/10. Und dann hat man 100k
-
Thread
STM32 - Erster Artikel
gelogen, indem sie auf Seite 1 von 0 Waitstates schwadronieren, statt zu erwähnen, dass das Flash-Mem nur bei 1/5 der Taktfrequenz liefe. > aber nichtsdestotrotz, wenn das ja stimmt mit den 120MHz geg. Jahresende > (habe ich vom
Hardwarelastig (denn "Software makes Hardware work" - nicht von mir) aber das wird ja bestimmt noch. M.M. ist der selbst entwickelte JTAG-Anschluss zu sehr hervorgehoben. Bei allem Stolz darauf, sollten im Haupttext eher die von ARM definierten Anschlüsse erläutert werden (20-pol 2.5mm, 10-pol 1.3mm),
-
Thread
USB MIDI Gerät
du unbedingt bei AVR bleiben möchtest, wäre ein Arduino Nano (bzw. ein Clone mit einem "echten" Atmega8/16u(!) und nicht mit einem CH340 chip) eine Möglichkeit. Da würde die unnötige Verbindung Atmega16u2 <> Atmega328 wegefallen. Du müssest nur im Datenblatt nachsehen, ob die USB Pins sich nicht mit
Stefan M. schrieb im Beitrag #4549843: > Als USB Controller den atmega 16u2 mit eigener Software, so dass es als > USB-MIDI Gerät erkannt wird und als Controller für Potis, Schalter etc. > ein atmega328P.
-
Thread
C++ Klassenbibliothek für AVR
Arduino Pinnummer // UNO, Nano, Pro Mini usw. #if defined(__AVR_ATmega328P__) | defined(__AVR_ATmega328__) | defined(__AVR_ATmega168P__) | defined(__AVR_ATmega168__) constexpr uint8_t portBit[] = {0,1,2,3,4,5,6,7,0,1,2,3,4,5,0,1,2,3,4,5}; constexpr uint8_t
,&PINB,&PINF,&PINF,&PINF,&PINF,&PINF,&PINF}; // #endif // Mega #elif defined(__AVR_ATmega2560__) | defined(__AVR_ATmega1280__) constexpr uint8_t portBit[] = {0,1,4,5,5,3,3,4,5,6,4,5,6,7,1,0,1,0,3,2,1,0,0,1,2,3,4,5,6,7,7,6,5,4,3,2,1,0,7,2,1,0,7,6,5,4,3,2,1,0,3,2,1,0,0,1,2,3,4,5,6,7,0,1,2,3,4,5,6,7
-
Thread
einfache Grafikkarte mit 256x252 und 256 Farben für AVR
Ach was ganz einfaches ZB: &H1 &H1 &H1 &H1 jetzt kommt ein komplettes bild &H14 + XXXYYY text cursor to pos x &H15 + XXX textfarbe &H16 + XXX texthintergrund &H17 + STRINGSTRINGSTRING text bis nochmal &H15 kommt &H18 löschen
alle Leitungen und Pins kontrolliert, und alles passt. Ich habe versucht das Prorgamm für den Atmega8515 auf den Atmega128 umzuschreiben. Eigantlich habe ich alles gelassen bis auf: [c] DDRE=(1 << PE1)|(1 << PE0); DDRB=(1<<PB6); [/c] Da der PWM Ausgang bei dem 128 auf Port B6
-
Thread
ATMega644 UART
Wandlung nicht übernommen. */ (void) ADCW; } /* ADC Einzelmessung */ uint16_t ADC_Read( uint8_t channel ) { // Kanal waehlen, ohne andere Bits zu beeinflußen ADMUX = (ADMUX & ~(0x1F)) | (channel & 0x1F); ADCSRA |= (1<<ADSC); // eine Wandlung "single conversion
muss ich die Baudrate neu berechnen? am Quarz hab ich aber nichts geändert. der ATMega32 läuft bis zu 16Mhz der AtMega644 läuft bis zu 20 Mhz Ich betreibe den Controller mit 16Mhz
-
Thread
Entwicklung eines Bussystems
mindestens 110 Knoten verbinden ohne Repeater. CAN hat 29 Adreßbits, das sollte wohl reichen. Den ATMEGA16M1-AU gibt es z.B. bei Digikey. Peter
empfehlen - so ganz nebenbei^^? Der einzige unter 10,- EUR scheint der ATMEGA16M1(bei digikey; Link von Peter) zu sein, wo man aber pro Bestellung gleich mal 18,- EUR Versand zahlen muß... arggg^^ Oder alternativ einen CAN-Controller + Treiber? LG
-
Thread
Anfänger braucht Starthilfe :-)
mal alles vorgebetet zu bekommen? Also meine Bestellung bei Reichelt.de würde dann so aussehen: 1x AVR STK 500 (Netzteil habe ich) 1x ATMEGA 8515-16 D -> ATMega AVR-RISC-Controller, DIL-40 <- ist das ein MEGA8 ??? Damit könnte ich dann also erst einmal Spielen, oder ? Platinen & Kabel habe
vorgebetet zu bekommen? Das hängt davon ab, was an der Uni Deines Vertrauens so angeboten wird. > 1x ATMEGA 8515-16 D -> ATMega AVR-RISC-Controller, DIL-40 Ein ATMega16 ist afaik beim STK500 mit dabei. Und den würde ich auch in Hinblick auf spätere Projekte dem 8515 vorziehen. 40-Pin-DIP sind sie
-
Thread
qtouch - sekt oder selters
Verständnisfrage: Was meint Atmel mit QTouch-Channels? Kann ich nicht x-beliebige Pins hernehmen? Beim ATmega16M1 werden z.B. 12 Channels angegeben. Das Ding hat 32 Pins, davon 27 I/O Pins. Bei allen sind die PullUps abschaltbar. Da ich für einen Channel immer 2 Pins brauche, wären das also 13 Channels. Schaut
noch den Code für den XMega posten. Erklärt wurde er ja in diversen Beiträgen. [c] static uint16_t sense(void) { uint16_t i=0; // discharge SNSPort.DIR |= (1<<SNSPIN); SNSPort.OUT &= ~(1<<SNSPIN); SNSKPort.DIR |= (1<<SNSKPIN); SNSKPort.OUT &= ~(1<<SNSKPIN);
-
Thread
Strings mit AVR - aber richtig
UDR2 = c; //send data } void print_flashstr(PGM_P str) { u8 c; while((c=pgm_read_byte_near ((u16)str))) { send_byte_usart0(c); str++; } } [/c] benutzt wird, sollte [c] print_flashstr(BUILDTIME); [/c] beim ATMega328 und auch bei den größeren Varianten (z.B. ATMega2560) sicher
progmem in .progmem.data *vor* ausführbaren Code lokatiert wird. Und dann gibt's auch noch __flash1 etc., die auch in der obigen Wiki-Seite beschrieben werden, die aber eine Ergänzung zum Linkerscript erfordern für Sections .progmem1.data etc. Dann gibt es nocht Devices wie ATmega4808, die Flash
-
Thread
LEDs leuchten leicht bei 8x8 Register PWM
Latches/Driver defekt sind. Ich habe die exakt gleichen Bauteile verwendet. Nur statt dem Atmega 32 benutze ich einen 644P. Andere Grundlege Funktionen des uCs funktionieren ohne Probleme (ISP-Programmierung, UART1). Vielleicht hat ja jemand einen Vorschlag? (Ich habe kein Oszilloskop)
Kurzinfo: Es gehen sogar 16x16 RGB-LEDs mit 8Bit pro Farbkanal mit >50Hz! Selbst schon sowas gebaut! PS: An den Fets sollte noch ein Pull-Down (1k). Kann sein das die Ports nicht sauber geschaltet werden bei den Frequenzen
-
Thread
Spannungsmessung ATmega
/ einen Offset- und einen liearisierungs Fehler ausgleichen. Es ergibt sich dann eine Funktion f1 der Form: f1(x) = m *(x-x0) +y0 m = (y1-y0) / (x1-x0) ; konstant Je nach Vorgeschaltetem Spannungsteiler, incl. Puffer Opperationsverstärker ist dann die Berechnung der Eingangsspannung einfach.
Offset- und > einen liearisierungs Fehler ausgleichen. > > Es ergibt sich dann eine Funktion f1 der Form: > f1(x) = m *(x-x0) +y0 > m = (y1-y0) / (x1-x0) ; konstant > > Je nach Vorgeschaltetem Spannungsteiler, incl. Puffer > Opperationsverstärker ist dann die Berechnung der Eingangsspannung
-
Thread
RS485 nach 2,5 Paketen ist schluss
(void) { //___warten auf Receive Complete while(bit_is_clear(UCSR0A,RXC0) ); PORTB |= (1<<PORTB3); PORTB &= ~(1<<PORTB3); return UDR0; } //16 Byte-String empfangen auf USART - Ohne Autolinefeed void rs485_rec_16Byte(uint8_t *s) { uint8_t i = 0; PORTB |= (1<<PORTB3); PORTB &= ~(1<<PORTB3); _delay_ms(5); while(i<16) { s[i] = usart_getc(); i++; } }
-
Thread
mikrocontroller für 16x10 led matrix
an, > damit kannst du 8x12=96 bicolor Leds ansteuern. Bloss, welcher Spinner verwendet den 500mA M54564P Source Treiber, um damit 24 LEDs in 1:8 Multiplexspalten anzusteuern ? Der liefert nur 500mA, also 20mA pro LED, und das 1:8 der Zeit, also 2.6mA im Schnitt. Das ist zappenduster, 1/
@MaWin >Bloss, welcher Spinner verwendet den 500mA M54564P Source Treiber, >um damit 24 LEDs in 1:8 Multiplexspalten anzusteuern ? >Der liefert nur 500mA, also 20mA pro LED, und das 1:8 der Zeit, >also 2.6mA im Schnitt. >Das ist zappenduster
-
Thread
Welche 8-Bit-Architekturen werden in 10 Jahren relevant sein? Gesperrt
einen einzelnen AD-Wandlerkanal braucht man gerade mal zwei Register (Daten und Config) da wäre auch 1bit Addressraum genug. Und auch die 16 bit Prozessoren haben für den Addressbus mehr bits 20 bit -> 1 MWord adressierbar bspw. . Und ein Controller, der für ne Kaffemaschiene/Scheibenheber/Fernbedienung
Quantisierungsbits drauf für den numerischen Überlauf bei der Akkumulation (Filterstrukturen) reichen 16 bit bei Embedded wie Drucker, bediendisplays, Kaffemaschine. Das man bei der PC-Rechentechnik und Katzenvideos mehr verlangt ist IMHO eine andere Diskussion, im Embeddedbereich sind 1 ... 16 bit in
-
Thread
Einfaches Radio basteln
Schleifer an Tuning Voltage und schon gehts zum probieren. Antenne nicht vergessen (Stück Draht ca. 1m). Grüße Olaf
schon. Welche Ponyprogversion verwendest du denn? Du hast doch weiter oben geschrieben, das man den Atmega noch in den Bascom Code einbinden muss, wo kann ich das den machen? Ich habs immer unter Options Compiler chip und dann hab ich m16def.dat ausgewählt.Ich könnte ja das ganze auch mal unter Ponyprog
-
Thread
AVR®DD family, low pin count devices
zwischen beiden Varianten umgeschaltet, sondern auch das Routing für die Programmierpins. Beim ATmega128RFA1 (der den MCU-Core des ATmega1281 benutzt) mussten wir uns dann entscheiden, welche der Varianten wir nehmen wollen. Wir haben uns gegen die ATmega103-Kompatibilität entschieden :-), d.h. er
Die M103C Fuse haben aber nur der ATmega64, ATmega128 und der ATmega128A.
-
Thread
ATmega8. Umbau als 2GHz Frequenz-Logger
HIGH, um Zählimpulse durchzulassen (hörte das Knacken im NF-Verstärker). Ebenso ist der Pin... PD1 des Atmega standardmäßig auf LOW. Nur gelegentlich (dreimal sekündlich) geht PD1 für den Bruchteil einer Sekunde auf HIGH, um den Zähler zu resetten. Er bedient die Masterreset-Pins 2 und 12 des 74HC393
. Rechen-Beispiel: 91 Impulszählungen wurden während 1/100stel Sek. an Pin 11 festgestellt 239 ist der Zählstand, den der 74HC393 Zähler hat (nachdem die Torzeit vorbei ist) ================== Summe: (91*256) + (239*1) = 23535 Der Atmega8 hat 23535
-
Thread
AVR Synthesizer mit ATxmega128A1
1 Status-Register über bereits gesichertes PUSH R0 ; 2 R0 auf Stack schieben PUSH R1 ; 2 R1 auf Stack schieben PUSH R16 ; 2 R16 auf Stack schieben
except for data lines). */ PORTH.DIR = 0xFF; PORTK.DIR = 0xFF; // init EBI 3PORT/AL1/CS3 (A16-19) EBI.CTRL |= EBI_SRMODE_ALE1_gc; EBI.CTRL |= EBI_IFMODE_3PORT_gc; EBI.CS3.CTRLA |= EBI_CS_MODE_SRAM_gc; EBI.CS3.CTRLA |= EBI_CS_ASIZE_16M_gc; EBI.CS3.BASEADDR =
-
Thread
Umstiegsbreatung uC Atmel/STM
ARM-Modernisierung des Unterbaus Wie gesagt, Arduino hat sich ja für den ATSAMD21 als offiziellen ATmega328 Nachfolger entschieden: der ARM mit der ungünstigsten Peripherie überhaupt, "5V-tolerante" Pins aber 5.1V gibt den Rest, und ein M0 statt wenigstens ein M3, wäre nicht teurer gewesen, aber deutlich
schrieb im Beitrag #4675128: > Wie gesagt, Arduino hat sich ja für den ATSAMD21 als offiziellen > ATmega328 Nachfolger entschieden: der ARM mit der ungünstigsten > Peripherie überhaupt, "5V-tolerante" Pins aber 5.1V gibt den Rest, und > ein M0 statt wenigstens ein M3, wäre nicht teurer gewesen, aber
-
Thread
Bits shiften - ich verstehe es nicht.
Bits 1 und 2 im Nibble vertauscht! // {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15}; uint16_t remap[16] = {0, 1, 4, 5, 2, 3, 6, 7, 8, 9, 12, 13, 10, 11, 14, 15}; //
[16] = {0, 1, 4, 5, 2, 3, 6, 7, 8, 9, 12, 13, 10, 11, 14, 15}; int main() { // Hunderter Zehner Einer result = (uint16_t)remap[firstbyte]*100
-
Thread
Uhr(16 Bit Timer) läuft zu schnell (in 1h ca. 8 Sekunden zu schnell)
einem Tag schon 3 min vorne und in einer Woche schon 24 min. Laut meiner Berechnung sollte genau 1 Sekunde herauskommen: F_CPU=16MHz Prescaler=1024 16 Bit Timer NormalModus: TCNT1= 65536-(1s*16000000/1024)= 49911 CTC Modus: OCR1A= 1s*16000000/1024 -1 = 15624 Code Normal Modus: TCCR1A
> Was ist der Grund dafür? Stefan Weninger schrieb im Beitrag #4029193: > Ich verwende das ATmega 2560 Board und das hat 16 MHZ: > siehe: http://arduino.cc/en/Main/ArduinoBoardMega2560 Das Board verwendet einen keramischen Resonator, der ist nicht so genau wie ein Quarz, der CSTCE16M0V53-R0
-
Thread
ATMEL Evaluations-Board (was brauche ich noch?)
wohl aber später für eigene Schaltungen). man braucht aber natürlich ein serielles Kabel (9-pol., 1:1 verdrahtet, KEIN NULLMODEM-Kabel!). Dann eine Spannungsversorgung (Labornetzteil, ich nehme gerne einen 12V-Akku) und Kabel dafür. Dann einen AVR (atmega8, 16, 32 oder sowas). Sonst glaube
3;ARTICLE=42401;PROVID=2402 10µF: http://www.reichelt.de/?ACTION=3;ARTICLE=42397;PROVID=2402 ATMega (empfehle einen ATMega16, der ATMega8 ist doch mal schneller voll) + Zubehör: ATMega16: http://www.reichelt.de/?ACTION=3;ARTICLE=45028;PROVID=2402 100nF: http://www.reichelt.de/?ACTION=3;ARTICLE=