-
Thread
Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?
soll es Inline-Assembler geben. Ja, ätzend. Aus _genau_ diesem Grunde bin ich auch nicht an einem AVR-Port interessiert. Während die LEDs gefüttert werden, kann der ATmega nichts anderes mehr machen... > Für den MSP430 habe ich auch Inline-Assembler hier, aber der hat ja zu > wenig RAM. Ich
bitte mal die AT-Kommandos posten, in welcher Reihenfolge Du > was machst? [code] send_cmd(hPort, "AT+CWJAP?\r", 4); send_cmd(hPort, "AT+CIFSR\r", 2); send_cmd(hPort, "AT+CIPMUX=0\r", 3); send_cmd(hPort, "AT+CIPSTART=\"TCP\",\"192.53.103.104\",37\r", 1); curtime = read_answer
-
Thread
IR Fernbedienung bauen
immernoch nur ~5µA) und dann jedesmal die Tasten abfragt. Alternativ legt man den Teiler-Resi auf einen Port den man dann hochohmig-schaltet (und mit einem 10x größeren Resi gegen grnd zeiht). Damit erscheint am ADC-Port eine 1 wenn ein Knopf gedrückt wird. Dann wacht man auf (Pin-Change int), shcaltet den
einlesen. Irgendwann lässt der User den Taster wieder los, dann kann man wieder schlafen gehen.
-
Thread
ATtiny8 und GIMSK
PIN-Change-Interrupt Jaja, das ist schon klar. Der TE redet aber von einem *ATTiny8*! Nahezu alle modernen AVR haben GIMSK, das ist nicht das Problem. Aber eben nicht die Winzlinge wie ATTiny4/5/9/10. Und da gibt es sowieso keinen Tiny8. Die kleinen Kerlchen haben auch keinen Port C, sondern nur Stückchen von
************************/ #ifndef F_CPU #define F_CPU 16000000UL #endif #include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> #include <avr/pgmspace.h> #include <avr/sleep.h> // Lautsprecherport #define SPEAKER_DDR DDRC #define SPEAKER_PORT PORTC #define
-
Thread
Seltsames Problem - Programm läuft unter bestimmten Umständen nicht richtig [ASM]
wider von vorne los. Sprich von wtr0 bis wtr7. Einen Dritten Durchlauf gibt es dann noch, dann ist PortD komplett auf 1. Ich habe das Problem nun wie folgt (so wie es auch im Code unten steht) behoben: Mit setzen des ADLAR Bits vertausche ich das High und das Low Byte aus. Ich lese wie davor auch beide
Hi Schau mal ganz oben links unter Home steht AVR und in dieser Rubrik findest du AVR-Tutorials, die beschreiben, wie der AD-Wandler benutzt werden kann. Gruß oldmax
-
Thread
Übertragung von High- und Low-Signalen zwischen zwei AVR
Frage beantwortet haben. (-> siehe Schaltung) Es geht mir nur um's Prinzip! Also: Wenn ich dem AVR1 sage [c]portB = 0b00001111; // PortB, Pin0..3 auf "1"setzen[/c] und beim AVR2 abfrage[c]if(portB = 0b00001111){/*mach was*/} // Signale an PortB, Pin0..3 abfragen[/c] ...würde dies so funktionieren
Chris K. schrieb im Beitrag #3861511: > und beim AVR2 abfrage[c]if(portB = 0b00001111){/*mach was*/} // Signale > an PortB, Pin0..3 abfragen[/c] > ...würde dies so funktionieren (mit dieser Art von Schaltung) oder > müsste ich etwas verändern?
-
Thread
Timer1 LED Uhr test mit modulo
ausgehen. [c]#ifndef F_CPU # define F_CPU 7372800 /* 7.3728 MHz */ #endif #include <avr/io.h> // Registernamen #include <stdlib.h> #include <util/delay.h> #include <inttypes.h> #include <avr/wdt.h> #include <avr/interrupt.h> #include <string.h> volatile uint16_t counter = 0;
eine Version mit minimaler Interruptsperre zum nachdenken: [c] #include <stdint.h> #include <avr/io.h> #include <avr/interrupt.h> volatile uint8_t counter = 1; void timer1 (void) { TCCR1B = (1<<CS11)|(1<<CS10); // Vorteiler: 64 TIMSK = (1<<TOIE1); // Overflow Interrupt aktiviert
-
Thread
Zwei Prozesse nutzen einen Vektor. Geht das so?
Reinhard J. schrieb im Beitrag #3866150: > Ist das dann ein 16 Bit Integer vom Typ int16_t für den AVR? Soviel ich weiss, arbeitet der AVR little endian. Also passt es.
gewünschte Adresse anlegen und darin steht dann direkt der Wert. Du musst also nicht erst "manuell" Ports einlesen, sondern die Werte stehen dann quasi direkt in der Variable. Aber so wie du das vor hast, geht das natürlich auch. Ist nur ein bisschen umständlicher. Falls es dich interessiert, deine
-
Thread
AVR-ASM Knobelei : Bitmanipulation am LCD im 4-Bit Mode
Hatte auch mal so etwas ähnliches, beim ATTiny2313. Danach habe ich es verglichen, da der LcdPort auch Steuerleitungen hatte, müßte ich Port einlesen, AND Steuerleitungen, OR Dataleitungen - am Ende war es mit einzelnen bits viel übersichtlicher.
läuft) r26 'Rotationsregister r25 'maskiertes Port_Schattenregister r1 'hilfsregister für verknüpung des ersten nibbels CLC 'der ordnung halber IN r25,PORTA 'port einlesen ANDI r25,0xC3 'maskieren LD r26,
-
Thread
Kombination zwischen zwei Programmen
Sollte ohne externen Interrupt gehen. Tastenabfrage mit Enprellung ist im AVR Tutorial. //hufnala
Ein Einfachstbeispiel für ein schnelles Erfolgserlebnis am Sonntagabend: .equ PORT_Taster = PORTB .equ PIN_Taster = PINB .equ Taster = 5 ; gegen GND sbi PORT_Taster,Taster ; pullup einschalten im Modul 'Datum' einbauen: sbis PIN_Taster,Taster rjmp Weltuhr
-
Thread
Fragen zur erstnutztung meines stk500
SHIFT+P den programming dialog aufrufen. Wenn hier das Tool STK500 und der am PC angeschlossene COM-port angewählt sind, kannst du über den Knopf "read" bei target voltage, die aktuell am board eingestellte target-spannung einlesen. Bekommst du hier eine Fehlermeldung, dann besteht keine Verbindung zwischen
+P den programming dialog aufrufen. > Wenn hier das Tool STK500 und der am PC angeschlossene COM-port > angewählt sind, kannst du über den Knopf "read" bei target voltage, die > aktuell am board eingestellte target-spannung einlesen. > Bekommst du hier eine Fehlermeldung, dann besteht keine Verbindung
-
Thread
KFZ: Schaltung gesucht mit der ich einen kurzen Masseimpuls erzeugen kann
Die Schaltung würde ich wie folgt aufbauen: * 12V Zündung – Spannungsteiler 10K / 4k7 an einen AD-Port vom ATtiny25 anschließen (vielleicht auch noch eine 5,1V Z-Diode um den Port zu schützen). * 12V Zündung – über eine Diode (1N4001) einen Elko (470µF) laden, der einen 5V Festspannungsregler (7805)
ich in GCC programmieren, eine Übersicht findest Du hier: http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial Die Software würde ich wie folgt programmieren: * Spannung am AD-Port messen (wo der Spannungsteiler angeschlossen ist). - wenn Spannung größer Wert x, dann nichts tun. - wenn
-
Thread
Serielle Daten bitweise in die Variable schreiben
Hier ein Beispielcode zum Einlesen 2 * 74HC165 kaskadiert: [c] #include <avr\io.h> struct bits { uint8_t b0:1, b1:1, b2:1, b3:1, b4:1, b5:1, b6:1, b7:1; } __attribute__((__packed__)); #define SBIT(port,pin) ((*(volatile
Peter Dannegger schrieb im Beitrag #3838423: > #include <avr\io.h> Peter, auch unter Windows funktioniert der Slash in Include-Pfaden tadellos. #include <avr/io.h> ist daher portabler.
-
Thread
[Atmega48..328] Ein Pin zu wenig, Taste einlesen?
Taste über Aref einlesen: [c] //Thomas Eckmann Informationstechnik //G:\Softwareprojekte\AVR\areftaste\areftaste.c //Created: 07.10.2014, 16:55:20 //Version 1.0.0 //Build 5 //Last Change: 07.10.2014
ist eine 8-Bit Variable, mit der das Ergebnis der Messung an die Entprellung übergeben wird. Statt PORT einlesen, übergibt man die Variable. Den Rest macht eine handelsübliche Entprellung dann wie gehabt. Man muss die Taste nicht mehr entprellen, der Vorteil ist aber, dass man die gewohnten Funktionen
-
Thread
Präzision des Timers im ATtiny 45
machen - der zieht das Däumchen drehen gnadenlos > durch. http://halvar.at/elektronik/kleiner_bascom_avr_kurs/timer_counter/ Nach dem hier arbeite ich mich momentan vor. Timer kommen erst zum Schluss. Aber da es offenbar in dem Fall ohne Timer nicht gscheit geht, werde ich mich da mal einlesen.
Bedingungen. D.h. auch dann wenn es kälter oder wärmer wird. > http://halvar.at/elektronik/kleiner_bascom_avr_kurs/timer_counter/ > Nach dem hier arbeite ich mich momentan vor. Timer kommen erst zum > Schluss. Aber da es offenbar in dem Fall ohne Timer nicht gscheit geht, > werde ich mich da mal einlesen
-
Thread
Projekt: SerialComCNC Serielles Frontend für CNC GRBL mit ATMega
Port expliziert mit der Mouse zu selectieren, auch wenn nur ein Port angezeigt wird. Mir ist das bisher nicht aufgefallen, da ich immer zwei zusätzliche virtuelle Ports (von com0com Nullmodem) aktiviert
time #define STRING_CONFIG_H_AUTHOR "(none, default config)" // Who made the changes. // SERIAL_PORT selects which serial port should be used for communication with the host. // This allows the connection of wireless adapters (for instance) to non-default port pins. // Serial port 0 is still used
-
Thread
Thermomix Rezeptchips
ist, das man ihn nicht sieht ... Mit den Port an der Seite meinst du wohl den USB-Port ??
Der Kerl ist eine Frau. ;-) Das würde aber bedeuten dass der Debug Port der Port für die Rezept Chips ist.
-
Thread
xmega_Unklarheiten
nach den Virtuellen Ports durchgesucht. Dabei habe ich keine Register für das Portmapping wie bei den anderen Xmegas (VPCTRLA und VPCTRLB) gefunden. Im AVR-Studio 6.2 habe ich dazu ebenfalls nichts gefunden. Nun würde mich
TCC5 verwenden und der korrekte Befehl lautet: TCC4.CTRLA = TC45_CLKSEL_DIV256_gc; Das virtuelle Port D (=VPORT2), Pin 0 müsstest Du wie folgt einlesen können: if(VPORT2_IN && PIN0_bm){ ... Code }
-
Thread
ATmega8, Assembler- Programm fehler oder Taster entprellen?
Das analoge Entprellen mit Kondensator, Widerstand (Pullup) und Schmidt-trigger (= AVR Eingänge) ist wegen der relativ kleinen Hysterese am AVR nicht so einfach. Man kann es aber auch gut ganz in Software machen - daa Delay ist schon ein möglicher Weg. 50 ms sind da schon recht lang
war btw. mein erster Thread im Forum und freue mich auf weitere Diskussionen zum Thema Assembler, AVR. MfG. Simon
-
Thread
ATMega 8, assembler | lcd und led funktionieren zusammen nicht
Hi >und sobald ich die taste loslasse geht die led wieder aus Die LEDs sind an, wenn PortB 0xFF ist. Deinem 'Programm' fehlt die Stelle an der festgestellt wird das die Taste wieder losgelassen ist *und* der PortB auf 0x00 gesetzt wird. In deinem Programm bleibt PortB bis zum Abschalten
Hi >interner pullup? was ist das Wenn ein DDR-Bit einen Port-Pin als Eingang schaltet und das zugehörige Port-Bit eine 1 enthält wird der interne Pull-Up-Widerstand (ca.50k) eingeschaltet. Damit wird ein offener Port-Pin auf H gezogen. MfG Spess
-
Thread
Analoges Signal per USB in PC einlesen unter Visual Studio
Geschwindigkeit..........damit meinen Sie eine Art von Abtastrate? Einmal pro Sekunde den Wert einlesen genuegt vollauf.
seriel2USb Wandler). Ist an sich relativ wenig zu programmieren, aber hierfür muss man allerdings AVR flashen können (Programmer kostet ca. 20€). Außerdem muss mit Visual Studio auf den "virtuelen COMPort" zugegriffen werden können, was warscheinlich sehr einfach mit der SerialPort-Klasse geht, ich
-
Thread
Taster - LED Beispiel
// 7. und 8. PIN vom Port D als Ausgang DDRC &= ~(1<<0); // 1. PIN vom Port C als Eingang PORTC |= (1<<0); // internen Pull-up einschalten a = PINC & ~(1<<0); if(a != 0) // wenn Taster gedrückt {
den Taster raus nehme. (LED8 leuchtet permanent). Was genau muss ich noch ändern/hinzufügen? Das AVR GCC Tutorial hab ich schon gelesen und das beantwortet nicht meine frage. Sitze schon seit 2 Abenden daneben [c] int main (void) { DDRD |= (1<<7) | (1<<6); // 7. und 8. PIN vom Port
-
Thread
SHT11 an ATmega2560 Es funktioniert nicht
data_hi(); delay(); clk_hi(); delay(); // steigende Flanke der Takt-Leitung sht_port &=~(1<<data); // DATA-Pin auf Eingang umschalten cFehler = PINB; // DATA einlesen und in fehler sichern clk_lo() ; // fallende Flanke der Takt-Leitung sht_port
lesen char sht_lesen(char cAck) { char i; char cWert = 0; data_hi(); delay(); sht_port &=~(1<<data); // DATA-Pin auf Eingang umschalten for(i=0x80;i>0;i/=2) // Mit einer Schleife das 8-Bit Datenwort // bitweise einlesen { clk_hi(); delay(); if (PINB) cWert
-
Thread
Opcode AVR Frage
gleich zwei Takte dafür verschwenden, die > Busmultiplexer so zu schalten, daß Register 1 am ersten Port der ALU > hängt und Register 2 am zweiten ALU Port? Aber das müsste dan bedeuten, dass 2 8-bit breite Busse von dem GPR zur ALU gehen, oder? Marc Vesely schrieb: > Darum sind AVR-Instructionen
Vielleicht wird Dir ja einiges klarer, wenn Du Dir mal bei opencores einen AVR-Core in VHDL anschaust. Suche einfach mal nach "AVR VHDL".
-
Thread
Wie ein beleuteten Taster am AVR anschließen ?
Hallo, ich habe einen Taster der so aufgebaut ist im Bild, LED im Tater verbaut. Nun möchte ich das die LED leuchtet und aus geht wenn der Taster gedrückt wird, das ganze soll an eine Tiny angeschlossen werden. Und das mit nur zwei Leitungen. Nur wie soll ich das realisieren ? Im netz bin ich nich fündig geworden.
-
Thread
Analoger Sensor (LM335) mit Operationsverstärker + AVR Asm-Code
TS921 für andere Einsatzfälle durchaus ein paar Dutzend mA am Ausgang mehr. Demnächst gibts zum Einlesen noch etwas Assemblercode für SimplyAVR ;-) Moby
Moby AVR schrieb im Beitrag #3792290: > 16 bittig gerechnet Moby AVR schrieb im Beitrag #3792288: > Was die Höhe der Referenzspannung betrifft hab ich das als Praktiker > jetzt nicht ins letzte ausgerechnet
-
Thread
Problem bei ADC Messung
auf 0 gesetzt wird also die Wandlung nicht beendet wird. Hier mal mein Code: [c] #include <avr/io.h> #include <avr/interrupt.h> #include <stdio.h> // Hier die verwendete Taktfrequenz in Hz eintragen, wichtig! #define MCU at90can128 #define F_CPU 14000000//7372800UL #define ADC_PORT 0
delay_ms (500); // Messwerte jede 1/2 Sekunde erfassen Wert = adc_read_avg( ADC_PORT, 7 ); errechne aus Wert die Temperatur gib die Temperatur auf dem LCD aus } } [/c] wird ja genau die Sequenz ADC_einlesen -> Temperatur_errechnen -> Temperatur_ausgeben immer
-
Thread
Retro Fieber: Z80 oder 68000 ?
wäre als Datenspeicher. Vermutlich wird also die Verwendung eine Art "physical computing" sein, Ports einlesen, ausgeben, irgend einen Sensor dran und 2-3 Relais, die irgendwas ansteuern. Oder sehe ich das falsch?
Immer noch Fehgler drin. mcursees compilieren geht gar nicht, weil der den AVR da einbinden will. Sorry, kann nur scrrenshot anhängen, ist ein putty Fenster. PS: Keine Ahnung was diese krypischen zeichen bedeuten. sed finde ich schrecklich. Muss man sich wohl einlesen...
-
Thread
Bits einlesen über PORT (dsPIC33fj12gp202)
Guten Tag, ich versuche bei meinem dsPIC33fj12GP202 über einen Pin Spannungspegel digital (einfach low=0 und high=1) einzulesen. Ich wollte dies für einen Pin so lösen: C-Code: (...) TRISBbits.TRISB1=1; //PIN als Input konfigurieren x=PORTBbits.RB1; //Wert des Pins speichern (...) Jedoch möchte er nicht das Bit was am Pin anliegt speichern bzw. speichert es als low ab. Das Ziel ist es einen 1-Wire-Sensor, dessen low jedoch etwas mehr als GND ist (weiß nicht was nun konkret low bzw high für den PIC bedeutet), auszulesen. Nur scheitert es an dem lesen des Pegels. Ich
-
Thread
Einstieg in Elektronik & Robotik?
TI bot gibts auch... Sind etwas komplexer falls asuro zu langweilig ist...und du wie ich nicht auf avr stehst....*gleich werd ich hier massakriert*
teuerste ist da noch der Programmer für den Avr, da würde ich den von Atmel selber nehmen oder den myAVR der ist auch ok. kP welcher da jetzt der preiswertere ist. Allein für die paar Sachen hast du erstmal genug zutun.
-
Thread
Wlan2Serial Modul für 5 euro
Interesse am gcc-port haben. Weder an einem generischen Port für ihr Framework, aus dem man eventuell Rückschlüsse auf die HW-Architektur-Interna ziehen kann, noch an einem Port für die Espressif-Konfiguration. Wird das
UDP Protokoll UDP wählen Auf welcher IP soll er lauschen : Local HOST IP eintragen Auf welchen PORT soll er lauschen : IP Port eintragen Connect drücken Remote IP eintragen Remote Port eintragen TCP Protokoll Als CLIENT Ziel HOST IP eintragen Ziel HOST Port eintragen Connect drücken
-
Thread
STM32 F3 Discovery Probleme mit SPI und receive Interrupt
Shiftregister mit dem SPI Peripheral anzusprechen. Dazu möchte ich 16bit Daten über den MISO-Pin einlesen, MOSI ist unbeschaltet. Diese Funktionen habe ich dazu geschrieben: [c] //init spi gpio for digital input shift register void dig_in_init(){ gpio_pin_config(CS_PORT,CS_PIN,OUT|PP|MHZ_
push/pull gpio_pin_config(MISO_PORT,MISO_PIN,AF|PP); //spi miso to alternate function push/pull CLK_PORT->AFR[1] |= (5<<((CLK_PIN-8)*4)); //AF5 (SPI2 CLK) MISO_PORT->AFR[1] |= (5<<((MISO_PIN-8)*4)); //AF5 (SPI2 MISO)
-
Thread
AT90USB (und ähnliche) Grundlagen
nur will) Gute Hilfestellung gibt das Forum auch hier: http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial (versuch z.B. erst mal eine LED an einem Port mit 1Hz blinken zu lassen) Ich habe meine Diplomarbeit mit Hilfe des AT90USB1287 gemacht. Ist echt ein cooler Controller im Vergleich
schreiben. Natürlich ist es dann noch mehr Einarbeitung in die ARM- Controller im Vergleich zu den AVR's weil diese schon etwas aufwendiger sind bis man mit Ihnen arbeiten kann. (z.B. aktivieren sämtlicher Taktquellen für die Peripherie) Bei den AVR's bekommst Du im Vergleich zu den ARM's massig Hilfe
-
Thread
Welcher Microcontroller?
PWM-Signale anzusteuern, die restlichen LEDS nach Möglichkeit direkt mit je einem Widerstand an I/O Ports anschliessen und über PWM bzw Timer die Ports entsprechend schalten. Audio an einen Klasse D Verstärker auch über PWM. Die Sensoren sind eigentlich nicht so kompliziert zu verarbeiten, es geht
Platzprobleme, ich muss das ganze auf 25-30mm Breite unterbringen. Ich werd mich denn mal in den STM32 einlesen und schauen ob ich das damit hinbekomm. MfG Jan
-
Thread
Maximalstrom Arduino Mega 2560
40mA hast du falsch gelesen. Aus einem Pin darf max. 40mA gezogen werden. Jedoch ist dieser auch pro Port begrenzt. IdR teilen sich 8Pins einen Port. Die Begrenzung pro Port ist mit 200mA angegeben. Welche AVR Ports den Arduino Ports entsprechen musst du nachschlagen. Was dein Mega2560 zieht kannst nur
Stefan S. schrieb im Beitrag #3756464: > Jedoch ist dieser auch pro Port begrenzt. IdR > teilen sich 8Pins einen Port. Die Begrenzung pro Port ist mit 200mA > angegeben. Der 2560 hat 11 Ports. Laut deinen Aussagen sind also 11 x 200mA/Port möglich. Macht insgesamt
-
Thread
Einige Verständnis Fragen zum TWI (I²C)
define LED4 PD5 #define LED5 PD6 #define LED6 PD7 #define LED_DDR DDRD #define LED_PORT PORTD #include <avr/io.h> #include <stdio.h> #include <avr/interrupt.h> #ifndef F_CPU #define F_CPU 8000000L #endif #include <stdio.h> #include <util/delay.h> #include <string.h> #include
bedeuted^^ > ANs 311 Atmel führt bei google nämlich ins nichts :D AN steht für "Application Note" AVR311 und AVR315 findet Herr Google mit Sicherheit...
-
Thread
Zyklisches Auslesen eines Dual Port RAMs (ATmega32 und Schieberegister)
LED-Treiber ala TLC5940 & Co sind schon lange erfunden, siehe [[LED-Matrix]]. >Die Idee mit dem Dual-Port-RAM hatte unser Betreuer. Sie war zu dem >Zeitpunkt die eleganteste Lösung. Unter den Blinden ist der Einäugige der König. Wegen der popeligen Aufgabe "Tastatur einlesen" soll also extra ein Controller
auf und legst sie bitweise in den Bytes des RAM ab von wo > sie sich der andere holt und auf die Ports rausstreamed, ist doch schon > kompletter Unfug. Ohne jeden Zweifel. > Die einzigen Besonderheiten, die ein AVR haben sollte/könnte wären 219 > PWM Stufen und ein fix und fertiges Tastenmatrix
-
Thread
Ausführungszeit ISR
32bit konvertieren wenn du es mit den unteren 8bit veroderst. [code] temp_data |= (PORT&0x01) [/code]
verdoppeln oder verdreifachen. Zum Thema, ja klar kannst du mit Assembler Signale schneller einlesen, aber je nach chip ist der Nutzen nicht grenzenlos. Viele chips haben schon Hardware ports, teils mit Puffer, oder gleich DMA. Da gibt es keinen Gewinn mehr wenn es mit Assembler gemacht wird.
-
Thread
Code fehler bei 74hc165 kette (einzelner geht)
_PORT |= _BV(CLOCK165_PIN)) #define CLOCK165_low() (CLOCK165_PORT &= ~_BV(CLOCK165_PIN)) //////////////////////////// #define PARALLEL165_PIN PA4 #define PARALLEL165_PORT PORTA #define PARALLEL165
_PORT |= _BV(CLOCK165_PIN)) #define CLOCK165_low() (CLOCK165_PORT &= ~_BV(CLOCK165_PIN)) //////////////////////////// #define PARALLEL165_PIN PA4 #define PARALLEL165_PORT PORTA #define PARALLEL165
-
Thread
PWM-Pin von AVR deaktivieren
das Sende-Pendant von [[IRMP]] habe ich folgende Fallunterscheidungen im Code: [c] if defined (__AVR_ATtiny44__) || defined (__AVR_ATtiny84__) // ATtiny44/84 uses OC0A = PB2 or OC0B = PA7 # if IRSND_OCx == IRSND_OC0A // OC0A # define IRSND_PORT_LETTER
#elif defined (__AVR_ATtiny45__) || defined (__AVR_ATtiny85__) // ATtiny45/85 uses OC0A = PB0 or OC0B = PB1 # if IRSND_OCx == IRSND_OC0A // OC0A # define IRSND_PORT_LETTER
-
Thread
LED blinkt während Programmablauf
, solltest du auch alles lesen. So könnte man es machen: http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial/Die_Timer_und_Z%C3%A4hler_des_AVR#Timer2_im_Asynchron_Mode
LED in der ISR sehr schnell blinken und die andere auch. Naja, da muss ich mich wohl noch weiter einlesen, aber das Prinzip ist jetzt klarer geworden. :D #define F_CPU 1000000UL #include <avr/io.h> #include <avr/interrupt.h> #include <util/delay.h> int main(void) { DDRD = 0xFF;
-
Thread
mit Arduino Due, DC-Motorstrom positionsabhängig erfassen und seriell ausgeben
obwohl z.B. mit 500.000 Baud übertragen wird. Da schaut man höchstens nach um die aktuell benutzte Port-Nummer zu sehen.
Bei denen funktioniert das so. Und was meinst Du welche Art von ComPorts von den Arduino Treibern generiert werden? Ja eben, virtuelle ComPorts, was sonst. Also ist Dein Gerede vom Umstellen müssen für den TO irrelevant.
-
Thread
Suche Frequenzzähler für niedrige Frequenzen
den Blinker erfassen und den Helligkeitsunterschied im Videosignal auswerten. Oder über den Drucker-Port das Signal einlesen, falls dein PC noch so etwas besitzt. Oder irgendwie über einen Audio-Eingang. Vielleicht gibts sogar eine App für's Smartphone, die so etwas direkt kann. Vielleicht hast du
Es gibt Projekte "reziproker Frequenzzähler" z.B. hier mit einem AVR 2313 und Standard-Textdisplay: http://www.mino-elektronik.de/index.html
-
Thread
SPI MISO erkennt falsche Werte bei höherer Geschwindigkeit
Disable_global_interrupt(); INTC_register_interrupt( (__int_handler) &pdca_int_handler, \ AVR32_PDCA_IRQ_0, AVR32_INTC_INT0); INTC_register_interrupt( (__int_handler) &pdca_int_handler, \ AVR32_PDCA_IRQ_1, AVR32_INTC_INT1); /* First disable all interrupts */ SENSOR_SPI
Die Funktion mit der ich die Daten per DMA in einen Puffer einlese habe ich noch vergessen: [c]void spiRBuffCam(volatile uint8_t *buffAddr, uint32_t sizeOfBuff) { spi_selectChip(&AVR32_SPI1, SPI_CS_CAM1); portENTER_CRITICAL(); { pdca_enable_interrupt_transfer_complete
-
Thread
Warum immer Eagle?
Eagle ist der AVR der CAD-Programme! ;-)
die nicht über 4 Lagen hinausgehen? Falk Brunner schrieb im Beitrag #3726697: > Eagle ist der AVR der CAD-Programme! ;-) Wieso denn AVR? PICs und ARMs FTW ;)
-
Thread
Drehstrom motor
Steuern. Ic bin ein Anfänger in der Materie und ich brauch hilfe um 3 puls zu erzeugen auf 3 pin (port b pin 1,2,3) mit die möglichkeite die Frequenz zu ändern. Die Simulation kann ich mit LED durchlaufen lassen Danke für euer Hilfe Claude
Elektronik doch stur durchschalten, ohne zu wissen, wie der Motor gerade steht. Literatur ist z.B. AVR444 - Sensorless control of 3-phase brushless DC motors http://www.atmel.com/Images/doc8012.pdf