LED //* für den Einsatz auf Modelleisenbahnen als Lichtsignal für //* Flugsicherungs - Lichter //* ATmega8 @ 8 MHz //* //* //***************************************************************************** #define F_CPU 8000000L #include <inttypes.h> #include <avr/io.h> #include <util/delay.h> #include <avr
3-Kanal PWM zum Dimmen einer (oder mehrerer ;-) ) RGB-LED(s) realisieren. Ich nutze einen Atmel Atmega8. Mein bisheriger Code dimmt eine LED logarithmisch in einer festgelegten Geschwindigkeit zwischen einem MIN und einem MAX Wert rauf und runter, ist aber schon gut auf die 3 LEDs erweiterbar. [avrasm
0,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,5,5,5,5,5,5,5,6,6,6,6,6,7,7,7,7,7,7,8,8,8,8,8,9,9,9,9,10,10,10,10,10,11,11,11,11,12,12,12,13,13,13,13,14,14,14,15,15,15,15,16,16,16,17,17,17,18,18,18,19,19,20,20,20,21,21,22,22,22,23,23,24,24,25,25,26,26,26,27,27,28,28,29,30,30,31,31,32,32,33,33,34,35,35,36,37,37,38,38,39,40,41,41,42,43,43,44,45,46,46,47,48,49,50,51,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,71,72,73,74,75,77,78,79,80,82,83,84,86,87,89,90,92,93,95,96,98,99,101,102,104,106,107,109,111,113,115,116,118,120,122,124,126,128,130,132,134,137,139,141,143,145,148,150,153,155,157,160,162,165,168,170,173,176,179,181,184,187,190,193,196,199,202,206,209,212,216,219,222,226,229,233,237,241,244,248,252,255 [/avrasm] Jetzt würde ich gern eine Art Programmablauf im Programmspeicher speichern
Taktsignal. Für weitere Infos siehe "12.2 - Ports as General Digital I/O" in der Beschreibung des ATMega32 #define SHT75_DATA_1 DDRC &= ~(1 << SHT75_DATA) //schreibt eine "1" auf den Bus (setzt den Pin hochohmig). Ein externer Pullup zieht den Bus auf High #define SHT75_DATA_0 DDRC |= (1 << SHT75_DATA
Atmega8 Atmega8 schrieb im Beitrag #3969592: > Hans Ulli Kroll schrieb im Beitrag #3969546: >> Es gab mal einen Windows Treiber, der das gleiche wie dm_crypt auf Linux >> gemacht hat. Nur leider sind die
Atmega8 Atmega8 schrieb im Beitrag #3977083: > ... aber so ist das meiner Ansicht nach kein so attraktives Angebot auf > welches ich mich stürzen würde. Laut Youtube, macht es aber unglaublich guten
LED //* für den Einsatz auf Modelleisenbahnen als Lichtsignal für //* Flugsicherungs - Lichter //* ATmega8 @ 8 MHz //* //* //***************************************************************************** #define F_CPU 8000000L #include <inttypes.h> #include <avr/io.h> #include <util/delay.h> #include <avr
will man bei dem Abstand erwarten. Schaltung wie im Anhang. Leerlauf: Eingang 12V/130mA/1,6W 162kHz Ausgang 16,3V Mit 68 Ohm Last: Eingang 12V/240mA/2,9W Ausgang 8,8V/130mA/1,1W Wirkungsgrad 37% Naja, es wird relativ viel Leistung in den Spulen/Ferriten verheizt, wobei ich nicht genau
erstaunenden) Ergebnisse. Daher, das ich momentan nur einen einzigen BC337 da hatte, habe ich auf einem ATmega8 ein kleines Programm geschrieben, welches über 8Parallele PortPins den Transistor für 2µs einschaltet und dann 6µs abschaltet. Der Sinus schaut Sauber aus, und ich erreiche (Erster Aufbau) ~10%
imitierte Analoguhr mit drei Zeigern an, Datum und Schaltsekunden als Text. Das Programm paßt in einen Mega162 mit 16 k. zu c: wäre schön, das zu haben, muß ich aber nicht und ich brauche es momentan gar nicht. Diverse Bauanleitungen sind mir bereits begegnet, das ist meistens mit PLL, aber insgesamt ist
vorhergehenden 6 Amplitudenwerte (=100ms) wurde letztendlich die aktuelle MSF60-Amplitude berechnet. Der ATMEGA48 diente übrigens auch als LCD-Controller. Die LCD-Leitungen (13 x SEG und 2 x COM) können dank PWM die vier nötigen Spannungspegel annehmen. Das Projekt war eine Studie. Man verzeihe Schaltungsdesign
Bin grad im python-Fieber (unter debian squeeze). Das einzige was jetzt doof ist: wenn ich Atmega8 proggen will muss ich in die low-level-Welt von C & co. dank meiner langjährigen Erfahrung mit python (so ca. ne Woche) habe ich schon folgende Infos gefunden: Man kann mit python: - wissenschaftliche
/* Eine 8-kanalige PWM mit Linearisierung ATmega64 @ 16 MHz */ // Defines an den Controller und die Anwendung anpassen #define F_CPU 16000000L // Systemtakt in Hz #define F_PWM 100 // PWM-Frequenz in Hz #define PWM_STEPS 1024L // PWM-Schritte pro
/* Beispielprogramm 'reziproker Frequenzzaehler' mit GPS-Signal stabilisiert fuer ATmega162 und IAR-Kickstart: Berechnung mit 64-bit double! Funktionsbereich mit Vorteiler 0,004Hz - >50MHz bei 16MHz Prozessortakt Neben der üblichen Frequenzmessung an ICP1 wird zusätzlich über ICP3 die
CONFIG_EXPERIMENTAL=y # CONFIG_EXPERT is not set ARCH=ARCH_AVR ARCH_AVR=y # ARCH_HOST is not set # atmega8 is not set # atmega88 is not set # atmega128 is not set # atmega16 is not set # atmega162 is not set # atmega168 is not set # atmega168p is not set # atmega169 is not set MCU=atmega32 atmega32=y # atmega328p is not set # atmega64 is not set # atmega644 is not set # atmega644p is not set # atmega1284p is not set FREQ=16000000 # Arduino_Duemilanove is not set # Fimser is not set # Jackalope is not set
Oscillator version Device RC oscillator frequency [MHz] CKDIV PRSCK 1.1 ATtiny12 1.2 1.2 ATtiny15 1.6 2.0 ATmega163 1.0 2.0 ATmega323 1.0 3.0 ATmega8 1.0, 2.0, 4.0, and 8.0 3.0 ATmega16 1.0, 2.0, 4.0, and 8.0 3.0 ATmega32 1.0, 2.0, 4.0, and 8.0 (1) 3.1 ATmega64 1.0, 2.0, 4.0, and 8.0 XDIV (1) 3.1 ATmega128 1.0, 2.0, 4.0, and 8.0 XDIV 3.0 ATmega8515 1.0, 2.0, 4.0, and 8.0 3.0 ATmega8535 1.0, 2.0, 4.0, and 8.0 4.0 ATmega162 8.0 X X 4.0 ATmega169 8.0 X X 4.1 ATtiny13 4.8 and 9.6 X X 4.2 ATtiny2313 4.0 and 8.0 X X 5.0 ATmega48 8.0 X X Note: 1
Oscillator version Device RC oscillator frequency [MHz] CKDIV PRSCK 1.1 ATtiny12 1.2 1.2 ATtiny15 1.6 2.0 ATmega163 1.0 2.0 ATmega323 1.0 3.0 ATmega8 1.0, 2.0, 4.0, and 8.0 3.0 ATmega16 1.0, 2.0, 4.0, and 8.0 3.0 ATmega32 1.0, 2.0, 4.0, and 8.0 (1) 3.1 ATmega64 1.0, 2.0, 4.0, and 8.0 XDIV (1) 3.1 ATmega128 1.0, 2.0, 4.0, and 8.0 XDIV 3.0 ATmega8515 1.0, 2.0, 4.0, and 8.0 3.0 ATmega8535 1.0, 2.0, 4.0, and 8.0 4.0 ATmega162 8.0 X X 4.0 ATmega169 8.0 X X 4.1 ATtiny13 4.8 and 9.6 X X 4.2 ATtiny2313 4.0 and 8.0 X X 5.0 ATmega48 8.0 X X Note: 1
. Thomas Fischls USBasp ist ein Openhardware-/Openfirmware-USB-ISP-Adapter. Er basiert auf einem ATmega8, ATmega8L, ATmega88 oder ATtiny85, der mittels einer rein auf Firmware basierenden USB-Implementierung von Objective Development arbeitet. Bezugsquellen: Ein offizieller USBasp Bausatz ist erhältlich
den AVR wiederbeleben kann. Auch wer mit niedrigen Taktraten arbeitet (z. B. 32kHz), kann einen ATmega64 in ca. 4,8 Sekunden programmieren und vergleichen. Darüber hinaus kann mit geeigneten Makros die Programmausführung getracet werden. Die maximale Programmierdauer beträgt bei einem ATmega64 mit 16MHz
/*ICP mit ISR-UART für Atmega 162 unter Verwendung von freqcount von Holger Brenner und dem USART Beispiel aus dem Artikel Interrupt */ #include <inttypes.h> #include <avr/interrupt.h> #include <avr/io.h> #include <stdint.h> #include
/*ICP mit ISR-UART für Atmega 162 unter Verwendung von freqcount von Holger Brenner und dem USART Beispiel aus dem Artikel Interrupt */ #include <inttypes.h> #include <avr/interrupt.h> #include <avr/io.h> #include <stdint.h> #include
Sendeleistung für die Übertragung über gut 25 m ausreicht. Mal schauen... Ich warte jetzt noch auf die ATmega328 Arduino Nanos, die ich bestellt habe. Denn meine Atmega168 hatten zu wenig Speicher für das Arduino-Programm.
So, die Arduino Nanos mit ATmega328 sind angekommen und das Programm macht, was es soll. Ich kann pro Sekunde 19 Datenpaare (Zeit, Luftdruck) speichern, das müsste eigentlich für die Wasserrakete reichen. Leider gibt es nicht mehr
PWM-Zyklus 10ms) und acht Kanälen generiert werden. Der verwendete Controller ist ein AVR vom Typ ATmega32, welcher mit dem internen RC-Oszillator auf 8 MHz getaktet wird. Das Programm kann jedoch problemlos an so ziemlich jeden anderen AVR angepasst werden. Die Programme wurden mit dem Optimierungsgrad
sleep , ist der Jitter Null. Der nachfolgende Programmrumpf hat folgende Eigenschaften auf einem ATmega16 mit 16 MHz Quarzfrequenz: Binärcode- oder „Bit-Winkel“-Modulation (bit angle modulation, BAM, komischer Begriff, siehe unten), keine klassische PWM, mit dem Nachteil häufigerer Umladevorgänge an
ADc_Din, am ADS=Dout ** 1 ** Frequenzzähler, mit externem Interrupt, Atmega64, 4x LS7060 letzte Änderung 23.6.17 Atmega64 Ads_din Alias Pinb.4 ADc_Dout, am ADS=Din $regfile = "m64def.DAT" Ads_dout Alias Portb.6 ADc_Chip-Select 10MHz externer Oszillator Ads_chipselect Alias