-
Thread
serielle Schnittstelle Problem nach dem Einschalten
; Baudrate ; Berechnungen .equ UBRR_VAL = ((F_CPU+BAUD*8)/(BAUD*16)-1) ; clever runden .equ BAUD_REAL = (F_CPU/(16*(UBRR_VAL+1))) ; Reale Baudrate .equ BAUD_ERROR = ((BAUD_REAL*1000)/BAUD-1000) ; Fehler in Promille .if ((BAUD_ERROR>10) || (BAUD_ERROR<-10
Strings zunächt rüber, wie sie sollen, > dann verschluckt sich die Schnittstelle plötzlich nach ca 1/2..1 Sekunde > und verstümmelt die Ausgabe. Dies passiert nicht immer, aber meistens. Hannes schrieb im Beitrag #3852226: > 3. Der ATMega soll mit einem anderen ATMega kommunizieren. das geht auch
-
Thread
Werkstatt für ATMEGA Programierung
current) rot/gelb/grün - dazugehörige Vorwiderstände für 5V - Keramikkondensatoren 100nF - Diode 1N4148 (schnelle Signaldiode, 100mA, 50V) - Diode 1N4001 (Netzfrequenz-Gleichrichterdiode 1A,50V) - Festspannungsregler 7805 bzw. 78L05 (1A bzw. 100mA) - kleinen Kühlkörper für den Spannungsregler
einen ATmega8 oder ATmega16/32, beides in bedrahteter Ausführung.. - Lötkolben, Lötkolbenständer, Lötzinn 1mm, Entlötpumpe, hitzebeständige Unterlage - ... - viel Zeit und Gedult :-) :-)
-
Thread
Kriege Timer 1 im Mega2560 nicht zum laufen!
TIMSK1 #define OCIExA OCIE1A #define TIMERx_COMPA_vect TIMER1_COMPA_vect // ATmega #define TCCRxA TCCR1A #define COMxA0 COM1A0 #define OCRxA
SCK) PB5 (LED) // ANALOG // A0 (ADC0) PC0 // A1 (ADC1) PC1 // A2 (ADC2) PC2 // A3 (ADC3) PC3 // A4 (ADC4/SDAglb) PC4 // A5 (ADC5/SCLgrn) PC5 //#if defined(__AVR_ATmega328P__) #elif defined(__AVR_ATmega1284P__) #define
-
Thread
ATMega328P viel zu langsam, wieso?
werksseitig gesetzt, d.h. du bekommst es von Atmel nur mit gesetztem CLKDIV8, genauer: Der (bzw. jeder) Atmega verlässt Atmel mit einem Systemtakt von 1 MHz. Da der Atmega328 intern einen 8 MHz Oszilator hat wird hier das CLKDIV8-Fusebit (Clockteiler wird statt auf 1 auf 8 gesetzt beim Reset) gesetzt.
werksseitig gesetzt, d.h. du bekommst es > von Atmel nur mit gesetztem CLKDIV8, genauer: Der (bzw. jeder) Atmega > verlässt Atmel mit einem Systemtakt von 1 MHz. Da der Atmega328 intern > einen 8 MHz Oszilator hat wird hier das CLKDIV8-Fusebit (Clockteiler > wird statt auf 1 auf 8 gesetzt beim Reset) gesetzt
-
Thread
Compilerfehler Programm springt aus der Initialisierung zum Start zurück
Hausnummer. Bei einem Controller mit wenig RAM kann die Zahl noch darunter liegen, wenn du einen ATmega1284 oder ATmega128RFA1 mit 16 KiB SRAM hast, kannst du vermutlich problemlos weit über 90 % bereits statisch belegen, ohne dass der Platz für den Stack zu knapp wird. > Jedenfalls würde ich gerne
ist aufgetreten, als ich die Funktion von 1 LED auf alle 16 umgeschrieben habe. Diese LED Show befindet sich noch im Entwicklungsstadium und ist erst zu 70% fertig. Als Controller verwende ich den AT90USB162 mit 512 Byte RAM. Wie groß ist
-
Thread
Kleiner µC gesucht
etwas leistungsstaerker sein soll, ein msp430 aus der G-Value > Line > gibt es im TSSOP14 mit ca 5.1x6.6 mm Flaeche (bis zu 8k Flasch und 0.5k > ram) Oder ein MSP430F20xx in QFN16 Gehäuse. Lässt sich auch noch recht gut löten.
Nicht kaufbar. Digi-Key http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=568-5141-1-ND Anderer Typ: C8051F30x 11-Pin 3 mm x 3 mm mit 5 V toleranten IOs und "Maximum output current sunk by RST or any Port pin 100 mA"
-
Thread
S65 Display Unterschiede zw LPH88* und LP-88* ?
Frequenzen habe ich natürlich auch schon rumgespielt. -> nix Hardware mäßig läuft bei mir ein ATMega32 mit 16MHz Die Pins hab ich dementsprechend angepasst. [c] #define LCD_CS PB4 #define LCD_RESET PB1 #define LCD_RS PB0 #define LCD_MOSI PB5 #define LCD_MISO PB6 #define LCD_SCK
So, ich habe den Quelltext für das LPH überarbeitet. Lässt sich jetzt mit dem gcc 4.2.1 ohne Warnungen kompilieren und funktioniert bei mir mit atmega128 bei 16MHz ohne Probleme. !Ich habe die PWM Backlight Ansteuerung eingebaut damit ich was sehen konnte! Ich hoffe das löst eure
-
Thread
[V] div. Halbleiter
CPLD, 44-pin PLCC á 0.50€ Z80181FEC uController Z180 (enh. Z80) á 0.50@ DSPIC30f5013 16bit MCU mit DSP á 2,50€ TMS320LF2406 DSP, DSC 16-Bit Fixed-Pt DSP with Flash á 3,00€ MT48LC32M16A2P-75 DRAM 512Mb, 3.3v, 133Mhz 32M x 16 SDR á 1,00€ ATMega2580-16AU 8-Bit-ATMega, 256 KB, 16
Hallo liebe Gemeinde, die XC9536XL, die ATMega2580-16AU die EP1C3T144C8N sind weg
-
Thread
ADC bei Atmega32
liegen? Hier ist mein Code: [c] #include <avr/io.h> #define LOOP 5 #define COMM_ANODE_R 1 #define COMM_ANODE_M 1 #define COMM_ANODE_L 1 uint16_t readout(); void sev_segm_l(uint16_t number); void sev_segm_m(uint16_t number); void sev_segm_r(uint16_t number); unsigned char digits
/=10; sev_segm_l(erg/100); // die letzte Stelle des Ergebnises sev_segm_m((erg%100)/10); // die mittlere Stelle... sev_segm_r(erg%10); // usw. } } uint16_t readout() { uint16_t erg; ADCSRA |= (1<<ADEN); // ADC wird aktiviert ADCSRA
-
Thread
Drehzahlregler für DC-Motor, ATmega48-328
M. N. schrieb im Beitrag #4181132: > Das Schaltbild zeigt, wie eine einfache Ansteuerung mit einem µC (hier > ATmega328) aussehen kann.. Und du willst jetzt wissen, warum es nicht funktioniert, oder
niederfrequente PWM-Signal moduliert werden, sondern das der Hardware-PWM. Beispielsweise würde dann die 16 kHz PWM für 4 ms den Motor ansteuern und für 1 ms würde die EMK gemessen werden. Ob man nun 1 ms braucht oder die Messung in 0,2 ms schafft hängt davon ab, wie schnell man den Motor auf Generatorbetrieb
-
Thread
Debugfähiger Kleinstcontroller Gesperrt
//www2.keil.com/stmicroelectronics-stm32/mdk Würde Dir auch gleich zu einem 32bitter mit Cortex-m0 raten plus dem erwähnten Compiler oder dem Atollic TrueSTUDIO, das es jetzt von ST für umme gibt - die STM32F0 gehen bei Mouser bei 1,69 los - für 3,90 kriegst Du schon den STM32F091RC mit 32kByte
U.G. L. schrieb im Beitrag #5839875: > Würde Dir auch gleich zu einem 32bitter mit Cortex-m0 raten plus dem > erwähnten Compiler oder dem Atollic TrueSTUDIO, das es jetzt von ST für > umme gibt - die STM32F0 gehen bei Mouser bei 1,69 los - für 3,90 > kriegst Du schon den STM32F091RC mit
-
Thread
1-wire Sterntopologie
one threshold." Er spielt also im Leitunsdesign keine Rolle. Aber das ist die m.W. einzige Stelle, wo bei 1-Wire der Wert 800pF vorkommt. Mit 1K Pullup und slewrate controlles 2N7000 Treiber sehen die kein Problem bis 200m aka 10nF.
Ist auch so. Aber woanders kannst du m.E. die 800pF nicht gefunden haben. In dem MicroLAN Dings fahren die als Beispiel 100m / 5nF, mit 1K pullup und slewrate controlled 2N7000 Treibertransistor als pulldown am µC.
-
Thread
Timer Interrupt kleiner 10us?
zu vernachläßigbarer Overhead. Bei 16Mhz Quarzfrequenz stellt man z.B. den Prescaler für 1us Auflösung auf 16 ein damit der 16-bit TIMER mit 1Mhz getaktet wird. Mir ist diese Hardware Methode lieber weil die Messung komplett in Hardware
Ramon M. schrieb im Beitrag #4905471: > Ich versuche mit einem ATmega644p (8MHz) den Timer Interrupt zu > programmieren. Das funktioniert soweit auch mit dem Code im Anhang. Ramon M. schrieb im Beitrag
-
Thread
Atmega128 lesen geht, brennen nicht / ISP
beim neuen Atmega128 damit problemlos die Fuses lesen, den Speicher auslesen (ist halt leer, bekomme die Device-Info (z.B. Signatur 0x1E9702) usw. Sobald ich aber etwas schreiben will, gehts net. Bekomme Fehlermeldung
nur der Atmega mit den 100nF-Cs, den 10k-Rs (Reset) und 16MHz-Quarz mit jeweils 22pF. Der Programmer sollte gehen. Wenn ich ein anderes Board (z.B. Atmega128 von Alvidi) dran hänge, geht alles. Was könnte
-
Thread
Günstiger uC mit hoher Taktfrequenz
Moin Für den ARM 7 im ARM mode (nicht THUMB) sind für den FIRQ R9 Bis R16 doppelt voerhanden. Wird der FIRQ ausgelöst, müssen diese Register nicht gesichert werden. kommt man jetzt ohne R1 bis R8 in der ISR für den FIRQ aus, und ohne externen IRQ Controller für den FIRQ.
Beitrag #1732942: > Moin > > Für den ARM 7 im ARM mode (nicht THUMB) sind für den FIRQ R9 Bis R16 > doppelt voerhanden. Wird der FIRQ ausgelöst, müssen diese Register nicht > gesichert werden. > kommt man jetzt ohne R1 bis R8 in der ISR für den FIRQ aus, und ohne > externen IRQ Controller für
-
Thread
DCF77 Uhr in C mit ATtiny26
define XTAL 3686400L Reicht das schon aus??? in timebase.c wird ja im SIG_OVERFLOW0 eine "time base 1 second" aufgesetzt: // time base 1 second TCNT0 = (u16)(256 - T0COUNT); // reload per tick: -183 if( ++ct_64Hz & 0x3F ){ // 64 ticks = one second timeflags = 1<<ONE_TICK;
das problem liegt bei der pulslängenprüfung für die eins 4..7 = 0 11..13 = 1 habs für die 1 mal ein bisschen vergrössert: if( dcf77_pulse > 10 && dcf77_pulse < 15 ) damit klappt es. noch 2 fragen: wieso castest du den wert für den 8-bit timer als u16? und kann
-
Thread
dynamisch Code ausführen - Code von SD-Karte
aufgerissen haben dann 2 Stück 5 1/4 Zoll Floppy Laufwerke. Da musste den Sommer durchgearbeitet werden dafür. Aber dafür kriegte der Z80 dann ein CP/M zu schlucken.
wie diverse Atmel AT89 takten heute mit 30MHz, bei 1 Takt = 1 Befehlszyklus.
-
Thread
AT89S52 programmieren klappt nicht
wechseln (ausser es geht einfach nicht anders) Nun der AT89S52 kostet etwa 4 EUR und ein EFM8BB31F16-QFP32 kostet 1 EUR und ein USB Seriell Adapter mit CP210x auf Ebay 5 EUR Andererseits gibt es auf Ebay auch 5 Stück ATmega328P mit Arduino Bootloader für 12 EUR macht 2,40 pro Stück, immer noch billiger
R. M. schrieb: > Der Reseteingang des 89S52 sollte während des Zugriffs, von 0 nach 1 wechseln. Ist es nicht genau bei diesem Microcontroller umgekehrt? Deshalb eine extra Schaltung überhaupt erst,
-
Thread
Überhitzung des Atmega32
Hi >Lt. Datenblatt ist beim ATMega32 - nicht "L" - die Untergrenze für die >Spannung 4,5V. Schätze mal, dass der, bei Unterspannung, unwirsch >reagiert. Mit 4,5V läuft der ATMega mit 16MHz. Mit niedrigerem Takt gehen auch 2,7V
Wie programmierst Du den Atmega denn?
-
Thread
Mehrere I/O Expansions an einer MCU
Hi an alle. Ich kann ja einen MCU z.B.: atmega168 eine I/O Expansion anschließen um weitere 16 Ports zur Verfügung zu haben. Kann ich auch mehrere I/O Expansions an einen MCU hängen, oder an eine I/O Expansion noch eine I/O Expansion. Mir
des Crystal, Reset, etc... Habe ein Display (6 Ports), 12 Buttons (12 Ports), 3 LEDs (3 Ports), 1 Servo (1 Port) und neu dazugekommen sind 4 Kodierschalter (16 Ports). Vorher waren es 22 Ports und nun brauche ich 38 Ports.
-
Thread
Mikroprozessorboard
mit IORQ mit max. 256. Alles andere ging über die Speicher Adressierung mit WR, RD und MREQ. M1 war glaube auch mit im Spiel.
Bus und alles mit IORQ verknüpfelt. Raus kommt das CS für den Chip ( Pio,CTC usw,) Kann sein das M1 noch bei war.
-
Thread
SPI für langsame Takte
>dass der Takt bei einer Frequenz des Atmega von 1 MHz viel zu hoch wird. Die Schieberegister arbeiten locker bis 30 MHz. So schnell kann ein normaler ATMEGA den SPI gar nicht takten.
Hier mal ein Beispiel für den Sender: [c] // Target: ATmega162 #include <avr/io.h> #define F_CPU 1e6 // 1MHz #define BAUD 1200 #define BAUDDIVIDER (uint16_t)(F_CPU / BAUD / 16 - 0.5) void uputchar( uint8_t c
-
Thread
Pollin Grafik LCD-Modul OPTREX F-51320AE
versuche es unter Linux (avr-gcc 4.7.0) und erhalte folgende Fehlermeldung: [code] Compiling: s1d1565.c avr-gcc -c -mmcu=atmega32 -I. -gdwarf-2 -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=s1d1565.lst -std=gnu99 -DF_OSC= -DF_CPU=16000000
Tom M. schrieb im Beitrag #3139238: > Hast du diese include in der s1d1565.c? > > #include <avr/pgmspace.h> Leider ja... ich hatte diesen Hinweis auch schon gefunden und überprüft.
-
Thread
Problem beim Uploaden von Code zu Arduino Uno mit anderer Firmware (Hoodloader 1.8)
-5V-16MHz-ATMega32U4-EntwicklungsBoard-microUSB-inkl-Stifte/264365776255?hash=item3d8d6d9d7f:g:RfIAAOSw1UdcgOHg Weiter habe ich nicht gesucht. Gruß aus Berlin Michael
die Nachwelt und die, die hier Hilfe suchen, zusammenzufassen: Die Probleme mit Hoodloader Version 1.X lassen sich beheben, indem man die ursprüngliche Firmware auf den ATmega 16u2 flasht und die neueste Version von Hoodloader 2 verwendet. vincentg
-
Thread
MCP3201 mit Atmega 8 in BASCOM
demo_Bytearray (2) as byte at demo_Wordvariable overlay nun liest Du einfach den SPI in demo_Bytearray(1) und demo_Bytearray(2) ein und fertig ist der Lack, Dein Wert steht im 16 Bit Word.
Clock - an PD.6 ' CS - an PD.7 'Chip : ATMega48V '********************************************************************** $regfile = "m48def.dat" 'ATMega48V $crystal = 3686400 'Quarz 3.6864MHz DDRD.6 = 1
-
Thread
Logic Analyzer - welche Frequenz?
logisch, dass eine höhere Abtastfrequenz eine höhere genauigkeit liefert. 10 MHz liefert z.B. bei UART 8N1 eine effektive Datenrate von 1 MB/s. Das reicht für einiges und ist mMn bei 110 EUR definitiv kein rausgeschmissenes Geld.
Hier ein Video zum Thema: http://www.eevblog.com/2009/11/16/eevblog-44-part-1-logic-analyzer-tutorial/ http://www.eevblog.com/2009/11/16/eevblog-44-part-2-logic-analyzer-tutorial/
-
Thread
Hausbus RS485 erste Schritte sind getan
Graphik-LCD direkt angeschlossen werden können). * die Clock des Controllers zu minimieren. 1Mhz ist ausreichend für die skizzierten Aufgaben. Ein ATmega32 kommt im Idle mit 1Mhz und 3,0V auf 0,3mA. Das sind 0,9mW. Mit einem Linearregler und Up = 12V kommt man auf 3,6mW. Bevor hier
dass Powermodi > Idle etwas oversized sind? Viel sinnvoller ist es >meiner Meinung nach, >Ein ATmega32 kommt im Idle mit 1Mhz und 3,0V auf 0,3mA. Das sind 0,9mW. >Mit einem Linearregler und Up = 12V kommt man auf 3,6mW. Guter Punkt. Macht selbst bei 100 Slaves gerademal 360mW. Ein Billignetzteil
-
Thread
Zeitverzögerung von 800ms einbauen (Assembler)
------------------------------------- LEDaus: ldi r16, 0b11111111 out PORTB, r16 ;----------------------------------------------------------------------- ; Es geht los. Taster 1 drücken um die LED 1 anzuschalten ;-----------
"tn25def.inc" .equ F_CPU = 8000000 ; 8MHz .macro warte ldi r16, byte1( @0 / 6 ) ldi r17, byte2( @0 / 6 ) ldi r18, byte3( @0 / 6 ) ldi r19, byte4( @0 / 6 ) _warte11: subi r16, byte1(1) ; 1 Zyklus
-
Thread
Arduino Nachbau (Eigenproduktion)
Nachdem ich die Platinen von Seeedstudio erhalten habe hab ich alle Bauteile aufgelötet und den Atmega16U2 programmiert mit der Arduino-COMBINED-dfu-usbserial-atmega16u2-Uno-Rev3.hex und die fuses richtig gesetzt - hat alles geklappt (habe dazu eine Buspirate verwendet). Als nächstes habe ich noch den
Quarz und Bootloader? Hab folgende Fuses: lfuse: FF hfuse: DE efuse: 05 Device signature: 0x1e950f Das müsste also stimmen. Hab folgenden Quarz verwendet: http://www.farnell.com/datasheets/118455.pdf genaue Bezeichnung lautet RALTRON AS-16.000-18 QUARZ,16M, 18PF CL, HC49/4H . Hab die Ausgabe
-
Thread
Z80 Mikrocomputer Bastelei
Es wird immer 4,8 und 16bit Controller geben, auch wenn irgendwann mal Quad-Core 2Ghz Controller in 1x1cm BGA Gehäusen verfügbar sein sollten. Nur dir Architektur wird nicht stehen bleiben. Der 8051 ist der einzige Kern für
Evaluierungsboard für den Z80380 gibt es auch immer noch zu kaufen (habe 2 Stück davon). Und die Software (CP/M) ist inzwischen fast vollständig public Domain. Wer sich eine eZ80F91 (Stück 5 Euro) CPU-Karte bastelt, der hat 16MB linear adressiertes RAM (asynchrones SRAM). Mal ehrlich, wenn ich das schon
-
Thread
einfaches AD-Wandler Programm in Assembler
die dir helfen sollen) auch am nächsten Tag noch, was die einzelnen Bits bedeuten: [avrasm] ldi r16, (1<<ADEN) | (1<<ADIE) | (1<<ADPS2) | (1<<ADPS1) | (0<<ADPS0) ;// adc enabled, interrupt enabled, prescaler div factor 64 out ADCSRA, r16 [/avrasm] und... BenBu schrieb im Beitrag #4587012:
Nachfolgendes läuft auf dem ATmega16A, in Anlehnung an das Originalprogramm; ich habe keinen ATmega8, es sollte auf diesem aber auch funktionieren. [avrasm] .include "m16Adef.inc" .def tmp0 = r16 .def tmpi
-
Thread
ATmega8 und RS232
besitzt, mußt du deine Eingabe blind machen und mit der RETURN-Taste abschließen. $crystal = 16e6 Open "COMD.6:9600,8,N,1,INVERTED" For Input As #1 Open "COMD.5:9600,8,N,1,INVERTED" For Output As #2 Dim Text$ As String * 16 Print #2 , "Test" Do Print #2 , "Name: " ; Input #1
screwdriver schrieb: > Rmin= (15V-Vcc)/1mA= 1000R für Vcc= 5V in der Eingangsleitung Sollte heißen: Rmin= (15V-Vcc)/1mA= 10K für Vcc= 5V in der Eingangsleitung
-
Thread
Mit Hardware entprellen
Mike1996 schrieb im Beitrag #5322059: > Ich programmiere einen Arduino UNO mit 16MHz. Dafür ist die einfache RC-Schaltung durchaus nicht perfekt. Die Hysterese am Eingang eines ATmega liegt bei grob 1/10 VCC. Je nach Qualität des Tasters kann das Eingangssignal beim Betätigen des
Software gemacht wird. Warum gönnt man seiner > Schaltung nicht einfach ein RC-Glied und gut? m.n. schrieb im Beitrag #5322410: > Dafür ist die einfache RC-Schaltung durchaus nicht perfekt. Die > Hysterese am Eingang eines ATmega liegt bei grob 1/10 VCC. Je nach > Qualität des Tasters kann das
-
Thread
USB-Stick am Mikrocontroller VNC1L
bei segor 13,90€ http://www.segor.de/suche.shtml?foto=1&Q=VNC1L-1A&M=1
gerne dazu benutzen um einen Datenlogger zu bauen. Das Board ist soweit fertig. Den Kern bildet ein Atmega16L, der über SPI mit dem VNC1L kommunizieren soll. Was sind denn die spezifischen Änderungen im Quelltext die vornehmen muss, damit erstmal dein Testprogramm laufen würde? Viele Grüße Andi
-
Thread
AVR-Assembler programmieren mit Raspberry Pi 3
installiert Ich haben nun ein erstes Assembler programm mit Geany geschrieben: [avrasm] .include "m32def.inc" ldi r16, 0xFF out DDRA, r16 ldi r16, 0b01010101 out PORTA, r16 ende: rjmp ende [/avrasm] Ich habe die Datei als "helloworld01.asm" abgespeichert. Mit "avra helloworld01
vielleicht verkrüppelt ist. Bei mir erzeugt Avra 1.3.0 zusammen mit dem verlinkten m32def.inc aus dem folgenden Testprogramm nach der Ausgabe von 7 Pragma-Warnungen eine korrekte Hex-Datei. Source: [avrasm] .include "m32def.inc" ldi r16,0xff
-
Thread
ATMEL stellt grafische Oberfläche für 8 bit Controller vor
ATMEL stellt eine grafische Programmier-Oberfläche für 8 bit ATMega's vor, sogar der Arduino UNO wird explizit unterstützt. Release Date soll der 1. Mai sein. http://avrtools.no/Main.asp?page=2 Jetzt bin ich ja mal echt gespannt auf eure Reaktionen, weil die
AchWieLustig schrieb im Beitrag #3630073: > ATMEL stellt eine grafische Programmier-Oberfläche für 8 bit ATMega's > vor, Ach... Ich hatte beim Lesen der Überschrift an ein GDI und eine Klasenbibliothek grafischer Elemente für Atmels µC gedacht ... und nun sowas. Das erinnert mich ein bissel an PSOC1
-
Thread
AVR Dragon + verschiedene Entwicklermodule
Bis auf AL-UC3AEB ist noch alles zu haben: 1 x AVR Dragon NP 55,95 EUR -> VK 42 EUR 1 x Crumb644 von chip45 NP 34,45 EUR -> VK 25 EUR 1 x AL-AVREB mit ATmega128-16U von ALVIDI NP 27,90 EUR -> VK 21 EUR 1 x M644LCD50 ohne LCD mit Info-CD von
> auch nicht schlecht! USBasp leider nicht mehr verfügbar. Nur noch folgendes ist zu haben: 1 x Crumb644 von chip45 NP 34,45 EUR -> VK 25 EUR 1 x AL-AVREB mit ATmega128-16U von ALVIDI NP 27,90 EUR -> VK 21 EUR 1 x M644LCD50 ohne LCD mit Info-CD von Paktek NP 25 EUR -> VK 18,50 EUR fotos
-
Thread
GPS daten in den ATMEGA 128
hallo Habe noch folgendes Problem die Daten kommen so rein es sieht so aus als ob der Atmega nicht hinterher kommt GPGGA,235947.000,0000.0000,N,00 00.0000,E,017*00 ,071000,,*1C ,M,,N,,K*4E GPGGA,235947.000,0000.0000,N,00 00.0000,E,0170 ,,,071000,,*1C ,,N,,K*4E GPGGA,235947.000,0000.0000,N,00 00.0000,E,01700 ,,071000,,*1C M,,N,,K*4E GPGGA,235947.000,0000.0000,N,00 00.0000,E,017038,M,,,,0000*00 000,*4C C,235947.000,V,0000.0000,N,0000 .0000,E,,,017*1C GPGGA,235947.000,0000.0000,N,00 00.0000,E,017038 ,071000,,*1C
-
Thread
Ähnlicher (gleicher) ersatz für 80c537
des Programmspeichers) bis 66 MHz. http://www.sinowealth.com/ hat neben mit A/D und RC Takt und 7*80mA Ausgängen erweiterten 2051/4051 auch beispielsweise den SH79F3212 mit 13 x 12 bit A/D, 1% genauem RC Takt, 8 x Touch-Key, 7 x 100mA Ports und I/Os mit wählbar 75/100/150/300 Ohm für 10,20,30,40 mA LED Strom in SOP20/SOP28. https://www.silabs.com/ bietet 14-bit 1MSPS A/D oder 16*12bit A/D 4*12bit D/A, 64 I/O und 64k Flash+4k RAM oder den C8051F4 mit 100MHz, http://www.analog.com/ hat den ADUC824/834 mit 24bit A/D, 3 x 16 bit A/D, 12 bit D/A, PWM und 62k Flash
-
Thread
Verbrauchsanzeige für's Moped
bei Fragen hier schreiben. Wie sieht es denn jetzt mit der Berechnung aus? Wie kann ich in dem Atmega8 16Bit Berechnungen durchführen insbesondere mit den beiden Registern r0 und r1 als Ergebnis einer Multiplikation und Berechnungen mit Kommazahlen und diese dann an das Display schicken? Liebe Grüße
Hi >Wie kann ich in dem Atmega8 16Bit Berechnungen durchführen insbesondere >mit den beiden Registern r0 und r1 als Ergebnis einer Multiplikation... Siehe: http://www.atmel.com/dyn/resources/prod_documents/doc1631.pdf http
-
Thread
I2C Display einfache Frage
Joachim B. schrieb im Beitrag #8015791: > doof > nur wenn Flash und RAM ausgehen (ATmega328*) deswegen mag ich den m128p Falls ich nicht zu viele Pins bei AVR brauche, nehme ich immer ATmega1284P. 128 k Flash, 16 k SRAM, JTAG möglich. Auch 0,8 mm Raster ist lötfreundlicher als 0,5 mm
~(1<<1); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); } }[/c] Mit 16 MHz Quarz ist das genau 1 MHz. Für so etwas ist Arduino ideal.
-
Thread
Junkers HT-Bus Heatronic 3 Schnittstelle
00 20 00 A0 00 0F 00 21 00 A1 00 30 00 B0 00 11 00 12 00 10 00 90 00 13 00 18 00 B0 00 11 00 12 00 10 00 90 00 13 00 18 00 98 00 20 00 A0 00 14 00 21 00 A1 B0 00 15 00 16 00 10 00 90 00 17 00 18 00 98 00 20 00 A0 00 19 00 21
Hallo, z.Bsp: 90 00 06 00 0c 02 10 1c 23 00 02 00 c1 00 0e bedeutet: 90 FW100 sendet 00 an ALLE 06 die Zeit 00 Index 0c Jahr (2012) 02 Monat (Februar) 10 Stunde (16) 1c Tag (28) 23 Minuten (35) 00 Sekunden (00) 02 Wochentag
-
Thread
3-Kanäle PWM messen
m.n. schrieb im Beitrag #4655155: > Wenn Du Timer1 verwendest, kannst Du die ADC-Eingänge als input-capture > Eingänge verwenden. Dazu muß noch der Analogkomparator aktiviert werden. Danke, das wäre
Subtraktion korrekt berücksichtigt. Für die Erfassung eines PPM Signals sollte eine Auflösung von 1µṣ bei weitem ausreichen und läßt bei Verwendung eines 16-Bit Timers mehr als genug Luft. Dann hat man 1000 bis 2000 Ticks des Timers pro Impuls. Und eine Auflösung von 0.1% respektive 10 Bit.
-
Thread
Assembler lernen für Mikrocontroller-Programmierung
Vektortabelle .ORG INT_VECTORS_SIZE ;Programmadresse nach den ganzen IRQ-Vektoren _RESET: ldi a,1<<CLKPCE ;Vorbreitung zum Aendern des System.. sts CLKPR,a ;..auf 1Mhz / 2 bzw. CLKPR = 16.. ldi a,1<<CLKPS2 ;..nun den Systemtakt ( 8 Mhz ) durch 16.. sts CLKPR
Lothar M. schrieb im Beitrag #6155762: > Was kommt bei dieser Rechnung heraus: > ~1<<CLKPCE|1<<CLKPS2|1<<CLKPS1|1<<CLKPS0 > Wie sind die Prioritäten der drei Operanden? > Wenn du das nicht sofort sicher sagen
-
Thread
Ungenaue Spannungs Messung Atmega644
Mike J. schrieb im Beitrag #4834557: > Ich nehme immer 10µH und 100nF+4,7µF+4,7µF. > fg = 1/(2*pi*sqrt(0,00001*0,0000095)) = 16,3kHz also ein PI Filter? warum FG bei 16kHz? ich würde bei L und C großzügiger sein, wüsste nicht warum 16kHz Impulse noch mit 70,7% f(U/fg) durchkommen sollen
1 V sinken, außerdem nehmen wir an, dass wir Vcc fest einprogrammiert haben, der Atmega also gar nicht merkt, dass Vcc nicht mehr 5 V sondern nur noch 4 Volt sind. Jetzt bekommen wir 769 Counts, der Atmega
-
Thread
Atmega32 verfused?
Ich habe gerade einen Atmega32 mit 16MHz externen Quarzoszillator gefused und geflasht. Dies hat wunderbar funktioniert. Ein Testprogramm konnte ich ohne Probleme zum laufen bringen. Programmiert habe ich es mit dem AvrIsp mkII
So wie ich das erkenne, ist ein Haken eine "0" und kein Haken eine "1". Somit wird nach folgendem Bild http://www.mikrocontroller.net/images/atmega8-nachher.png Crystal Oscillator 3.0 - 8.0 Mhz, slowly rising power. eingestellt. Im Text ist aber die Rede von
-
Thread
Timerinterrupt alle 62.5Hz
} Verwendet wird ein Atmega328P + 16MHz Quarz
Spieker schrieb im Beitrag #3742098: > m.n., das mit den Intervallen aus den Programmen habe ich nicht > verstanden, was du damit meinst. Bleiben wir beim obigen Beispiel mit 1/64 Vorteiler und 62500µs für die gewünschten 16Hz. Um die
-
Thread
Audio ausgeben mit µC
; // Flag fuer Puls = 0 SPI_PORT |= (1<<SPI_SS); ton_0 += kton_0; // max MSB = 240 if((unsigned char)(ton_0 >> 16) >= 0xf0) ton_0 -= 0xf00000; bb = (ton_0 >> 8)&& 0x1ff; aa = 0; if(FLAG_REG & (1<<F_GED16)) aa = ged_16
) >= 0xf0) ton_0 -= 0xf00000; bb = (ton_1 >> 8)&& 0x1ff; aa = 0; if(FLAG_REG & (1<<F_GED16)) aa = ged_16[bb]; if(FLAG_REG & (1<<F_PR8)) aa += pr_8[bb]; while(!(SPSR & (1<<SPIF))); aa = aa >> 1; aa = aa >> 1; aa = aa
-
Thread
Zugriff auf SRAM Speicher in Assembler
<avr/io.h> .text .global init_usart, usart_transmit_byte init_usart: ldi r16, lo8(51) out UBRRL, r16 ldi r16, hi8(51) out UBRRH, r16 ldi r16, (1<<RXEN) | (1<<TXEN) | (1<<RXCIE) out UCSRB, r16 ldi r16, (1<<URSEL)|(1<<USBS)|(3<<UCSZ0) out
ausgeführt sondern mittel avr-gcc und als Parameter -mmcu=atmega32 übergeben, wie beim Compilen. Und jetzt funktioniert das Ganze. Was mich jetzt aber wirklich irritiert ist, dass wenn ich nach dem erfolgreichen Linken wieder auf avr-ld umstelle und "-m avr5" oder
-
Thread
Codesammlung und Tutorial
zumindest besser als so (ja, wieder nur (m)eine Meinung) Zum anderen sind zwischen Code und Signalplot (+ Erklärung) leider ab und an Unstimmigkeiten: "ATMega16 Timer0 Normal" -> - DDRA wird genutzt, Kommentar sagt "Set PB3 as Output"
damit zu rechnen der Kommentar ist falsch) - Bei der Legende zum Plot wird auch von "PB0" und "PB1" gesprochen, PA0 und 1 dürften gemeint sein Ich gehe nicht alle Seiten durch, diese Unstimmigkeit ist aber auch anderweitig zu finden (noch bei ATMega8->Timer0 Overflow -> hier sprichst du beim Plot