-
Thread
MEGA8 ADC Interrupt beeinflusst TWI Interrupt
Hauptschleife integriere, habe ich keinen Zugriff mehr per I2C. Und wenn ich den ADC ohne Interrupt einlese also das Bit (1<<ADIE) nicht setze, dann stürzt er mir ab sobald ich eine Spannung am ADC anlegen habe. Wisst ihr weiter? Vielen Dank für eure Zeit [c] #include <stdlib.h> #include <avr/io.h
// bit is set? #define bic(ADDRESS,BIT) (!(ADDRESS & (1<<BIT))) // bit is clear? #define PORT_ON(port,pin) port |= (1<<pin) #define PORT_OFF(port,pin) port &= ~(1<<pin) //###################### Variablen uint16_t Variable=2345; //Z‰hler uint16_t buffer; uint16_t low,
-
Thread
C versus Assembler->Performance Gesperrt
senden), aber ich sehe schon, welche Richtung das einschlägt... [c] #include "structs.h" #include "Ports.h" #include "LED.h" #include <inttypes.h> #include <avr/interrupt.h> #include <string.h> static uint8_t PS2ReceivedByte; static uint8_t PS2SendByte; static uint8_t PS2SendByteChecksum;
sbi 0x0b, 6 ; 11 . . . . [/c] Modul PS2 (V3) [c] #include "structs.h" #include "Ports.h" #include "LED.h" #include <inttypes.h> #include <avr/interrupt.h> #include <string.h> static uint8_t PS2Byte; static uint8_t PS2Checksum; static uint8_t PS2Watchdog = 0; static uint8
-
Thread
Kleines Tiny13 Sensorboard
: Clock als Taktquelle für den System-Interrupt und darin Daten einlesen.
auch schon den OR Befehl entdeckt? Dann herzlichen Glückwunsch, nur noch 20 Befehle dann kannst du AVR...
-
Thread
[S] AVR-NET-IO - Bausatz oder Fertigmodul, gern auch nur die Platine
Hallo, suche eines von diesen AVR-NET-IO Teilen die es bei Pollin gibt. Platine, Bausatz oder Fertigmodul. Gerne auch gebraucht. (Zusatzfrage ;) --> Kann das Ding ohne kompliziertere Umwege so eingerichtet werden, dass ich auch außerhalb
Ok, hab nen ausführlichen Thread gefunden ;) --> https://www.mikrocontroller.net/articles/AVR_Net-IO_Bausatz_von_Pollin Angebote für das Modul entweder hier oder als PN. Danke :)
-
Thread
I2C Problem mit Acknowledge Polling
Vorgehensweise sondern um die Coderierung. Das I2C Modul des STM32 ist um Längen komplexer als das eines AVR.
. schrieb im Beitrag #4380238: > Das I2C Modul des STM32 > ist um Längen komplexer als das eines AVR. Trotzdem muß man aber den gleichen Ablauf verwenden, wie beim AVR, 8051 oder SW-IWC und kann sich nicht was anderes aus den Fingern saugen.
-
Thread
Ein Paar Fragen zu Analog/Digital Wandlern
einer Parallelen Schnittstelle. Das ganze soll so ablaufen, dass der Clock vom ADC direkt am Quarz vom AVR hängt, also dann auch mit 16MHz getaktet wird. Parallel soll dazu ein Binärzähler hoch zählen. Hat der Binäre Zähler einen gewissen Stand erreicht soll er einen Pin am AVR auf HIGH setzen. Im AVR läuft
Skizze zeigt das ganze Schematisch. Mithilfe von ein wenig 74er Logik habe ich mir einen parallelen Port an den ADC an geflanscht. Parallel kann ich dann das Byte mit einem PORT am AVR wesentlich schneller einlesen. Ausprobiert habe ich das ganze bis 16MHz welche mit einen Quarz + Schmitt-Trigger erzugt
-
Thread
PCINT: Flag Register für die Pins?
Und-Verknüpfung, ein Vergleich und ein bedingter Sprung. > Aber da muss ich mich erst näher einlesen um dies in die IF besser zu > integrieren. Die muss der Compiler integrieren, nicht du.
doch jeden PCINT gleich passend. JAIN PCINT2_vect ist der PinChangeInterrupt eines anderen Port... Beim 2313 gibt es den PinChangeInterrupt "nur" an PortB. Wenn ein anderer AVR z.b. PinChangeInterrupts an mehreren Ports hat (PortC, PortD....) dann hat jeder eigene Port seinen Interrupt Vector.
-
Thread
"Geister"-Takte am LPC1114?
machst du genau eines: du trittst dem Compiler frontal ins Gesicht. Zunächst erst mal eines: Die Port-Hardware der Controller der ARM-Riege ist deutlich anders als die der AVR's. Zusätzlich gibt es noch erhebliche Unterschiede zwischen den verschiedenen ARM-Genrationen, Familien und Herstellern. Sehr
vereinheitlichten Adreßraum für alles haben - und der ist deutlich größer als der Adresßraum, in welchem sich beim AVR die Ports befinden. Deshalb ist es bei allen ARM's nötig, die betreffenden Adressen für das Erreichen diverser Port-Register irgendwann mal in CPU-Registern zu haben - in den OpCode passen sie regelmäßig
-
Thread
Bit-Banging UNI/O-Bus EEPROM mit Arduino-Uno [Fehlschlag]
zu nem Pull-Up Resi geändert. Da ein NoSAK ja kein low-to-high oder high-to-low ist gibt mir das einlesen ja immer den vom Pullup manipulierten Wert wieder. Das heisst selbst wenn was nicht stimmt und anstelle eines SAK ein NoSAK kommt - bekomme ich ja auch nur ne 1. Ist dementsprechend ein Pull-Down
komplett durchgelesen - wo erkennst du denn das mit der Richtungsumschaltung? Oder meinst du das Einlesen des SAK (Slave Aknowledge Bit) ? Also das ich ab der Stelle einlesen anstatt ausgeben muss? Ein festes Timing gibt es auch nicht. Via Start Header Pulse synchronisiert der Slave mit dem Master
-
Thread
Interpeter für einfache Programme gesucht
Beitrag #4208092: > So ne Art Light-Basic ...wie das z.B.: https://www.mikrocontroller.net/articles/AVR_BASIC Grüße Uwe
Es gibt einen Java Interpreter für AVR Mikrocontroller. Um Missverständnissen vorzubeugen: Er interpretert Java Bytecode, also *.class Dateien. Nicht die Quelltexte *.java. http://www.harbaum.org/till/nanovm/index.shtml Ich schätze
-
Thread
TFT_ILI9163C mit Arduino richtig verbinden
keine Ahnung. toggle mal PortB, ob die pins ohne spi gehen. Wenn ja, kannst du es mit bitbanging-spi probieren.
noch jemand was umdreht und eine 1 in ein als Ausgang definiertes Portregister schreiben setzt einen AVR Ausgang eben auf High. Gruß aus Berlin Michael
-
Thread
Vorgehensweise: Mehrere PWM einlesen (Tiny2313)
Evtl. ist die APPNOTE AVR135 was für dich, zumindest zum inspirieren lassen: http://www.atmel.com/Images/doc8014.pdf verwendet aber ICP und hat nur einen Kanal...
Interrupt Pins, 2 Timer) Bei meiner Version reicht da schon ein normaler Pinchange Interrupt über PortB, ich errechne mir die Differenz zwischen der sinkenden und der steigenden Flanken nach dem PWM Abfall und somit kann ich dann halt den ganzen Port nutzen - ist natürlich relativ ungenau aber reicht
-
Thread
High speed am AVR Analogkomparator?
Kann mir mal jemand auf die Sprünge helfen? Ich find's im Datenblatt nicht! Wie schnell ist der Komparator (z.B. im ATTiny85) überhaupt? Kann ich noch mit einem 8MHz-Signal das ACI-Flag Triggern?
-
Thread
Arduino Webserver mit Diagramm
aber als Anfänger nicht durch, das hat bei mir auch ne Weile gedauert und ist gewachsen. zum Einlesen: http://www.ulrichradig.de/home/index.php/software/avr-webserver-software
einem NETIO mit atmega1284p eben man daheim den PC eingeschaltet wie man am Licht sieht der AVR bekommt den Befehl aus dem Webbrowser IE oder FF egal der AVR schaltet einen Port der einen OptoTRIAC und dieser den Zwischenstecker Stecker Schukodose, für 2,45 der Original Schalter wurde per Knopflochchirurgie
-
Thread
ESP8266 SD Card / AES256
at_port_print(dumpmsg); \ } \ at_port_print("\r\n"); } #define dumpc(s, i, buf2, sz) { at_port_print(s); \ for
\ os_sprintf(dumpmsg,"%c ", buf2[i]);\ at_port_print(dumpmsg); \ } \ at_port_print("\r\n"); } #define dumpxk(s, i, buf2, sz) { at_port_print(s); \ for
-
Thread
25L6406 Flashen?
Ich habe den Ollimex AVR-ISP-MK2 erst neu gekauft, und noch nichts damit gemacht... (Habe aber einiges vor...) Nunja, kann ich damit irgendwie RAW-Bytes zwischen PC und SPI schaufeln, bzw. einen "Mk2-Port" öffnen? Also ohne
Also das letzte mal als ich mit PonyProg zu tun hatte war das nur für Seriell/Parallel-Port entwickelt...
-
Thread
Verschiedene Freuenz trotz gleicher PWM.
jeweilgen Leuchtenden LED gleich ist und snychron an einem Ausgang liegt wenn die jeweilige LED bzw. der Port HIGH ist. Mein problem nun: wenn ich die LEDs nach und nach durchschalte, habe ich unterschiedliche Frequenzen obwohl ich alle mit der selben pwm ansteuern. Kontrollieren tue ich das mit einem
https://www.mikrocontroller.net/articles/AVR-GCC-Tutorial
-
Thread
avr isp mkii Probleme
HI MISO(Prorammer) - MISO(AVR) MOSI(Programmer - MOSI(AVR)? MfG Spess
Ein Problem für den avr isp mkII und andere Programmer ist: Wenn beim µC die Port-Pins für MISO, MOSI, SCK, RESET niederohmig beschaltet sind: - Eingänge, an denen z.B. der Ausgang eines anderen µCs, oder ein
-
Thread
Verständnisproblem ISR am Attiny24
Test-LED Interrupt erreicht PINB wird Dir nicht wirklich etwas anzeigen. Um ein Bit an einem Port zu setzen verwendet man PORT(X), in deinem Fall PORTB. Dazu muss auch das DDRB Register richtig gesetzt sein. PIN(X) wird zum einlesen verwendet. Das mal als Hinweis. Setzt Du die Variable diceButtonPressed
Test-LED Interrupt erreicht > > PINB wird Dir nicht wirklich etwas anzeigen. > Um ein Bit an einem Port zu setzen verwendet man PORT(X), in deinem Fall > PORTB. Dazu muss auch das DDRB Register richtig gesetzt sein. > PIN(X) wird zum einlesen verwendet. > Das mal als Hinweis. > > Setzt Du die Variable
-
Thread
Cortex M freie Bibliotheken, API?
blabla ) { GPIOSetValue( LED_PORT, LED_BIT, LED_ON ); } [/c]
Einlesen muss er sich trotzdem, egal ob er jetzt 8 oder 32 bit nimmt
-
Thread
AVR TWI-Hardware als Master und USI als Slave
Hi, Ich habe nur ein paar Detailfragen zu dem USI als TWI im Slave. Eins vorweg: Datenblatt und Appnotes habe ich ausgiebig studiert aber was ich so an Beispielen gefunden habe widerspricht dem teilweise. Da wird mit ASM rumgehüsert weil es angeblich so zeitkritisch sei aber halte das alles nicht für nötig. Geht alles per Ints und Hardware, auch mit dem USI. Der Master wird ein Mega1280 mit echter TWI, der Slave wird ein Tiny861 mit leider nur USI. Den brauche ich wegen den 3x2 PWM-Ausgängen. Der Slave wird dabei immer wieder mal mit einem anderen Int beschäftigt sein oder wartet zeitkritisch
-
Thread
AVR-ASM M8 USART-Funk problem
Ich habe seit Tagen ein Problem mit meinem 433Mhz Funk. Gesendet wird aus einem Atmega644 über ein Funkmodul (aus unserer Firma) zum passenden Empfänger an einen Atmega8, welcher am HTerm ausgeben soll. Meine Beobachtungen: Controller funkt richtig an Empfängermodul (300Baud bei 1Mhz UBRR=207). Am ist am Hterm (FTDI) alles wunderbar abzulesen. Also funktioniert!? Ein kurzes Programm am M8 soll 8 Bytes einlesen, richtig ordnen, (nach 0x0f zu lesen beginnen) und dann über FTDI am PC anzeigen zur Kontrolle. Und da liegt mein Problem. Der M8 liest alle 8 Bytes ein und gibt dann blödsinn
-
Thread
Programm bleibt in ISR hängen
(TOIE2), Bit7=0 (OCIE2) sei(); //Freigabe aller Interrupts } ////////////Sollwert einlesen///////////// void Sollwert_einlesen (void) { sollwert_adc = 0; ADMUX = 0x40; DDRB = 0x02; //Port B als Ausgaenge -> B1 abgreifen (OC1A) DDRC = 0x00; //Port
///////// /* void Istwert_einlesen (void) { ADMUX = 0x41; DDRB = 0xFF; /////Dient der Kontrolle nicht löschen!//Port B als Ausgaenge -> B1 abgreifen (OC1A) (nicht notwendig) DDRC = 0x00;
-
Thread
Erster Schaltungsentwurf - ATtiny Programming Board
. ISP Stecker Standard bei Atmel. Wegen dem: http://de.aliexpress.com/item/Free-shipping-USBASP-AVR-download-cable-AVR-programmer-51-ISP-the-downline-lines-programming-AVR-ISP/1886190857.html
Zum Reset: https://www.mikrocontroller.net/articles/AVR_Checkliste >Der Reset-Anschluss am AVR ist 'active-low', d. h. wenn man den Pin mit GND (Masse) verbindet, wird der Controller zurückgesetzt gehalten. Zwar haben die meisten(!) AVRs einen internen
-
Thread
AVR - unteres und oberes Nibble von Port getrennt beschreiben
angeschlossen sind, dann ist es nicht egal, ob das Signal flackert oder konstant ist. Dann besser so: 1. Port in Variable (Register) einlesen. 2. Bits in der Variablen manipulieren. 3. Variablenwert in den Port schreiben.
Rainer V. schrieb im Beitrag #4138525: > 1. Port in Variable (Register) einlesen. > 2. Bits in der Variablen manipulieren. > 3. Variablenwert in den Port schreiben. Richtig. Und wenn man sich nicht sicher ist, ob irgendeine verschissene ISR Ausgaben
-
Thread
Aufzeichnen eines 10 MSPS 1-bit Signals
einen > 1-bit > Datenstrom. 1Bit ist doch 0 oder 1! Da kannst auch ein Digitaleingang eines AVR nehmen!
Prozessoren von XMOS für dich in Frage kommen. Die können ein 12 MHz Signal auch locker direkt seriell einlesen und ausgeben.
-
Thread
Kleines aber feines Projekt
dazu gewisse Ausgänge am MC schalten/aktivieren. Um die Spannung Messen zu können habe ich den PinPort mit einer A/D-Wandler verwendet (PinPort PA0). Die PinPort PB4, PB5 und PB6 möchte ich ja nach anliegender Spannung freigeben (blinken lassen -> habe LED-Ketten als Ansteuerung). Den PinPort PB3 möchte
clr ZeitNetzzustand_3 ;ZeitNetzzustand_3 loeschen [/avrasm] Hier werden die IO-Ports definiert (Port A Eingang, Port B Ausgang) usw....steht als Komentar ja nebendran was die machen/bedeuten [avrasm] // Hauptprogramm Start: rcall ADUmsetzung ;Bereich
-
Thread
Projekt Maus
schon weit genug von der Klappe weg. Erspart Verletzungen. - Weil ich keine Hemmung habe, einen AVR dafür zu opfern und auch keinen besseren Motor habe, wird bei mir die Tür von einem Modellbauservo geöffnet und geaschlossen. Ohne Controller ist etwas mit einem Servo wahrscheinlich etwas mehr Gefummel
existierende Info-Email anzuhängen. Dafür braucht's allerdings etwas mehr Rechenpower, als ein AVR sie hat, weshalb ich mich mit meiner wenigen Zeit bereits seit Monaten in ARM-Prozessoren einlese. LED Blinken geht schon - nur Bilder von einem Kameramodul einlesen ist dann doch nochmals eine
-
Thread
ATMega3250 Timer1 Overflow nicht bei 0
viel auszuschließen: [c] #include <avr/io.h> #include <avr/interrupt.h> #define PWM_ON_TIME 50 #define PWM PINB5 ISR(TIMER1_OVF_vect) { PORTE &= ~(1 << PE0); } int main(void) { DDRE |= (1<<PE0); DDRB |= (1<<PWM);
der ISR verändert wird. Sepp schrieb im Beitrag #4120835: > [c] > while(1) > { > PORTE |= (1<<PE0); > } > [/c]
-
Thread
mit µC Sinus erzeugen + Amplitudenmodulation
praktisch sehr gut... > Die Frequenz stell ich durch unteschiedlich schnelles > rausschreiben an die Ports ein. Sehe ich das richtig? Kann man so machen, muß man aber nicht. Man kann sie auch mit konstenter Geschwindigkeit ausgeben, aber unterschiedlich "schnell" aus der Tabelle einlesen. Das nennt man
Hallo Mathias, der Trick besteht ja darin die Bytes direkt auf den Port schreiben zu können. So etwas zu machen, ist nicht effizient: [c]Bit 0..7 sind auf PortA0 .. PortA7 Bit 8..15 sind auf PortC7 .. PortC0[/c] PORTA 7-0 MSB-LSB LOW_BYTE PORTC 7-0 MSB-LSB HIGH_BYTE
-
Thread
BLDC Sinus AVR449 Allradantrieb Fahrrad
der Kollegen hat ein Platinenlayout entworfen, auf dem ein Attiny 861A verbaut ist. Dort kommt das AVR Programm AVR449 "Sinusoidal driving of 3-phase permanent magnet motor using ATtiny261/461/861" zum Einsatz. Details dazu gerne auf Anfrage, da ich nicht weiß, welche Informationen ihr braucht. Ich
benutzt wird: Der muss erstmal sauber laufen, sonst hat es keinen Sinn, auf Sinus umzuschalten. Für AVR447 habe ich eine Terminalumgebung mit eingebaut, um mir Variable, Ports und andere Werte auf den PC zu senden, und Parameter von da aus zu ändern. Da ich es hier mit 5 oder 6 verschiedenen Maschinen
-
Thread
UV-Laserdrucker II
Es ist natürlich die Appnote AVR446! Habe mich vertippt.
beantwortet er Fragen :-) - wie auch immer ... Ich kämpfe gerade mit meinem ATXMega - der will einen Port, konkret PORTC, nur einmal einlesen. Alle folgenden Male liefert er nur noch 0x00 zurück. Interessant, aber nicht wirklich brauchbar. Gestern gings noch :-) Übrigens zeigst der JTAG-Debugger den Zustand
-
Thread
Hilfe bei Katzenklappe Projekt (RFID)
entsprechende IDE (in dem Fall für Atmel Prozessoren). Einfacher ist es aber die Ausgabe am RS232 Port mit einem Controller oder Rechner auszuwerten. Dann braucht an dem Board nichts verändert zu werden.
einer gewissen Zeit > aufmacht? Normalerweise liest man das Modul mit einem kleinen Controller (AVR, PIC) aus und wenn der Transponder der entsprechenden Katze/Hund erkannt wurde setzt man eine Variable im RAM auf z.B. 60 und zählt jede Sekunde um eins runter. Wenn die Variable dann null ist wird
-
Thread
ADC multiplexen?
einen ATMega88. Da hast du einen Multiplexer integriert und kannst damit alle deine 5 Spannungen einlesen.
Schalter keine Signalrichtung interessiert, kann auch als IO Porterweiterung dienen als in oder out port. 1 Bit für den Schalter kann also beim 4053 mit 3 Schalter drei IO zu 6 IO verdoppeln wenn alle 3 Schalter zusammen von einem Port gesteuert werden. https://www.youtube.com/watch?v=kpGEL7Xynjc
-
Thread
Assemblertrick "Delaybreaker" gesucht
Lösungsansatz mit min. Zusatzhardware: Das Signal kommt sagen wir an Port A.0 an, geht zusätzlich auf Din eines D Flipflop, dessen Q an Port A.1, Port B.0 liefert dem Flipflop CLK und Reset. Dann wäre der Zyklus folgender: Signal wurde an A.0 detektiert FF zurücksetzen ;Takt '0' verzögerung ;Takt '1-8' (loop, nops) Port B.0 High ;Enable des FF Eingangs, Takt '9' In Port A.1 ;Testen des FF Ausgang
-
Thread
(Parallele) Kommunikation zwischen 2 uCs
Erinnert mich an den alten Druckerport: http://computer.howstuffworks.com/parallel-port1.htm Zumindest das Strobe-Signal würde ich auch einbauen. Ansonsten kannst du nicht sicher sein ob beim Einlesen die Bits wirklich richtig stehen.
versuchen dennoch das ganze per UART zu lösen (ist ja kein großer Mehraufwand, das Byte das an dem Port lag wird jetzt einfach über die serielle geschickt), da Steuerung und Bedieneinheit doch weiter auseinander liegen als gedacht (Verkabelung gering halten).
-
Thread
Adressübergabe einer Variable an eine Funktion
jedoch sollte die Funktion jetzt noch nichts machen.... [c] #define F_CPU 16000000 #include <avr/io.h> // Header-Datei f. IO-Register #include <avr/interrupt.h> // Header-Datei f. Interruptfunktion #include <stdint.h> // Header-Datei f. standard Datentypen #include <avr/pgmspace.h
Prototypes ********************************************************************************/ void initPort(void); // Inizialisierung der Portpins int read_taster(int tasterpin); // Einlesen der Taster und zustandsvariable setzen void InitTimer0(void); // Inizialisierung des Timers
-
Thread
3D-Drucker/CNC-Fräse über PC steuern
Statusmeldungen anzeigen lassen oder Einstellungen andern. Das einzige Problem sind reale I/O Ports um die Steuerelektronik anzuschließen. Ich hatte mir da Folgendes überlegt: Wenn ich die Ports des PCI Steckplatzes ansteuern kann um logische Signale zu senden und zu empfangen konnte ich darüber
, kann ich die PCI Ports angemessen ansteuern? Hat jemand Erfahrung mit solchen Dingen, worauf müsste ich achten. Gibt es sind irgendwelche Anmerkungen zu meiner Idee? Ich hoffe, Ihr könnt mir einige nützliche Meinungen
-
Thread
Auslesung von DS1307 RTC
DIMMER5 #define SET_DIMMER6 PORT_DIMMER_56 &= ~(1<<PIN_DIMMER6) // set DIMMER5 #define CLEAR_DIMMER6 PORT_DIMMER_56 |= (1<<PIN_DIMMER6) // clear DIMMER5 // 3,3V und 5V auf SPI Stecker #define PORT_SPI_CON_POWER PORTE
PORT_RELAIS |= (1<<PIN_RELAIS1) // set Relais1 #define CLEAR_RELAIS1 PORT_RELAIS &= ~(1<<PIN_RELAIS1) // clear Relais1 #define SET_RELAIS2 PORT_RELAIS |= (1<<PIN_RELAIS2) // set Relais2
-
Thread
Regelalgorithmus programmieren mit ADUC7026
/^CONVstart) des uC meinst. Das würde ich ja gerne, nur weiß ich nicht, a) als was ich den Port Pin Nr. 42 konfigurieren soll b) wie ich die Daten, die an diesen Port Pin angelegt werden, abgreife (mittels einer Funktion?) Danke
. Bei dem Port 2.0 habe ich leider keinen blassen Schimmer.
-
Artikel
Frequenzumrichter mit Raumzeigermodulation
Ströme über die dünne Leitung fließen könnten. Verbindung Steuerung LCD. In dem Wannenstecker LCD Port ist eine Buchse mit einem Flachbandkabel. Das Flachbandkabel ist wie folgt mit dem LCD verbunden: PORT B 0 => LCD PORT 1 => Pin am Display 11 => DB4 PORT B 1 => LCD PORT 2 => Pin am Display 12 => DB5 PORT B 2 => LCD PORT 3 => Pin am Display 13 => DB6 PORT B 3 => LCD PORT 4 => Pin am Display 14 => DB7 PORT B 4 => LCD PORT 5 => Pin am Display 4 => RS PORT B 5 => LCD PORT 6 => Pin am Display 6 => E Siehe
-
Thread
Cypress PSoC Nutzen/Erfahrungen?
alle möglichen eigene Komponenten überlegen? Theoretisch könnte ich in so eine UDB also USB-Pakete einlesen und in ein IP-Paket wandeln und einfach nur durchschleusen. Das ganze könnte dann direkt in Hardware geschehen und der µC schläft die ganze Zeit oder kann andere Dinge machen; korrekt? Kannst Du
Hallo Max, > Theoretisch könnte ich in so eine UDB also > USB-Pakete einlesen und in ein IP-Paket wandeln und einfach nur > durchschleusen. Das ganze könnte dann direkt in Hardware geschehen und > der µC schläft die ganze Zeit oder kann andere Dinge machen; korrekt? ..
-
Thread
Frequenzzähler PCINT2 TIMER1 Verzweifelung
100 Herz über den Port PD5/PCINT21 einlese. Das Programm arbeit größtenteils korrekt, doch es gibt Situation indem nur ein Viertel der Frequenz ausgegeben wird. Die ISR werden wie beim Oszi zu sehen aber immer abgearbeitet
Overflows ;-) [Die Overflow-Handling-Idee kommt übrigens aus: http://www.mikrocontroller.net/topic/avr-timer-mit-32-bit]
-
Thread
Wie Prozesse zeitlich gleichmäßig gestalten? Atmega 8
richtig? Und wie erkläre ich dem Timer das er bei steigender Flanke loszählen soll? Mit INT0? Am Port D hängt aber mein LCD dran :-( Nichts für ungut mit dem Wald! :-)
die über alle Ports verstreut wären. Peter Fleury hat das vor Jahren vorgemacht.
-
Thread
Mikrocontroller-Programmierung selber beibringen
Dazu gibt es hier auf der Seite Tutorien, die sich auf die Atmel AVR beziehen. Auf anderen Internetseiten kann man sich über den Einstieg in andere Controller-Familien einlesen. Der AVR ist schon ziemlich verbreitet und wenn man zu einem schnellen Ergebnis kommen will
@ DIL24 (Gast) >AVR stirbt. Totgesagte leben länger ;-)
-
Thread
Hammond B3 Clone mit ATMega
Menge Vorberechung machen kann, CAN und 3..5 UARTs gleich drin sind und er das gleiche kostet wie ein AVR... Nur halt 10x so leistungsfähig. Die können dann auch UART und DMA kombinieren, oder Tasten-Anschläge per DMA sampeln und für ADSR aufbereiten... Gruß Ulrich
sieht es so aus als hätte ich genug Ports dafür auf dem 664er. greetinx, Peter
-
Thread
Atmeg führt reset ohne Grund durch
12 geschickt wird. Hat jemand eine Idee warum das so ist. Hier noch der Code: [c] #include <avr/io.h> #include <avr/interrupt.h> #include "pid.h" #include <stdio.h> #include <stdint.h> #define F_CPU 20000000UL // Frequenz des AVR 20Mhz #define BAUDRATE 19200UL // Festlegen der Baudrate
uint16_t ist; uint16_t pwm_signal; int16_t Stellgr; ist = read_ADC(0); // Istwert an ADC0 einlesen soll = read_ADC(1); // SOllwert über AC1 einlesen Stellgr = pid_Controller(soll,ist,&pidData); if (Stellgr<0) { Stellgr = 0; } pwm_signal = Stellgr; set_PWM(pwm_signal,32768
-
Thread
Hat jemand eine Idee wie ich Midibefehle über USB schicken kann an Arduino ?
Also wenn man extra dafür programmieren muss, dann > nein, ist nicht im Code. 2x LIBs etwas einlesen ist eigentlich nicht schwer http://beaststwo.org/avr-uart/ http://agock.com/software/avr-uart-library/ Helmut vB schrieb im Beitrag #4044088: > aber ob ich das hinbekomme? mit Willen ja
> http://cdn3.raywenderlich.com/wp-content/uploads/2013/06/atmegaPinMap.jpg > > kommt man auf Port D Pin 2 > > und mit > http://www.atmel.com/images/Atmel-8271-8-bit-AVR-Microcontroller-ATmega48A-48PA-88A-88PA-168A-168PA-328-328P_datasheet_Complete.pdf > > Seite 3 auf den PCINT18 > > der
-
Thread
Von SD-Karte booten?
, wenn des erste Byte ein Sprungbefehl ist, und du trotzdem die nutzlosen 511 Bytes einlesen musst.
ARM den man über die SPI-Schnittstelle programmieren kann? Und wenn ja wird ein ARM ähnlich wie ein AVR programmiert, ich meine von den Ports her und so? LH
-
Thread
Alle Eingänge in eine uint16_t variable schreiben
Hallo, wie fasse ich in AVR-GCC alle Eingänge die auf verscheiden Ports (PORTA, PORTB, PORTC) liegen in eine variable die uint16_t lang ist. Ich habe insgesamt 11 Eingänge die wegen dem Layout auf den drei Ports verteilt sind.
Gast) >Ich will einfach beim Programm an einem bestimmten Punkt, alle Eingänge >auf einmal einlesen und in uint16_t variable so verteilen, das der >jeweilige Eingang einem Bit in uint16_t variable zugerodnet ist. EXAKT auf einmal geht nicht, aber nahe zu. [c] uint16_t get_ports(void) {