Gefunden für avr timer overflow - Zum Elektronik Forum |
| 1 - PID-Regler zur Drehzahlsteuerung eines Motors -- PID-Regler zur Drehzahlsteuerung eines Motors | |||
| |||
| 2 - Hilfe:Klartraum-Maske -- Hilfe:Klartraum-Maske | |||
| So, ich habe mal ein bisschen was programmiert. Ich habe mich
dann doch für den Attiny13A entschieden, weil sich bei dem der Watchdog einfacher nutzen lässt ( WD-Interrupt statt Reset ). Der Spannungsbereich ist mit 1.8V..5.5V auch sehr entgegenkommend. Es werden 2 Ports für die LEDs genutzt. Normalerweise würde das auch ein Port schaffen, wenn die jeweils relativ hochohmig angebunden werden. Strombilanz: Warte 6h auf REM-Phase 4.5µA Led-Blinkend mit Watchdog (1800ms*4.5µA + 200ms * 5mA)/2s = ~ 500µA )* Power-Down-Mode nach REM-Blinken 120nA Betrieb mit einer CR2032, die grob über 200mAh verfügen sollte (das anfängliche 3x-Blinken als Start-Feedback vernachlässige ich mal) : 6.0h Warten auf REM 4.50uA = 270 µAh 0.5h aktiv blinken (0.2/1.8) 500.00µA = 250 µAh 17.5h Warten auf nächste Nacht 0.12µA= 2.1µAh = 522µAh Tagesverbrauch Bei 200mAh sind das -> 383 Tage, die Batterie hält also ein gutes Jahr bei täglicher Anwendung. Wenn es nicht angewendet wird, ist der Idle Strom so gering, dass die Batterie in diesem Zustand theoretisch 190 Jahre hält. Es lohnt sich also nicht mehr, in diesem Bereich zu optimieren oder sich was an... | |||
3 - Atmega Fahrradtacho -- Atmega Fahrradtacho | |||
| Okay hier der Code:
Er gibt nur die Drehzahl aus was aber leicht in km/h umzurechnen wäre. Code : // Prozessor Taktfrequenz einstellen sofern es nicht eine Vorgabe // beim Aufruf des C Compilers gab. #ifndef F_CPU #define F_CPU 4000000 #endif #include <avr/io.h> #include <avr/interrupt.h> #include <util/delay.h> #include <stdlib.h> #include "lcd-routines.h" #ifndef TRUE #define TRUE 1 #define FALSE 0 #endif volatile unsigned char NrO... | |||
| 4 - ATMEGA32 liest nur 0xFF aus dem EEPROM -- ATMEGA32 liest nur 0xFF aus dem EEPROM | |||
| Hallo!
Irgendwas stimmt nicht mit meinem Quellcode mit Assembler. Ich kann ohne Probleme verschiedene I²C-ICs steuern und auslesen, nur beim DS1307 und sogar beim 24C04 bzw SDA2516 liest der AVR nur 0xFF. Ich habe verschiedene Tests gemacht um den Fehler einzukreisen. Zuerst ein Schreibtestprogramm für den TDA6200: Code : ;********************************************************************************************* ;* * ;* Test... | |||
| 5 - Drehgeber mit Bascom auslesen und PWM regeln -- Drehgeber mit Bascom auslesen und PWM regeln | |||
| Hallöchen.
ich bin jetzt in meinem roland walter buch so weit, daß ich bei der PWM bin. jetzt würde ich gerne, statt mit avr Term (ein Terminal programm) das ganze mit nem Drehgeber machen. Es geht darum mit dem Terminal programm die Helligkeit der PWM-Led zu regeln. da ich aber kein Nullmodemkabel habe würde ich das Gerne mit nem Drehregler machen. Ich habe auch schon bei der Bascom hilfe Hilfe gefunden, aber ich schaff es glaube ich nicht: - Ihn auszulesen - Den ausgelesenen wert zu verarbeiten.(also den Timerwert um 1 zu vergrößern bei rechtsdrehung, oder den Timerwert um 1 zu verkleinern bei linksdrehung Ist jemand so nett und würde mir unter die Arme greifen? Der Drecksack Hier mal das original Listing, daß ich auf Drehgeber abändern möchte '0604.BAS: Einfacher D/A-Wandler, LED-Helligkeitssteuerung 'Hardware: Nullmodemkabel zum PC, Pin PD5 mit LED verbinden '---------------------------------------------------------- $regfile = "m8def.dat" 'ATmega8-Deklarationen $crystal = 3686400 'Quarz: 3,6864 MHz $baud = 9600 '9600 Baud | |||
| 6 - DMX-Dimmer: DMX auslesen und Phasenanschnitt zu gleich? -- DMX-Dimmer: DMX auslesen und Phasenanschnitt zu gleich? | |||
Die Timer-counter laufen von selbst, haben entweder 8 oder 16 bit und werden vom Prozessortakt über einen programmierbaren Vorteiler oder extern übner einen Eingang getaktet. Wenn du nichts resettest überläuft der Zähler einfach beim Maximalwert und beginnt wieder von 0. Resetten heisst ganz einfach das Zählerregister mit irgendeinem Startwert überschreiben. Damit die Timer so laufen wie man es braucht müssen sie passend initialisiert werden. Welche Register genau welche Daten bekommen sollen steht ausführlich im Datenblatt das gerne vollständig gelesen werden möchte. Interruptroutinen sind kleine Programmteile die aufgrund vordefinierter Ereignisse sofort ausgeführt werden wenn ebendieses Ereignis auftritt. Die Ausführung des restlichen Programms wird dabei so lange unterbrochen. In einem AVR gibt es eine Vielzahl von Interruptquellen, wie z.B. Timer overflow(Timer überläuft Maximalwert), timer compare match (timer-zähler erreicht vordefinierten Wert), Pin change interrupt(Zustand eines I/O- Pins ändert sich) und noch sehr viele mehr. Interrupts sind immer dann sehr nützlich wenn man zu einem bestimmten Zeitpunkt oder nach einem bestimmten Ereignis etwas tun muss, aber nicht dauernd durch Statusabfragen Zeit Rechenzeit verheizen möchte/darf. ... | |||
| 7 - Hilfe AVR mit I2C software AVR300 -- Hilfe AVR mit I2C software AVR300 | |||
| also gut dan poste ich halt das avr300.asm
;**** A P P L I C A T I O N N O T E A V R 3 0 0 ************************ ;* ;* Title : I2C (Single) Master Implementation ;* Version : 1.0 (BETA) ;* Last updated : 97.08.27 ;* Target : AT90Sxxxx (any AVR device) ;* ;* Support email : avr@atmel.com ;* ;* DESCRIPTION ;* Basic routines for communicating with I2C slave devices. This ;* single master implementation is limited to one bus master on the ;* I2C bus. Most applications do not need the multimaster ability ;* the I2C bus provides. A single master implementation uses, by far, ;* less resources and is less XTAL frequency dependent. ;* ;* Some features : ;* * All interrupts are free, and can be used for other activities. ;* * Supports normal and fast mode. ;* * Supports both 7-bit and 10-bit addressing. ;* * Supports the entire AVR microcontroller family. ;* ;* Main I2C functions : ;* 'i2c_start' - Issues a start condition and sends address ;* and transfer direction. ;* 'i2c_rep_start' - Issues a repeated start condition and sends ;* address and transfer dire... |
|
Zum Ersatzteileshop Bezeichnungen von Produkten, Abbildungen und Logos , die in diesem Forum oder im Shop verwendet werden, sind Eigentum des entsprechenden Herstellers oder Besitzers. Diese dienen lediglich zur Identifikation! gerechnet auf die letzten 30 Tage haben wir 9 Beiträge im Durchschnitt pro Tag heute wurden bisher 2 Beiträge verfasst 1 Besucher in den letzten 60 Sekunden alle 60.00 Sekunden ein neuer Besucher ---- logout ----su ---- logout ---- |