-
Thread
ATTiny 2313 - externer Oszillator nötig ?
Richtig! Interner calibrierter Oszillator 4 MHZ oder 8 MHZ ... siehe Datenblatt auf www.atmel.com Ich bin feiern tschöö! Grüße Cpt
schnelle Frage. Ich möchte ein Nokia 3310 Display mit einem Attiny2313 ansteuern. Genügt dazu der interne Oszi oder brauche ich da einen bestimmten externen Oszillator? Habe bisher noch nicht mit dem SPI gearbeitet, daher hab ich keine Ahnung wie das abläuft. Muss da wie beim USART eine feste Taktfrequenz
-
Thread
ATMEL (Microchip) erhöht die Preise
Jörg W. schrieb im Beitrag #4590960: > Erst, wenn man auf die Idee kommt, dass der interne 128-kHz-RC-Oszi > wohl zugleich der Watchdog-Oszillator ist Datenblatt Seite 3. Und wenn man einen Watchdog-Reset so knapp einstellt, daß 10% Abweichung ihn schon aushebeln, sollte man vielleicht
#4591000: > Jörg W. schrieb im Beitrag #4590960: >> Erst, wenn man auf die Idee kommt, dass der interne 128-kHz-RC-Oszi >> wohl zugleich der Watchdog-Oszillator ist > > Datenblatt Seite 3. Meinst du den kleinen, unscheinbaren Pfeil vom Watchdog-Oszillator in die Taktversorgung? Ehrlich,
-
Thread
ATMega88 Bluetooth Modul kann nicht empfangen
vorhergehenden Arbeit, bei der das Modul einwandfrei gearbeitet hat. Am Modul sollte meiner Meinung nach der Fehler also nicht liegen. An das BT-Modul werden lediglich die TX- und RX-Leitungen sowie die Versorgungsspannung angeschlossen. Die Anbindung an den uC erfolgt über die UART-Schnittstelle. RX wird mit TX
BAUD_ERROR ((BAUD_REAL*1000)/BAUD) #if ((BAUD_ERROR<990) || (BAUD_ERROR>1010)) #error Systematischer Fehler zu groß! #endif void uart_init(void) { UBRR0 = UBRR_VAL; UCSR0B |= (1<<RXEN0)|(1<<TXEN0) ; UCSR0C = (1<<UCSZ01)|(1<<UCSZ00); } int uart_putc (char data, FILE* stream) { while
-
Thread
W5500 SPI Antwortet nicht
Schaltung nicht mit dem Oszillator vom Standard Board.
mir die Alarmglocken. Wie stellst du "fehlerhafte Pakete" fest? Wie ist das zu verstehen? Fehler auf der Netzwerk-Ebene werden ja vom internen TCP korrekt abgehandelt sodass der User nichts davon mitkriegt. Wenn du aber Fehler bei der SPI-Übertragung findest dann wär's schlimm ...
-
Thread
2. Serielle am ATmega328P mit 115200
und einen > Mikrocontroller Programmieren als I2C Slave. Natürlich stimmt das nicht. M328P internen Oszillator kann man auf 1% genau kalibrieren, was für SoftUart vollkommen ausreicht. Und Soft-Tx läuft ohne Probleme, sofern man während des sendens Interrupts sperrt. Das sind pro Byte
man aber ein Baudratenquarz für die 115,2k, z.B. 7,3728MHz. Genau. 115Kb mit 8MHz und Hard-Uart ist sowieso ein ganz schlechter Ansatz - Fehler liegt zwischen +8,5% beim U2x=0 und -3.5% beim U2x=1. Das funktioniert nie und nimmer zuverlässig - wenn überhaupt.
-
Thread
Verbindung zwischen PC und MSP430 über Hyperterminal -> UAR
der uart sieht gut aus, da vermute ich keinen fehler... gruß
ACLK geht nich? Also kein 32Khz Quarz auf dem Board, oder wie? Wenn man mit der UART arbeiten will, sollte man den schon drauf machen. Dann kann man mit dem DCO immer noch bequem den takt hochsetzen, aber ohne den Quarz läuft der MSP mit dem internen RC Oszillator bei ~800Khz. Und das
-
Thread
8051 Entwicklungsboard
Geht nur mit µC die per Bootloader über UART sich ISProgrammieren lassen. P.S. Hab ich es schön formuliert?
also ich hab meinen fehler gefunden. hatte meine schalter vertauscht resat war bei mir PSEn und andersrum.
-
Thread
Microcontroller Board welches wofür?
USB-Serial-Adapter). Desweiteren solltest Du dann auch einen Baudratenquartz verwenden, da die internen Oszillatoren nicht sonderlich genau sind. Nützlich ist so eine Kommunikation auch beim Testen der Software, um sich z.B. Zwischenwerte, Statusmeldungen, Traces, etc. ausgeben zu lassen, das spart
von de rTaktfrequenz, NICHT der Qurzfrequenz ab) NAtürlich haben die Pics auch einen internen Oszillator der anstelle eines externen Quarzes die REferenzferquenz liefern kann (ebenfalls bis 64MHz/48MHz) Bei vielen PICs reicht die Genauigkeit sogar für schnelles UART ohne Quarz völlig aus.
-
Thread
USART nur mit Delay möglich?
Habe gerade keinen 16 MHz Takt zur Hand, nur den internen RC-Oszillator mit 8 MHz, sodass sich 9600 Bd stattdessen ergeben. Damit funktioniert dein Test mit und ohne delay problemlos. Habe auch mal spaßeshalber das Zeichen in jedem Durchlauf hochgezählt
http://www.mikrocontroller.net/articles/AVR_Checkliste#UART.2FUSART
-
Thread
rs232 mit mega8 funktioniert nicht :(
Wieder Einer, der vom ungenauen internen RC-Oszillator Wunder erwartet... Den Rest des Programms habe ich mir dann gar nicht mehr angesehen. ...
sein soll. Das gilt allerdings nur für Quarz, nicht für internen RC-Oszillator, dessen zulässige Abweichungen von der Nennfrequenz einfach zu hoch sind. Mit internem RC kann es (bei Zimmertemperatur) mal funktionieren, muss aber nicht. Das ist einfach Lotto...
-
Thread
AVR Synthesizer mit ATxmega128A1
Ein kleiner Bericht woran ich am "DE-GENERATOR" zur Zeit noch arbeite bzw gearbeitet habe: - Fehler in der Encoder-Routine beseitigt. Fehler verursachte Software-Abstürzen im Oszillator Menü. - Fehler bei der Editierung von Parametern im Oszillator Menü beseitigt. - Notenhänger im Envelope Menü
im Schaltplan vertauscht Vers. 3.013 21.02.2017 - Fehler in der Encoder-Routine beseitigt. Fehler verursachte Software-Abstürzen im Oszillator Menü. - Fehler bei der Editierung von Parametern im Oszillator Menü beseitigt. - Notenhänger im Envelope Menü
-
Thread
Komischer Fehler im Amiga 500
die UART /sofort/, und unterbrach das gerade gesendete Zeichen, statt dessen Übertragung noch abzuschließen. Und das war wohl nicht das einzige Problem, das diese UART hatte. Bessere UARTs hätte es damals
werkelten komplette RS232-Chips mit HW-Handshake. > > Du meintest vielmehr die auf der Karte verbauten UARTs, das sind die ... > Diese UARTs sind Abkömmlinge der Rockwell-UART 6551. ... > Wenigstens das Original hatte wimre einen deftigen Hardwarefehler, der Ja genau, die Hardware-Handshakesignale
-
Thread
MSP430 Timing Probleme
Es fehlt die gesamte Initialisierung der Takterzeugung. Ohne die wird der MSP430 vom internen RC-Oszillator "DCO" mit einem Takt von irgendwas um 1 MHz versorgt. Du musst klären, was die Taktquelle sein soll DCO LFXT1 im NF- oder HF-Modus XT2 und entsprechend die Register
Dir 32 kHz zu sein, damit versorgst Du sowohl den Timer_A als auch den Baudratengenerator Deiner UART. Für MCLK und SMCLK verwendest Du hingegen den DCO. Und den ADC steuerst Du mit einem weiteren internen Oszillator, dem ADC12OSC an. Wenn der ADC-Takt, der Prozessortakt und der Timertakt nicht
-
Thread
RGB LED mit PWM steuern
ist im Prinzip jeder AVR Mikrocontroller mit genug Pins ausreichend - als auch der ATmega8. Der interne RC Oszillator mit seinen 8 MHz ist prinzipiell auch gut genug, allerdings wird für eine zuverlässige UART Kommunikation oft und gerne ein "echter" Quarz empfohlen, um nicht den Ungenauigkeiten des
, wenn ich an einem weiteren Pin 5V anlege? Karol Babioch schrieb im Beitrag #3767402: > Der interne RC Oszillator mit seinen > 8 MHz ist prinzipiell auch gut genug, allerdings wird für eine > zuverlässige UART Kommunikation oft und gerne ein "echter" Quarz > empfohlen Was für einen Quarz soll
-
Thread
Wie kann ich die UART des ATmega168 debuggen? - empfange nur Nullen.
@Reto H. (huberret) >> benutzt Du einen Quarz als Taktquelle? >Nein den internen Takt. MÖÖP! Fehler! > Kann das bei dieser tiefen baudrate ein Problem >sein? Ja, denn die Prozentrechung ist da erbarmungslos. http://www.mikrocontroller.net/articles/AVR_Checkliste#UART
Abweichung von 3 Promille feststellen... Nichts für ungut, aber *das* glaube ich Dir nicht. Der interne RC-Oszillator ändert sich ja schon um über 6 Promille bei 10 Grad Temperaturänderung. Seine "Werksgenauigkeit" liegt bei +/- 100 promille; der User kann ihn auf +/- 10 Promille kalibrieren. Du wußtest
-
Thread
UART - Beispiel aus dem Tutorial will einfach nicht laufen :-(
https://www.mikrocontroller.net/articles/AVR_Checkliste#UART.2FUSART
und die takterzeugung mit einem quarz funktioniert nicht! evtl. geht der avr dann zurück auf den internen takt, das weiss ich aber nicht. wenn du einen quarz verwendest stell sicher, dass der interne puffer des avr's auch aktiviert und der oszillator eingeschwungen ist. kann in den fuses mittels einschwingzeit
-
Thread
STM32L052x8 USB mit Bare Metal Code funktioniert nicht. SET_ADDRESS fehlerhaft
zur USB-Logik: https://github.com/kcuzner/led-watch/blob/master/common/src/usb.c Es wird der interne 48 MHz Oszillator mit Clock-Recovery für's USB genutzt. Der Core/Peripherie läuft vom internen 16 MHz HSI mittels PLL auf 32 MHz. Das System scheint soweit auch korrekt zu sein. Sobald der STM
mit _internen_ Oszillatoren halte ich immer für wenig stabil und zuverlässig. Ein interner Oszillator wird immer mehr oder weniger stark vor sich hindriften, im Gegensatz zu einem Quarzoszillator. Auch wenn
-
Thread
Exakte Zeit warten für Frequenzmessung?
Läuft der AVR überhaupt mit einem Quarz? Der interne RC-Oszillator ist bei weitem zu ungenau.
B e r n d W. schrieb im Beitrag #3094039: > Läuft der AVR überhaupt mit einem Quarz? Der interne RC-Oszillator ist > bei weitem zu ungenau. Er hat doch gar keine Angaben über die gewünschte Genauigkeit gemacht.
-
Thread
RS485 Mehrere Signalverstärker im Bus gegen Störungen
miteinander verbunden? Welche Baudrate wird verwendet? Werden die Microcontroller bzw. deren UART-Takte mit dem internen RC-Oszillator oder einem externen Quarz bzw. Quarzoszillator versorgt. Sind die Stromversorgungen, insbesondere auch die Leitungstreiber, mit geeigneten Abblockkondensatoren
wird verwendet? > 9600. Reicht für mich völlig aus. > Werden die Microcontroller bzw. deren UART-Takte mit dem internen > RC-Oszillator oder einem externen Quarz bzw. Quarzoszillator versorgt. > Externer Quarz mit 16MHz, angelehnt an den Arduino Uno. > Sind die Stromversorgungen, insbesondere
-
Thread
Minimalbeschaltung Mega8
Ein neuer Mega8 läuft mit internem RC-Oszillator mit 1 MHz. Ein zum myAVR-Board mitgelieferter Mega8 ist auf externen Quarz 3..8 MHz eingestellt, damit die UART-Schnittstelle des Boards funktioniert. Wenn Dein Mega8 also von myAVR.de
Abblock-Kondensatoren (100nF) für Vcc und AVcc auch noch einen Quarz von z.B. 3,6864MHz (oder 4MHz, wenn UART nicht so wichtig ist) und die beiden Kondensatoren um die 22pF am Quarz gegen GND. Alternativ kannst Du den Mega8 wieder auf internen Oszi zurückfusen, damit solltest Du Dich aber erst befassen,
-
Thread
AtMegaL mit 14,7456MHz Quarz und XDIV
Nehm doch den internen Oszillator auf 8 MHz und trimm den auf deine 7,3728MHz. Mit einem Uhrenquarz am Timer0 und fortlaufender Nachregelung bleibt die Frequenz für RS232 genau genug. gruß hans
Mittels eine 32 kHz Uhrenquarzes den internen Oszillator trimmen ist nicht ungewöhnlich. Das wird unter anderem selber von Atmel auf dem Butterfly-Evalboard gemacht. Und es gibt auch entsprechende allgemeine App.-Notes von Atmel dazu http://atmel.com
-
Thread
IRMP - Infrared Multi Protocol Decoder
Hi Peter, Peter Kostov schrieb: > Mit 8Mhz internem Oszillator hatte ich massive Probleme mit dem Timing, > (gleiche Tastendrücke führen zu unterschiedlichen Codes). Nun, mit 16MHz > externem Quarz läuft es wesentlich besser. Interessant, die
Der Falsch erkannte Code ist "characteristisch" für die Taste und jedes mal der gleiche, wenn der Fehler auftritt. Der Fehler dürfte ziemlich sicher in IRMP liegen. Habe testweise einen Controller nur mit IRMP geflasht. Den Code habe ich nur um eine simple UART-routine erweitert, die die erkannten codes
-
Thread
GCC + Interrupt
Ich meinte eher, wo die 4MHz herkommen. Falls das der interne RC-Oszillator ist, brauchst du dich über so eine Ungenauigkeit nämlich gar nicht wundern.
> Habe es mehrfach probiert. Ist halt kein Windows. :-)) Der Fehler ist nicht zufällig, sondern systematisch. > Wenn ich in der ISR das T++ for die If-Schleife schreibe, will mein > Uart nicht mehr senden! Ja klar. Jetzt, nachdem ich da nochmal draufgeguckt
-
Artikel
AVR-Tutorial: UART
nicht! Auch ist der interne Oszillator temperaturempfindlich. Damit hat man dann den schönen Effekt, dass eine UART-Schaltung, die im Winter noch funktionierte, im Sommer den Dienst verweigert. Außerdem muss bei der Berechnung
die folgenden Macros. Die rechnen sogar den Fehler aus und brechen die Assemblierung ggf. ab. Das ist dann praktisch idiotensicher. Wer dennoch den internen RC-Oszillator verwenden will, muss diesen kalibrieren. Näheres findet man dazu im Datenblatt
-
Thread
AT91SAM9XE läuft nicht an
habe mir selbst ein Board gebaut. Ich kann über einen Jumper zwischen Externen Oscilator und internem wählen. Wenn ich den Internen wähle, kann ich nicht Programmieren. Wenn ich den Externen Wähle kann ich zwar Programmieren aber der Kontroller startet nicht. Kann mir jemand sagen woran das
hallo max, ich vermute mal dass der j-link mit dem ungenauen internen rc-oszillator nicht zurecht kommt bzw. die initialisierung des clock-systems damit nicht funktioniert. ich würden mal den ext. 32khz quarz einsetzen. damit funktioniert das programmieren ja offensichtlich
-
Thread
AVR Bootloader in C - Artikel
du pos./neg. Erfahrungen/Empfehlungen zur Verwendung eines seriellen Bootloaders, wenn mit dem internen RC-Oszillator (statt genauerem externen Taktgeber) gearbeitet wird?
pos./neg. Erfahrungen/Empfehlungen zur Verwendung eines > seriellen Bootloaders, wenn mit dem internen RC-Oszillator (statt > genauerem externen Taktgeber) gearbeitet wird? bei 9600 Baud mit ca. 0.2% Fehler geht es mit dem internen Takt von 8Mhz wunderbar, mit 19200 Baud auch. Die Baudratentabelle
-
Thread
Einfuss Jitter auf Audiosignal
möchte eine PLL für das Audiointerface. Ich hatte mal von Audio Enthusiasten gehört, die extra den Oszillator in cd Spieler getauscht hatten, für eine bessere Audioqualität. Deswegen wollte ich wissen ob ein 0815 Oszillator sich stark auf die Qualität auswirkt.
sein soll, dann schau nach Oszillatoren, die extra für Low-Jitter designed wurden. Ein Beispiel wäre Si570.
-
Thread
AVR Synthesizer Konzept
immer beschränkt. Der Grund ist, dass diese Hardware-Synthesizer nur eine beschränkte Anzahl von Oszillatoren (Stichwort VCO, DCO) haben. Dabei gilt im einfachsten Fall 1 Stimme=1 Oszillator. Kann aber bei komplexen Synthesearten auch 1 Stimme = 1-n Oszillatoren sein. Bei Software-Synthesizern ist die Anzahl
Ich musste leider feststellen, dass ich keinen 16MHz Quarz habe, deswegen hab ich erstmal die internen 8Mhz des Atmega88 genommen. > Mit einem Tiny85, der mit internem Takt von 8 MHz rattert, erreichst Du > dank interner PLL für Timer1 eine PWM-Frequenz von 250 kHz. Diese lässt > sich schon etwas
-
Thread
ATMega 8 nach einem Beschreiben Tod
define F_CPU 1000000UL #endif Fuer die delay Routinen. Kann es sein dass ich mir hiermit den internen Oszillator deaktiviert habe? Was kann ich tun um herauszufinden ob der interne Oszillator noch schwingt? Desweitern habe ich einen Watchdog mit den C Funktionen auf 30ms gesetzt. Kann es sein,
.. :-) Programm ist mittlerweile fertig. und beim debuggen musst ich feststellen das sich der interne 1MHz Osz. absolut nicht fuer UART eignet. 2400baud war das hoechste aller Gefuehle :-(
-
Thread
UART Probleme
müsste dann wohl heisen das der interne Quarz den UART steuert.
Der interne Oszillator ist nicht genau genug, jedenfalls nicht ohne Kalibrierung. Stell am besten auf den externen Quarz um: http://www.mikrocontroller.net/tutorial/io-basics.htm
-
Thread
attiny2313, USART mit interner Clock, Fehler sobald Timer aktiviert
Beitrag #3681352: > Ist die Lösung in diesem Fall einen externen Quarz zu verwenden oder > liegt der Fehler woanders? Mit dem internen Oszillator kriegst du weder eine fehlerfreie Datenübertragung noch eine genaue Sekunde hin. Also was soll der ganze Aufwand? Natürlich brauchst du einen Quarz. mfg.
wunder mich nur, dass die Übertragung im einen Fall so perfekt funktioniert trotz Verwendung des internen Oszillators. Daher dachte ich, ich hätte im anderen Fall einen Fehler gemacht und es läge eventuell nicht daran, dass ein externer Quarz fehlt. Ändert sich die Frequenz des internen Oszillators
-
Thread
RC-Oscilator mit myAVR atmega88
zwar nicht das Problem... aber ich bin gerade dabei einen Sensor aufzubauen, der sein Ergebnis per UART verschickt. Das wesentliche: Ich bin in mehreren Tests nicht mit einem RC-Oszillator hingekommen, trotz (recht) langsamen 1200 Baud. Erst mit einem 2 MHz Quarz scheint es stabil zu funktionieren.
Man muss beim internen Takt nur auf die Kalibrierbedingung achten: bei den meisten Chips Vcc = 5 V, Tamb = 25 °C, falls mehrere Frequenzen möglich sind, ist der Oszillator für 1 MHz automatisch kalibriert. In diesem
-
Thread
Transistortester AVR
Toleranzen bei der Kapazitätsmessung liegen neben der Toleranz des Oszillators auch an der Toleranz der internen Spannungsreferenz (nominell 1.3V), die vom Komparator verwendet wird. Die Oszillator-Toleranz ließe sich mit der Verwendung eines externen Quarzes kleiner halten. Die Toleranz der internen Referenz
Ja, der 328 ist pinkompatibel. Du musst halt mit dem internen Oszillator arbeiten oder einen Quarz auf die Unterseite pappen. ISP ist auch nicht drauf, also extern programmieren.
-
Thread
Zeitgesteuertes Schalten eines Verbrauchers ohne Mikrocontroller
wieder > anschaltet. Was die Schaltung wohl so komplex macht das ein µC einfacher ist (der hat internen Speicher der auch nach ausschalten den Wert behält). Wenn es darum geht das die Kenntnisse zum programmieren fehlen wird sich bei der einfachen Funktion vermutlich jemand finden lassen der das macht
Uhrenquartz betreiben, oder ihn nur über den Uhrenquartz aufwecken lassen, um ihn dann mit dem internen RC-Oszillator zu betreiben.
-
Thread
UART mit MSP430F413 9600 Baud
man auch Taktabfall (analog zum Spannungsabfall) :-) ich nehme mal an, Du hast irgendeinen RC-Oszillator aussen dran hängen. Ist natuerlich bedenklich als Basis fuer eine UART-Kommunikation. In diesem Zusammenhang eine recht interessante Geschichte, die TI bei den aktuell in Produktion gehenden MSP430Fx2xx realisiert. TI vermisst im Werk den internen Oszillator und legt die Kalibrierwerte im Flash ab. Diese Werte sollen zusammen mit 2% Stabilitaet ueber den gesamten Temperaturbereich dafuer sorgen, dass man den internen Oszillator ohne Probleme
-
Thread
Beispielprogramm für RFM12 433MHz Funk-Module
Meine Module werden vom Mega8 mit internen Clock 8 Mhz gesteuert. Ist das ein Problem das die Module mit internen Clock laufen? Hab die mit 19200Baud laufen. Ist es wie bei UART das man 0.2% Fehler hat? oder ist es da egal? Soll ich lieber
wie schalte ich das Modul in den Standy, also den Sende- und Empfangsteil ab, sodass nur noch der interne Oszillator des Moduls läuft und wie schalte ich dann den Sende- bzw. den Empfangsteil wieder an? Danke im Voraus Chris
-
Thread
ATmega16 UART: Bits vertauscht?!
externen Quarts auf meiner Platine vorgesehen und verwende den Internen. Da scheint es einfach zu große Fehler/Abweichungen zu geben, da man die interne Clock ja nur auf 1MHz, 2MHz ect. einstellen kann und nicht auf Kommawerte. Ich werde das jetzt nochmal mit einer
Mit der Oszillatorkalibrierung kann man den internen Oszillator schon noch ein wenig hin und her schieben. Allerdings wirst Du mit der Temperaturstabilität nicht sehr viel Freude haben. Bei zeitkritischen Dingen (der UART gehört bei größeren Baudraten
-
Thread
UART Bridge des mySmartUSB MK2
Schade, kein Reset :-( Fuse mal auf den internen Oszillator um auszuschließen dass der TX den Takt 'abwürgt'.
Auch wenn der interne Oszillator aktiviert ist, hängt sich der Controller auf. Ich habe vom TX Pin zu seinen Nachbarn sowie zu V+ und GND gemessen: kein Kurzschluss. Nun habe ich mal den PD1 Pin (= TX Pin) jede Sekunde
-
Thread
STM32 USB Übertragungsproblem mit Code von S.F.
dann bei 20 Modulen funktioniert. > Und es funktioniert wochenlang mit 10 Modulen parallel ohne Fehler. > Der CRS müsste ja komplett daneben sein. Kann sein, dass die falschen CRS Einstellungen den Takt noch mehr verbiegen als wenn es ausgeschaltet ist. Und dass bei 20 Modulen die RC-Oszillatoren
den Absolutwerten aber keine übermäßige Bedeutung beigemessen. Das war offenbar ein entscheidender Fehler. Dennoch bin ich extrem erstaunt, wie 'gut' die nicht nachgetunten RC-Oszillatoren sind.
-
Thread
Mein MCT Programm läuft nicht!
ach ja: interner Oszillator oder Quarz und welche Baudrate? Hast Du den Sender schon mit einem Terminalprogramm getestet ? (Falls Du einen MAX232 verwendest)
dann hast Du auch kein fosc = 3.6864 MHz - ausserdem ist der interne Oszillator relativ ungenau, wenn er nicht kalibriert ist. Entweder, Du hängst einen Quarz dran, damit Du mit 9600 Baud arbeiten kannst, oder Du reduzierst die Baudrate auf 300 - 2400 und lässt
-
Thread
Umstieg Atmega32 auf Atmega324P
/(16*(UBRR_VAL+1))) // Reale Baudrate #define BAUD_ERROR ((BAUD_REAL*1000)/BAUD) // Fehler in Promille, 1000 = kein Fehler. #if ((BAUD_ERROR<990) || (BAUD_ERROR>1010)) #error Systematischer Fehler der Baudrate grösser 1% und damit zu hoch! #endif ISR(USART0_RX_vect) { // USART
Simon schrieb: > Wieso wirkt CKDIV8 obwohl ich nicht den internen oscillator verwende? Weil sie die Voreinstellung des clock prescalers (CLKPR) von 1:1 auf 1:8 ändert. Die neuen AVRs haben nur noch einen einzigen RC-Oszillator, der mit 8 MHz läuft, nicht mehr
-
Thread
Uart empfängt immer das selbe
Framework mache, funktioniert es wunderbar und ich kann auf unterschiedliche Buchstaben reagieren. Mein Fehler wird also vermutlich in der Initialisierung des UART oder der Verarbeitung liegen. Meinen Fehler finde ich jedoch nicht. Ich habe ihn mit vielen Beispielcodes, unter anderem aus diesem Forum, verglichen
zu informieren, dass der µC mit 16Mhz rennt. Das ändert aber am Grundproblem nichts. Mit dem internen Generator (der kein Resonator ist), ist die Genauigkeit der Taktfrequenz schlechter als mit dem externen Generator. Wenn du mit dem Resonator keine saubere UART hinkriegst, dann kriegst du es mit
-
Thread
Frage zu MSP430 Dokumentation für Einstieg
nicht ausprobiert. Muss nur noch die ADC und RTC und EEPROM Emulation anpassen. Da der MSP430 kein internes EEPROM hat werde ich natürlich FRAM dazu nehmen. Anstatt eines sonst üblichen externen RTC möchte ich den internen RTC dafür in Anspruch nehmen. Ein 32kHz Quarz ist ja auf der L.P. Board vorhanden
Rufus Τ. F. schrieb im Beitrag #5604036: > BSL, das ist ein etwas verfrickeltes UART-Protokoll. BSL läuft über UART, I²C, oder USB, je nach Chip. > Das kann jeder MSP430 Außer die ganz kleinen Flash-Modelle, z.B. MSP430G2001.
-
Thread
Auswahl des Quartzes für STM32F7
gilt mal "viel hilft viel"). Seit kurzem gibt es den SIT1630AE-S6-DCC-32.768, einen 32kHz MEMS-Oszillator im SOT-23 Gehäuse. Der ist etwas stabiler als ein unkompensierter Uhrenquarz, von Hand lötbar, braucht max. 3uA und liefert ein Rechteck mit 100ns-Flanken. Die STM32L4 können ihren internen Takt
weil die anderen Peripherien (Ethernet /SDRAM/etc..) die dran hängen im Weg stehen und belegen SPIs/UARTS die ich brauche. @batman ..und seit wann man Quarz mit t schreibt? war selber vewirrt ob mit oder ohne t geschrieben wird. Sorry für den Fehler. Natürlich ohne t. Aber du weisst schon was ich
-
Thread
ATMEGA 16 Crystal
Empfehle 14,7456 MHz - da muss man sich schon anstrengen, damit das Timing Fehler verursacht. Wie ist dein UART konfiguriert? Funktioniert der Empfang von Daten?
reichen mir allerdings bis jetzt immer 38400. Alles natürlich auf einen Quarz am AVR bezogen, der interne RC-Oszillator ist auch mir zu instabil, allerdings habe ich auch schon mal zum Debug damit 19200 stabil bei Zimmertemperatur gemacht, einfach einen Teststring geschickt und den UART-Teiler mal 1-2
-
Thread
Übertragung des Zustandes an PC UART
#include <stdlib.h> #include <avr/io.h> #define WARTEPIN PIND #define WARTEBIT PD0 void uart_init() { UCSRB |= (1<<TXEN); // UART TX einschalten UCSRC |= (1<<URSEL)|(3<<UCSZ0); // Asynchron 8N1 #define F_CPU 8000000 /* Oszillator-Frequenz in Hz */ // Hilfsmakro
); // UART TX einschalten UCSRC |= (1<<URSEL)|(3<<UCSZ0); // Asynchron 8N1 #define F_CPU 8000000 /* Oszillator-Frequenz in Hz */ // Hilfsmakro zur UBRR-Berechnung ("Formel" laut Datenblatt
-
Thread
Anfängerprobleme mit MEGA32
sei(); //Interrupts an //cli(); Interrupts aus } /***********************/ //UART Funktionen void aktiviereUART(void) { UCSRB |= (1<<TXEN); // UART TX einschalten UCSRB |= ( 1 << RXEN ); //UART RX einschalten UCSRC |= (1<<URSEL)|(3<<UCSZ0); // Asynchron
ist oder nicht. Dein Mega32 arbeitet, wenn du an den Fuses noch nichts verstellt hast, mit dem internen Oszillator auf ca. 1Mhz. Wichtig ist nur: Er arbeitet. Gib doch einfach mal ein anderes Bitmuster am Port aus: 0xAA Das ist binär 10101010, dh. immer abwechselnd eine 1 und eine 0. Wenn deine
-
Thread
6502 Emulation auf AVR ?
die Debugumgebung irgendwie anpassen, 20ms-Timer-IRQ für den 6510 aktiv haben und Single-Step mit UART-Ausgabe zu machen, verträgt sich irgendwie nicht so ganz richtig... Ansonsten noch diverse Fehler in der 6510-Emu beseitigt, vor allem das doppelt eingebaute Status-Register mit mal hier - mal da -
>Ich habe noch etliche Fehler in der 6510-Emu gefunden und bereinigt, von >Tippfehlern über Fehler im Ablauf bis zu Verständnisproblemen >meinerseits. So geht's mir mit dem ATMEGA-SID auch. Eigentlich habe ich gedacht, ich
-
Thread
USART. Übertragungfehler.
An der Baudrate. [[AVR-Tutorial: UART]] http://www.mikrocontroller.net/articles/AVR_Checkliste#UART.2FUSART MfG Falk
Am Timing. Entweder das Oszillator-Timing oder das Software Timing. Die Leute wollen es ja immer nicht glauben, aber der interne Oszillator taugt nichts für die serielle Schnittstelle (ja, man kann ihn kalibrieren, nur sind Anfänger
-
Thread
Verständnis Problem bei der AVR- bzw. Harvard- Architektur
.. Ich habe jetzt mal aus meinem Wissen heraus ein eigenes Diagramm entworfen und möchte die internen Abläufe während eines Zyklus hier wiedergeben, in der Hoffnung, dass man mich auf Fehler hinweist und... ich denke ihr wisst worauf ich eigentlich hinaus will. Das Diagramm befindet sich im Anhang
wird entweder der Baudraten-Teiler oder der interne Highspeed-Oszillator nachgestimmt.