Gefunden für bascom timer and 8=8 - Zum Elektronik Forum





1 - Spannungswächter aus Resten ;-) -- Spannungswächter aus Resten ;-)




Ersatzteile bestellen
  Nabend,

ich denke so kann es auch funktionieren, nicht ganz so aufwändig und die Entscheidung was passieren soll liegt bei mir.

1. Eingangsspannung Uin 0-13,8V (AKKU)
* > 8,0V rote LED an alles i.O.
* < 8.0V rote LED aus, der AKKU muß gewechselt werden
2. Ausgangsspannung Uout 0-5V (AVRs)
* > 4,5V grüne LED an alles i.O.
* < 4,5V grüne LED aus, es gibt/gab ein Problem und die gelbe LED blinkt bis die Reset-Taste gedrückt wurde

So komme ich mit den Bauteilen die Vorrätig sind zurecht.


Code : ' Compi...
2 - Motorsteuerung mit Optical Encoder -- Motorsteuerung mit Optical Encoder
Hallo Leute,
nach einiger Elektronik Abstinenz bastele ich wieder an einem Projekt.
Dazu hab ich einige Fragen bzw. Vorschläge von euch.
Es handelt sich um die Steuerung eines Gleichstrommotors.
Ziel ist es, eine bestimmte Anzahl von "Encoder counts" zurückzulegen.
Der Motor wird über eine Half-Bridge von einem Atmega 328 oder auch Arduino im PWM Modus angesteuert. Soweit so gut.
Desweiteren hat der Motor ein Getriebe mit 248:1 Übersetzung.
Auf der Motorachse befindet sich außerdem ein Optical Encoder
von Allied Motion, Typ CP-200.
Der Encoder hat eine Auflösung von 200 Lines und einen Index.
Er liefert die Signale Sine A und Sine B und Index (1 Impuls pro Umdrehung).
Diese werden in einem Interface TTL gerecht aufbereitet, für den Atmel.
Bei einer Motorspannung von 12V und PWM 250 messe ich mit dem Oszi eine
Frequenz von ca. 19KHz Sine A/B. Der Index hat eine Frequenz von ca. 90Hz.
Ich möchte die Signale Sine A, Sine B und Index auswerten.
Ich könnte INT0 und INT1 für Sine A/B nehmen und evtl. PCINT für Index,
falls die Frequenz nicht zu hoch ist.
Als nächstes müßte Sine A/B für die Drehrichtung ausgewertet werden und die Schritte gezählt werden.
Ich habe gelesen, daß man für die Encoder Drehrich...








3 - Fußgängerampel - Cius3 -- Fußgängerampel - Cius3

Offtopic :Was ist das denn bitte für ein Overkill?
Sowas simples bekommt doch sogar ein mit BASCOM programmierte AVR hin, mit gleichzeitiger Visualisierung der internen Timer auf nem separaten Display.
PS:
Cius.... hat das was mit Wännä zu tun?


[ Diese Nachricht wurde geändert von: ElektroNicki am 16 Jan 2012  0:39 ]...
4 - PWM mit Attiny2313 will nicht so ganz -- PWM mit Attiny2313 will nicht so ganz
Hi!
Weiß jemand, warum Bascom bei diesem einfachen Programm den dritten PWM-Kanal nicht ansteuert?

Code : '###############################################################
'## Grundgerüst eines BASCOM- Programmes für Multi2313- Board ##
'###############################################################

'Den verwendeten Mikrocontroller nennen:
$regfile = "attiny2313.dat"

'Belegungsplan des Controllers:
'PA0 Lochrasterfeld
'PA1 Lochrasterfeld
'PA2 ISP/EXT Pin5
'PB0 ISP/EXT Pin3
'PB1 Lochrasterfeld
'PB2...
5 - Displaymenü mit Bascom -- Displaymenü mit Bascom
Hi,
ich baue mir gerade unter Bascom ein Menü auf einem alphanumerischen 4*20-Display zusammen. Die Encoderauswertung habe ich schon hinbekommen, die Temperaturmessung mit NTCs funktioniert auch wie sie soll.
Jetzt habe ich allerdings das Problem, dass Bascom anscheinend viel zu viel Zeit mit dem Case Select verbraucht, da ich nur noch durch das Menü scrollen kann, wenn ich ganz langsam am Encoder drehe.
Ansonsten gehen die Variablenänderungen einfach verloren.
Ja, ich weiß, mit C ließe sich das bestimmt gaanz einfach lösen...
Da blicke ich aber nicht durch, außerdem soll das Projekt in den nächsten _Monaten_ fertig werden
Außerdem habe ich hier ne Vollversion und die möchte ich auch ausschöpfen
Kennt jemand ne bessere Möglichkeit?

Code :
6 - Mehr als 4 Timer realisieren -- Mehr als 4 Timer realisieren
Hallo Gerhard,

soll's C, Bascom oder ASM sein?

Bei Timern im Sekundenbereich würde ich das sogar eher noch ohne Interrupts machen.
Timer-Überläufe (des Hardware-Timers) kann man dann auch in einer Hauptschleife
abfragen und somit trotzdem sehr genau bleiben.

Gruß
Stefan


Für c so in etwa:


Code :
char timer[20];

void main( void )
{
char x;

( hw-timer 0 entsprechend konfigurieren..)

while( 1) // hauptschleife
7 - Soundmodul - bauen/anpassen/umstellen -- Soundmodul - bauen/anpassen/umstellen
Hallo Leute,

sorry das ich diesen Post ausgrabe, aber ich suche exakt nach der selben Möglichkeit einen Sound zu generieren!

Allerdings für ein RC-Car und nicht für einen PKW.

Es handelt sich um einen BMW M3 E90 Maßstab 1:10 bis 1:20.
Es ist kein Fertigbaukasten, sondern die Teile (Bodengruppe etc) werden von einem sehr guten Freund von mir aus Kohlefaser gefertigt. Als Antrieb wird ein Brushless verbaut.

Da aber ein Elektromotor eher nach einer Turbine als einem Verbrennungsmotor (V8) klingt, suche ich eine Möglichkeit dies in die Karosse zu integrieren.

Dafür suche ich Anregungen und Hilfestellungen.
Ich möchte einen Motorsound (einzellner Verbrennungsforgang) als PCM-Wave über einen Timer mehrfach abspielen lassen, gefolgt von einer Pause. So bekomme ich den Ausstoßvorgang gefolgt von der "Pause" des Ansaugvorganges akkustisch nachgebildet.

Als VB-Programm läuft das ganze ja schon. Experimente mittels fast-PWM bringen mir auch verschiedene Sounds mit akzeptabler Qualität.

Es hapert aber an den Sound-Files für den Motor und die angepasste Abspielgeschwindigkeit für die Sounds selber. Der "Sound"-Befehl von Bascom macht zwar nette piepsgeräusche, aber ich würde gerne die Abspielung über de...
8 - Zweifarbige LED´s langsam umschalten -- Zweifarbige LED´s langsam umschalten

Zitat :
ElektroNicki hat am 17 Apr 2009 21:31 geschrieben :
dann musst du wohl den steinigen µC-Weg gehen

So steinig stell ich mir das gar nicht vor...
ICh hab vom programmieren auch nicht viel Ahnung,aber wenn ich z.B. von nem Mega 8 ausgehe(der zwei PWM-Ausgänge hat)dürften das in BAscom keine 10 Zeilen werden.
Zwei Schleifen definieren,in denen jeweils PWM1 und PWM2 gemütlich hoch und runter "gedimmt" werden.
Jeweils nach Ende einer Schleife auf die andere umschalten > fertig
Alternativ einen der Timer verwenden. ...
9 - Atmega32 Frequenz Erzeugen -- Atmega32 Frequenz Erzeugen
erstmal danke für die schnelle Antwort Morgoth,

soweit hab ich das Verstanden, achso ich hab im Vorposting ganz vergessen dass ich das ganze in Bascom realisieren will, also wie muss ich den Timer dann konfigurieren "ctc" geht schonmal nicht oder muss ich einfach als Timer konfigurieren

Config Timer1 = **** , Prescale = 8 , Edge = Rising

Mfg g36c
...
10 - Ausführungszeit von Befehlen in BASCOM -- Ausführungszeit von Befehlen in BASCOM
Hallo zusammen. Um mein Problem zu beschreiben, zunächst was ich hier habe.

Mein ATMEGA8 steuert eine Reihe von Schieberegistern (CMOS 4094) an. Er ist mit 7,3728MHz getaktet.

Das Schieben der Bits nehme ich von Hand vor, d.h. nicht mit SPI o.ä. sondern durch selbstständiges schalten der Ports.

Das ganze ist als Ring aufgebaut, d.h. wenn ich Daten in die Schieberegister hineinschiebe, lese ich gleichzeitig an deren Ende die Daten wieder in den AVR ein.

Alles funktioniert auch wie es soll und bei einem CMOS komme ich auf ~11000 Zyklen pro Sekunde.

Komisch ist nun folgendes. Habe ich 2 CMOS dran, sind es nur noch ~ 5300 Zyklen und bei 3 noch ~4000 Zyklen.

Das ist eindeutig zu wenig und ich wollte nun gerne bestimmen wo mir hier Zeit verloren geht.

Ich programmiere in BASCOM und meine Frage ist: "Wie kann ich die Ausführungszeiten von Befehlen, bzw. Programmzeilen, messen. ODER: Bei was in BASCOM geht viel zeit verloren (Arrays, Funktionen etc.)?"

Die angebotenen Timer (z.B. SysSec) beziehen sich nur auf Sekunden - was etwas zu langsam ist.

hier noch der entsprechende Codeausschnitt:

11 - AVR zu langsam??? -- AVR zu langsam???
Hallo zusammen. Eigentlich geht es darum das die Kommunikation zwischen meinem AVR und dem PC nicht funktioniert. Es kommt immer nur 192dez. bzw. &hC0 an. Gefolgt von 1-3 mal &h00.

Weil mich das schon den ganzen Tag herausfordert, und ich nicht dahinter komme wo der Fehler liegt, hab ich mal einen kleinen Test gemacht und bin auf folgendes Problem gestossen:

Ich habe am ATMega8 einen Quarz von 7,372800 Mhz. Am Port D.6 & D.7 ist jeweils eine LED.

folgendes BASCOM Programm läuft:


Code : $regfile = "m8def.dat"
12 - Countdown- 7 Segment Anzeige -- Countdown- 7 Segment Anzeige
Ich habe jetzt einmal spaßeshalber diesen Quelltext in die BASCOM-Umgebung kopiert und kompilieren lassen. Tatsächlich wird mir nur dieser eine Fehler angezeigt. Das wundert mich sehr. Ich kann nämlich z. B. mit Pind.10 und Pind.18 nichts anfangen. Woher kommen diese großen Zahlen? Sind das Pin-Nummern? An Pin 10 beispielsweise liegt Bit 7 des Ports B, an Pin 18 liegt Bit 4 von Port B. (Im Datenblatt nachsehen, welche Port-Bits an welchen IC-Pins anliegen!)
Es müßte also nach meinem Verständnis nicht Pind.10 heißen, sondern Pinb.7 und nicht Pind.18, sondern Pinb.4 (analog bei den anderen Deklarationen und beim Setzen der Port-Bits).

Wenn ich die angezählte Zeile in zwei aufteile, kommt aber wieder ein Fehler, da nach If Portd.3 = 1 kein Befehl folgt, der in diesem Falle auszuführen wäre!

Die Programmierung genauerer Zeitabstände mittels Timer-Interrupt kommt vielleicht später mal noch. Für jetzt möchte ich aber darauf aufmerksam machen, daß die darzustellenden Zahlen im Abstand von etwa 1,25 s (und nicht 1 s) erscheinen, da pro Ziffer 1 s gewartet wird und pro Piepston 0,25...
13 - welchen Microcontroller und wie damit umgehen? -- welchen Microcontroller und wie damit umgehen?

Zitat :
Nukeman hat am 20 Jun 2008 00:45 geschrieben :
Der "richtige" Prozessor ist eine Glaubens- und Anforderungsfrage....
Für den Anfang mal einen erlernen ...


Pic oder Avr ist ungefähr das selbe wie VW oder Opel.
Jeder schwört auf seine "Marke",kann aber nicht zweifelsfrei begründen warum...
Ich stand vor nicht allzulanger Zeit auch mal vor dem Problem,mit was ich den nun mit meinem Bescheidenen Horizont anfange.
Hab mich dann letztendlich für das Pollinboard und den Atmega8 entschieden.Der hat für die ersten Spielerein genügend I/O Ports,brauchbare Timer und nen A/D Wandler,den sogar ich schon begriffen habe.Und der interne Oszillator läßt sich einfach auf ein paar verschiedene Taktraten umstellen.
Was will man als Anfänger mehr...
Und auch wenn mich DonComi und Jornbyte wieder steinigen,ich "arbeite" nach wie vor mit "Bascom"
14 - PWM beim ATMega 8 -- PWM beim ATMega 8
Ja, mit Bascom...
Da braucht man nichtmal das Datenblatt aufschalgen, oder irgendwelche Registerbezeichnungen benutzen. Das macht Bascom ja alles von allein, nachdem man ihm das per Config PWM = ... mitgeteilt hat.



Zitat :
Ich schreibe in OCR1AH / OCR1AL einen Wert. Lösche den Timer (TCNT1H / TCNT1L). Und setze den Ausgang (B1) auf „1“. Wenn der Vergleicher abgelaufen ist, soll er den Ausgang wieder auf „0“ setzen (nach 1,5ms). Nach etwa 20ms (dieser Teil des Programms ist noch nicht fertig) soll wieder alles von vorn beginnen.


Wenn ich dich recht verstehe, hat also die resultierende Frequenz eine Periodendauer von ca. 21,5ms.
Damit lässt sich der erwünschte Wert für das OC-Register errechnen. Der Vergleichswert muss so gewählt werden, dass nach 1,5ms der OC-Pin wieder gelöscht wird. Der Timer zählt nun weiter, bis ein Überlauf stattfindet. Nach diesem Überlauf wird der OC-Pin wieder gelöscht.

Das Problem ist, dass die Freqn...
15 - 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
16 - Geschwindigkeit von LED Lauflicht mit Poti regeln in Bascom -- Geschwindigkeit von LED Lauflicht mit Poti regeln in Bascom
Ich würde sowas so realisieren:

Den Timer initialisieren, mit vorberechneten Inhalten für die Zählregister. Zum Beispiel so berechnet, dass er alle x ms überläuft oder den Timer im Compare-Modus laufen lassen.

Jedenfalls wird dann periodisch ein Interrupt ausgeführt, in dem ich dann z.b. ein Bit immer weiterschiebe. So ist die CPU nicht damit beschäftig, Zeit totzuschalgen sondern kann 99% andere Aufgaben erfüllen und nur für extrem kurze Zeit das Lauflicht bedienen.

Taster etc. würd ich auch an einen ext. INT anschließen, solange ich den nicht anderweitig benutze. Sonst kann man sowas auch wieder in einen Timerinterrup auslagen, z.b. 100 mal pro Sekunde den Tasterwert abfragen.

(Bascom ist diesbezüglich grot... Debounce und Waitms sind einigermaßen resourcenfressend und sinnlos und im µC-Bereich nicht wirklich sinnvoll...) ...
17 - Interrupt ,Bascom und Atmega 8... -- Interrupt ,Bascom und Atmega 8...
Hallo Leute!
Da ihr mir ja versprochen habt, das ich auch ohne neues Unterforum hier meine Anfängerfragen loswerden kann,fang ich jetzt mal damit an...
Inzwischen habe ich es geschafft,diverse Blinker,Lauflicht und eine Ampel zum laufen zu bringen.
Mein nächstes Lernziel war die Sache mit den Interrupts(PWM und Timer haben wir dann später).Also nach dem Motto,wenn ich einen Taster drücke,soll das Programm dieses oder jenes machen.Funktionierte auch,aber genau verkehrtherum.So wie ich das dann verstanden habe,werten die Atmega 8 auf Int0 und Int1 nur eine negative Flanke als Interrupt.Die Taster auf dem Pollinboard sind aber so verdrahtet,das sie bei Druck "Hi" liefern.Kann man jetzt einen Atmega 8 eigentlich überreden,auch die positive Flanke zu werten,bzw. einen anderen Pin als Eingang zu mißbrauchen der dann dem Avr sagt:Bei auftreten dieser oder jener Ereignisses mache bitte das und das und wie müßte man da in Bascom herangehen?
Danke.

P.S. noch einen Dank an DonComi!Hab kürzlich einen Uraltfred zwischen ihm und dem Bastelheini ausgegraben.Der Inhalt selbigens hat mir mehr geholfen,als alle Literatur die ich bisher in den Händen hatte ...
18 - schaltung die nach 16 stunden betrieb selbstständig ausschaltet? -- schaltung die nach 16 stunden betrieb selbstständig ausschaltet?
Ja, das würde gehen.

Allerdings würde ich es nicht mit Bascom machen.

Da machst da folgendermaßen: Du berechnest die Registerinhalte für den 16-Bit-Timer, sodass du z.B. sehr kleine Frequenzen mit großen Periodendauern bekommst:

Frequenz = Taktfrequenz / (Vorteiler * Vergleichsregister)

Die Periodendauer ist dann der Kehrwert der Formel.

Periodendauer = (Vorteiler * Vergleichsregister) / Taktfrequenz.

Das berechnest du so, dass ein grader Wert rauskommt.

Dann machst du ne statische Variable / globale Variable, die bei jedem Timer_Compary_Match-Interrupt inkrementiert wird. Nach der Inkrementierung wird sie dann mit einem fixen Wert verglichen. Ist dieser Wert erreicht, wurde sie x-mal hochgezählt. Das musst du eben ausrechnen, welchen Wert sie dann haben muss, wenn 16h vergangen sind.

Beispiel:

Vorteiler: 1024
OCR-Register: 0xFFFF
CPU-Takt: 16MHz

größte mögliche Periodendauer:
T=(1024 * 0xFFFF)/16*10^6Hz~~4,19s

Wenn du die Formel umstellst, dass ein grader Wert herauskommt, dann musst du x-mal deine Variable hochzählen, bis x-mal der Timerwert dem Vergleichswert entsprach.

Sry, ich habe grade Formulierungsprobleme ^...
19 - Idle und Sleep -- Idle und Sleep
Dein Code sieht so aus, als ob's BASCOM wäre (da bin ich nicht der Profi). Aber es gibt eine Konstante, die sich "Timervorgabe" nennt... ich vermute, dass damit die Dauer der Zeit zwischen den Interrupts bestimmt wird. Diesen Wert müsste man erhöhen, damit nicht so oft der Interrupt ausgelöst wird.
Logischerweise muss man dann aber auch den Sekundenzähler nicht um 1 erhöhen, sondern um den angepassten wert, also z.B.: um 2, wenn durch die (neue) Konstante eine Zeit von 2 Sek. zwischen den Interrupts bestimmt.
Weiter oben wurde schon erwähnt, dass durch Betrieb mit einem "niederfrequenten" Quarz der Stromverbrauch ebenfalls drastisch reduziert wird, was aber auch eine Anpassung der Konstanten für den Timer impliziert - möglicherweise kannst Du dann die Sekunden ganz vergessen und einen Minuten - Timer aufbauen - 59 mal weniger Interrupts, aber auch die Reaktionszeit auf Ausfall wird entsprechend schlechter!

Nebenbei bemerkt:
Der ATtiny2313 hat Pins, welche einen Interrupt auslösen können, wenn sich an Ihnen der Pegel ändert ... wäre das nicht eine Möglichkeit die Netz/Batt Umschaltung zu realisieren?
...
20 - 3 x PWM in Bascom -- 3 x PWM in Bascom
Danke für die Antworten!

Leider ist mir schleierhaft, wie das in Bascom funktionieren soll.
Der kennt folgende Timer:
- TIMER0 is a 8 bit counter.
- The TIMER1 is a 16 bit counter.
- The TIMER2 is an 8 bit counter. (hat der 2313 garnicht - mein Fehler...)

In der Syntax steht aber nur bei TIMER1 was vom PWM - den hab ich auch benutzt und das geht ganz prima.
Jetzt frag ich mich aber, wie ich mit TIMER0 den selben Effekt hinbekommen kann wie mit 1, der ja automatisch die PWM erzeugt. In Bascom vor allem, weil Assembler ist mir echt zu hoch


Stefan Z ...
21 - Mein Kampf (Mit Bascom/Meine Probleme damit) -- Mein Kampf (Mit Bascom/Meine Probleme damit)
Moin,

also ich kann dir für den Anfang empfehlen, arbeite mit dem Buch von Roland Walter und der Hilfe, es wird auch des öfteren im Buch darauf hingewiesen. Falls du mit dem Englisch deine Probleme hast gibt es auch ein Buch, die komplette Hilfe von Bascom in Deutsch übersetzt. Aber ich bin auch nicht wirklicht gut in Englisch, versteh aber trotzdem ganz gut das was in der Hilfe steht, durch die Beispiele die dabei sind, oder auch durch Wörterbuch bzw. Sprach-Tools.
Link: http://bascom-avr.de/Buch.aspx?ID=2

Hier mal ein Link um in Basic einzusteigen, da bekommst du so sachen wie schleifen etc. erklärt, pass aber auf in Bascom ist es zum teil bisschen anders, schau dann im Notfall noch einmal in der Hilfe nach.
Link: http://www.tutorials.at/

Zum Thema LCD steht alles nötige auch in der Hilfe, mit kompletten Code Beispiel. Einfach kopieren, und deinem Controller anpassen und dann mit dem Code spielen, dass du das gefühl dafür bekommst.

Das kannst du auch mit anderem Code machen, z.B. vom AD-Wandler oder Timer...
22 - simples BASCOM Programm?!?!? könnt ihr mir beim erklären helfen???? -- simples BASCOM Programm?!?!? könnt ihr mir beim erklären helfen????
An der PWM bin ich gerade selber am Ausprobieren!

Ich bin auch noch recht frisch in Bascom....

Musst auf jeden fall mit einem Timer Arbeiten

Wünsche dir weithin viel spaß beim ausprobieren! ...
23 - RGB-Farbregelung mit 3 LEDs -- RGB-Farbregelung mit 3 LEDs
Hallo,

ich melde mich mal wieder zurück - diesmal mit neuem Wissen

Habe mich jetzt etwas mit µC von AVR (ATMega8) beschäftigt.
Das Problem was ich jetzt aber immer noch habe ist die Ansteuerung der 3 LEDs. Die Regelung mit 2 LEDs über einen Timer-Interrupt funktioniert schon ganz gut, leider laufe ich noch immer auf Eis, wenn ich die dritte irgendwie mit einbinden will.
Ich habe das ganze in Bascom programmiert:

Code :
$regfile = "m8def.dat" ...
24 - DCF-77-empfang mit AT90S8515...? -- DCF-77-empfang mit AT90S8515...?
hallo zusammen

ich möchte mit einem at90s8515 und dem funkuhr-modul von conrad-elektronik als großes ziel einen hifi-timer bauen, der mir zu bestimmten zeiten gezielt einzelne hifi-komponenten einschaltet.

ich habe keine große erfahrung mit der programmierung von mikrocontrollern und habe mich daher entschlossen, BASCOM-AVR zu benutzen.
um nun eine grundlage für mein projekt zu haben, möchte ich einfach nur mal die dcf-77-zeit auf einem display ausgeben, was bisher leider nicht funktioniert...

das dcf-77-programmbeispiel bei den application notes auf der bascom-internet-seite ist ziemlich lieblos von einem 8051-controller portiert und funktioniert einfach nicht.
falls jemand das so anpassen könnte, daß es läuft, wäre ich sehr dankbar. (zu finden unter http://www.mcselec.com/an_122.htm


außerdem habe ich noch folgendes (auch von einem 8051 portiertes) programm gefunden, welches ebenfalls nicht läuft. da ich leider nicht mehr weiß, wo ich das programm gefunden habe, poste ich einfach anschließend den quelltext und hoffe, daß mir jemand von euch weiterhelfen kann.


zu meiner ausstattung gibt's folgendes zu sagen:
...
25 - Bascom AVR -- Bascom AVR
Hab noch nie mit Bascom gearbeitet, aber allgemein geht das so:

Du mußt dir nen Timer aussuchen (z.B. Timer0)und den auf deine Zeit einstellen. (Möglich, dass Bascom da schon was mitliefert, um das zu berechnen. Ansonsten Datenblatt lesen.)
Wenn du alles richtig eingestellt hast (TimerInterrupt, Globales Interrupt Enable...) dann erzeugt der Timer immer nach der Zeit, die du eingestellt hast, nen Interrupt.
Dabei springt der µController an die entsprechende IRQ-Einsprungadresse. Da kannst du dein Programm hinschreiben, das ausgeführt werden soll....
26 - DMX-Empfangs-Programm für AVR -- DMX-Empfangs-Programm für AVR
also, bevor ich jetzt tausendmal nachfrage, poste ich doch einfach mal den programmtext, und du kannst dann ja mal das nötige verändern. falls du da die zeit zu hast . den teil für das lcd hab ich schon grösstenteils entfernt, weil der ja dann im bascom-text drin stehen soll.



$baud = 250000
On Urxc Rx_sub
Enable Serial
Declare Sub Get_byte

'*******************************************************************************

Config Lcdpin = Pin , Db4 = Porta.0 , Db5 = Porta.1 , Db6 = Porta.2 , Db7 = Porta.3 , E = Porta.6 , Rs = Porta.4
Config Lcd = 16 * 2
Cls
Cursor Off

'*******************************************************************************

Do
'hier soll erstmal nur der wert des eingestellten dmx-kanals in eine varible geschrieben werden!
Loop

'*******************************************************************************

$asm
Get_byte:

' das unterprogramm aus dem ASM-Listing
' inc dmx_countL mußt du als inc r22 schreiben
' so wie es in den .def steht
' also die Namen gegen die Register tauschen

' 8515 mit 8MHz

.include "8515def.inc"

.equ Channels_all = 1 ...

Nicht gefunden ? Eventuell gibt es im Elektroforum Transistornet.de für Bascom Timer And 8=8 eine Antwort
Im transitornet gefunden: Bascom Timer And


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!
Impressum       Datenschutz       Copyright © Baldur Brock Fernsehtechnik und Versand Ersatzteile in Heilbronn Deutschland       

gerechnet auf die letzten 30 Tage haben wir 9 Beiträge im Durchschnitt pro Tag       heute wurden bisher 2 Beiträge verfasst
© x sparkkelsputz        Besucher : 192919801   Heute : 5253    Gestern : 11413    Online : 345        8.9.2026    12:26
3 Besucher in den letzten 60 Sekunden        alle 20.00 Sekunden ein neuer Besucher ---- logout ----su ---- logout ----
xcvb ycvb
0.0500299930573