Willkommen Gast. Bitte einloggen oder registrieren.
März 18, 2025, 03:15:13
Übersicht Ungelesene Beiträge auflisten Hilfe Suche Spiele Mitgliederkarte Kalender Login Registrieren

Schnellsuche
+  MODDING-FAQ FORUM
|-+  Alles rund ums Modden
| |-+  Elektronik, Elektrik (Moderator: TzA)
| | |-+  Atmel und 4 PWMs
  « vorheriges nächstes »
0 Mitglieder und 0 Gäste betrachten dieses Thema.
Seiten: 1 2 [3] 4 nach unten Drucken
Autor Thema: Atmel und 4 PWMs  (Gelesen 25747 mal)
philipp.ni
Dremelfreund

*

Karma: +0/-0
Offline Offline
Geschlecht: Männlich
Beiträge: 100


Ich liebe dieses Forum!


Profil anzeigen WWW
Re: Atmel und 4 PWMs
« Antwort #30 am: Februar 11, 2005, 19:02:35 »

danke vielmals Cheesy
ich hab jetzt (endlich) den schaltplan fertig. bin mir aber nicht sicher, ob jetzt alles stimmt, darum würde ich mich sehr freuen, wenn einer von euch ihn nochmal auf mögliche fehler durchsehen könnte.
Ist alles etwas unübersichtlich geworden, aber ich denke es ist soweit alles zumindest relativ gut zu lesen. Der kritischste Bereich ist die Schaltung der Lüfter oben rechts, da bin ich mir mit der schaltung nicht ganz sicher. die widerstände vor den BTS117 sind jeweils 1k, bei den 7segment-anzeigen sinds 14 mal 150Ohm Smiley
den schaltplan gibs zu guter letzt au noch Wink : http://dls.nochwer.de/images/m...FanControll.jpg

Big Thx schonmal an alle die mir hier weitergeholfen haben und an die, die es noch werden.
philipp
Gespeichert
b0nze
Gast


E-Mail
Re: Atmel und 4 PWMs
« Antwort #31 am: Februar 11, 2005, 19:44:30 »

Ein paar kleine Bemerkungen:
-Leg' die Taster nicht an die 3 Pins, halte RXD und TXD frei, damit du noch ne PC-Kommunikation frei hast. Spar dir bei den Tastern die PullUp-Widerstände und schalte einfach die internen ein.
-Der BTS117 ist doch kein MosFet? Das is doch nen 5-beiniger Schalter. AFAIK. Du solltest den High-Side 432 nehmen und das in die 12V-Leitung hängen, weil dann könntest du später vielleicht noch die TachoSignale auswerten.
-Macht der 4511 aus jeder 0 ne "nix"? Dann isser falsch, mach lieber nen Pin hin, der die Anzeige einschaltet Wink weil nacher haste 1_ statt 10
-Die Grundlasten am Quarz (Kondis) müssen glaub 33 PIKO haben.
-Der Stützkondi am Reset-Pin muss glaub auch direkt an den Pin, wäre glaub logischer.
-Die eine Led, mit nem höheren Widerstand begrenzen. Am besten mit 1K, dann leuchtet se aber nicht mehr so arg. 330 würde ich mal sagen.
-Die PC0 und PC1 (TWI) könntest du auch verwenden, um Temperatursensoren wie den DS1621 oder LM75 anzusteuern oder andere IC-Peripherie (IO-Expander etc.). Is auch egal, falls das wäre, müsstest du eh löten.
-Nochmal Taster: die müssen entprellt werden, sonst bekommste 100Impulse bei einmal drücken. Entweder Softwaremäßig oder Hardware. Für Software hab ich was schönes gefunden: muss in ne Timer-ISR rein, sonst Tiefpass: Widerstand, Kondi.


Nur zur Anregung

b0nze
Gespeichert
philipp.ni
Dremelfreund

*

Karma: +0/-0
Offline Offline
Geschlecht: Männlich
Beiträge: 100


Ich liebe dieses Forum!


Profil anzeigen WWW
Re: Atmel und 4 PWMs
« Antwort #32 am: Februar 11, 2005, 20:31:17 »

danke vielmals... und wie immer super schnell  Shocked

- danke, das hatte ich garnet bemerkt, auserdem belegen die noch den int0, den ich vllt. mal gebrauchen könnte. wie schalt ich die internen pullup-wiederstände ein? ich kapier die tabelle im datenblatt net so ganz Undecided
- der BTS117 IST ein PowerFET mit 3 beinchen wie in den datenblättern von olaf zu sehen ist (N channel vertical power FET...) ich denke ich bleib erstmal bei denen...
- der 4511-er blockt die nullstellen, wenn pin 4 an Masse ist. somit kann ich es für das 10er-display aktivieren für das einer nicht
- fast richtig, müssten eigentlich 32p sein, die gibs nur bei reichelt net... sind richtig in der bestellliste nur n fehler aufm schaltplan *schäm*
- laut http://www.roboternetz.de/phpB....php?pic_id=153 nein, laut http://www.mikrocontroller.net...l/equipment.htm ja... hm... was mach ich denn nun  Huh
- der vorwiderstand für die led ist eigentlich berechnet (2V @ 20mA) aber warscheinlich is n 1k wirklich besser (muss au garnet hell leuchten, die gibt an ob man sich in der lüfterauswahl befindet, oder net)
- die werde ich wohl mit dem ad-converter betreiben, aber da mach ich eh nochmal ganz neu Wink
- werd ich hardwaremäßig machen Smiley

EDIT: schaltplan ist editiert Smiley
« Letzte Änderung: Februar 11, 2005, 20:52:41 von philipp.ni » Gespeichert
b0nze
Gast


E-Mail
Re: Atmel und 4 PWMs
« Antwort #33 am: Februar 11, 2005, 21:06:18 »

Das mit dem Reset-Pin is komplett unkritisch, ich dachte halt, so wärs besser.. dont know. Ich habs z.b. ohne Kondi und im Versuchsaufbau auch ohne Kondi.

Meine Taster hab ich auch mit der Routine entprellt, funktioniert einwandfrei und der Vorteil ist, dass der Tastendruck nur einmal erkannt wird.

Interne PullUps:
IO müssen als Eingang deklariert sein (DDRx = 0) und dann einfach PortX = 1, und schon haste ca. 10k dran.

b0nze
Gespeichert
philipp.ni
Dremelfreund

*

Karma: +0/-0
Offline Offline
Geschlecht: Männlich
Beiträge: 100


Ich liebe dieses Forum!


Profil anzeigen WWW
Re: Atmel und 4 PWMs
« Antwort #34 am: Februar 11, 2005, 21:37:51 »

ja, mein tastendruck wird auch nur einmal gezählt -> ich führ nur aus, wenn letzer loop-durchgang auf 0 gesetzt war. im simulator klapt alles wunderbar...

ich hab grad zum spaß mal alles in n board umgewandelt... wenn ich ätzen lass brauch ich weniger als ne halbe eurocard Wink meint ihr das krieg ich mit lochraster au hin? Wink
Gespeichert
OlafSt
Global Moderator

*

Karma: +13/-0
Offline Offline
Geschlecht: Männlich
Beiträge: 2138


Master of STLCD and LISA III


Profil anzeigen
Re: Atmel und 4 PWMs
« Antwort #35 am: Februar 11, 2005, 21:50:53 »

Meine Anmerkungen:

  • Die Vorwiderstände vor den BTS sind eigentlich überflüssig. In das Gate dort fließen maximal 20µA (Gate-Leckstrom). Es gibt, anders als beim Transistor, keine leitende Verbindung vom Gate zum Drain oder Source.
  • Die Tasterentprellung mit den 100nF-Pilen funktioniert bestimmt nur zufälligerweise  Wink Da muß ein RC-Glied hin (Widerstand 1K, Kondi 1uF oder besser 10uF)
  • Die Kondis am Quarz sollten besser 22pF haben, besonders bei dieser Taktfrequenz
  • Den PullUp am Reset des Mega16 würde ich auf 33K oder 47K vergrößern. Mit etwas Pech ist der 10K "zu stark" für den ISP
  • Auch ich empfehle, RX und TX freizuhalten. Und sei es nur für "den Fall der Fälle" Grin Für serielle I/O mußt Du dann aber am Quarz noch etwas ändern, mit 16MHz ist keine 100% präzise PC-taugliche Baudrate einstellbar.
  • Der LED-Vorwiderstand ist m.E. okay. Für eine Kontrollanzeige muß die LED nicht unbedingt superhell sein.
« Letzte Änderung: Februar 11, 2005, 22:00:40 von OlafSt » Gespeichert

Erstens: Lies was da steht. Zweitens: Denk drüber nach. Drittens: Dann erst fragen
b0nze
Gast


E-Mail
Re: Atmel und 4 PWMs
« Antwort #36 am: Februar 11, 2005, 21:53:23 »

Bei den Tastern muss nen Widerstand vor den Kondensator, glaub ich Wink.. könnten sich ja auch mal andre beteiligen  Grin, weil sonst würde der mini Kondi ja genau so schnell entladen und würde flattern. Der Widerstand begrenzt den Ent/Ladestrom.

Das "FET" hat LogicLevel Input, also könnteste dir glaub die 1kR sparen.

Pass bei Eagle auf, dass du z.B. jetzt den Stützkondi beim Reset nicht auch an 5V gehängt hast.

Also ich denke, dass das gut auf Lochraster geht. Mega in die Mitte und den Rest außen rum bauen Wink etwas denken davor, dann passt das.

b0nze

p.s. kannst mir ja mal die Source als PM schicken Wink


€dit: @Olaf: Ich glaube schon, aber er braucht's ja anscheinend nicht... er macht sie doppelt kaputt, dadurch dass er low-side schaltet Grin
« Letzte Änderung: Februar 11, 2005, 21:55:57 von b0nze » Gespeichert
philipp.ni
Dremelfreund

*

Karma: +0/-0
Offline Offline
Geschlecht: Männlich
Beiträge: 100


Ich liebe dieses Forum!


Profil anzeigen WWW
Re: Atmel und 4 PWMs
« Antwort #37 am: Februar 11, 2005, 23:25:35 »

nochmal danke Smiley

Ich bau das ganze modulähnlich auf, also der IC und das ISP auf dem mamaboard und dann jeweils ne verbindung zu ner anderen platine für einen port. so kann ich später leichter erweitern/ändern und muss net immer alles neu auf bauen bzw. was rauslöten.

Die sources gibs natürlich für alle, bei mir is alles open source und unterliegt der GNU Public Licence Wink
http://dls.nochwer.de/programm...oFanControl.zip
sind 4 dateien inclusive der m16def.inc vom AVR Studio. alles gut kommentiert denke ich... viel spaß Smiley
ach ja:
1. das ist version 1.0! Temperatursensoren und der Deep Sleep (für das "speichern" der lüftereinstellungen) like der von Colora Luminis kommen noch
2. im simulator hat alles geklapt, ich übernehm keine garantie, dass es in hardware, geschweigedenn auf nem anderen chip funktioniert!
für was die register gut sind sieht man an den definitionen. sram ist:
0x0060 aktueller fan (0-3)
0x0061 hab ich mir für was aufgehoben, weiß aber netmehr für was
0x0062-65 ist für die fangeschwindigkeiten von 0-20.
der rest ist für den stack.
in einigen routienen werden tmp-register gesichert, die garnet gebraucht werden... kann man au rausmachen wenn man will, ich war zu faul dafür :p

cu philipp
Gespeichert
b0nze
Gast


E-Mail
Re: Atmel und 4 PWMs
« Antwort #38 am: Februar 11, 2005, 23:49:10 »

Na, die Source wollte ich eher um hier noch was schreiben zu können  zunge

Kennste den Befehl: SBIS? Das gleiche wie SBRS, nur für IO-Register.. kannste also direkt auf Pind benutzen... wenn wir dabei sind (wenn überhaupt=:
FALSCH: "in tmp1, PORTD"..
in temp1, PIND (<== ist kein Register, sondern der Zustand der Pins, oder so ähnlich stehts im finen datasheet).

der rest ist für den stack.
^^ ist gut Wink wenn ich das (auf die schnelle, entschuldige mich, wenn ich falsch liege) richtig gesehen habe, dann springst du zu deinen Tastern
Code:
rcall PushMenu ;PushMenu ausführen
und zurück gehste dann:
Code:
rjmp checktaster ;Zurück
... dann wirste den ganzen Ram auch für den Stack brauchen... (mach das schnell anders, bevor Olaf das sieht Grin der haut dich windelweich...)
Nach einem RCALL kommt ein RET (vielleicht wenns passt mal nen RETI)...
Routine-Call und Subroutine-Return.. passt doch irgendwie zusammen Wink
Bei nem RCALL wird nämlich die aktuelle Adresse auf den Stack gelegt (2Byte) und mit RET wieder runtergenommen und dahin gesprungen, wo das RCALL stand. ... also, RET rein. (oder Stack-Manipulieren: 2x POP, aber das nur so für nen schlechten Stil).

Code:
ldi tmp1, 0 ;aktfan auf 0 setzen
sts aktfan, tmp1
sts 0x0062, tmp1 ;Fan-geschwindigkeiten auf 0 setzen
sts 0x0063, tmp1
sts 0x0064, tmp1
sts 0x0065, tmp1
Da gleich 2 Sachen (nix falsch, aber schönerer Stil):
(von Olaf gelernt): Erstell dir nen Register, dass immer 0 ist und eins, das immer 1 ist. dann würdeste hier schon einen befehl sparen.
2tens: mach oben ne .equ und da dann:
Code:
.equ fan_speed = 0x62
dann kannste nacher
Code:
sts fan_speed+0, tmp1 (bzw. null)
sts fan_speed+1, tmp1 (")

mehr hab ich mal nicht nachgeschaut Wink glaub aber nicht, dass das nacher auf Anhieb läuft. Klappt nie Grin

b0nze
Gespeichert
philipp.ni
Dremelfreund

*

Karma: +0/-0
Offline Offline
Geschlecht: Männlich
Beiträge: 100


Ich liebe dieses Forum!


Profil anzeigen WWW
Re: Atmel und 4 PWMs
« Antwort #39 am: Februar 12, 2005, 10:32:19 »

Das mit SBIS hab ich ewig gesucht und hab statt dessen dann wiederwillen den ganzen port eingelesen. als ich SBIS gefunden hab, war ich zu faul das noch zu ändern
das rcall <> rjmp kommt daher, dass ich woanders hinjumpen muss... ich hab wohl vergessen rcall au in rjmp umzuwandeln  headcrash
ah, ja, die lüfter muss man am anfang ja theoretisch garnet setzen, da der ram nach reset ja immer 0 ist... nur im simulator hat er die werte irgentwie beibehalten und um das programm auszuprobieren hab ich eben die kritischen stellen auf 0 gesetzt Wink
das mit den 0/1-Registern ist keine schlechte idee, v.a. wenn man noch viele register frei hat, danke für den tipp (an wen das jetzt geht, dürft ihr euch aussuchen *gg*)

was mir gestern au noch eingefallen ist: die PullUp-Widerstände sind noch net aktiviert...
Gespeichert
Freak5
Dremelfreund

*

Karma: +0/-0
Offline Offline
Geschlecht: Männlich
Beiträge: 139



Profil anzeigen WWW
Re: Atmel und 4 PWMs
« Antwort #40 am: Februar 12, 2005, 13:16:28 »

Ich habe ne Frage-> Sind diese 4511N ICs Schieberegister? Wenn ja, dann könnte man doch solche nehmen, die man immer aneinanderhängen kann. Dann könntest du mit 3 Pins fast unendlich viele Anzeigen ansteuern Grin

Edit: Wie machst du diese geilen Schaltpläne? Huh
Gespeichert

b0nze
Gast


E-Mail
Re: Atmel und 4 PWMs
« Antwort #41 am: Februar 12, 2005, 14:45:01 »

1tens: Nein, das sind keine Schieberegister.

2tens: Das Programm heißt Eagle von Cadsoft.de , ne kleine Version ist kostenlos.


[BTMT (Back To More Topic Grin)]
Ja, die PullUps müssen noch rein und benutz das richtige Register für die Taster... PinX, auch mit SBIS.

b0nze
Gespeichert
Freak5
Dremelfreund

*

Karma: +0/-0
Offline Offline
Geschlecht: Männlich
Beiträge: 139



Profil anzeigen WWW
Re: Atmel und 4 PWMs
« Antwort #42 am: Februar 12, 2005, 16:12:33 »

Oh jetzt habe ichs bei Reichelt gefunden.
Ist es nicht besser die Zahlen mit dem Microcontroller zu dekodieren(genug Leistung ist doch immer da) und dann 2 Schieberegister zu benutzen? Das spart 3 Pins und fast 50c Grin
Gespeichert

philipp.ni
Dremelfreund

*

Karma: +0/-0
Offline Offline
Geschlecht: Männlich
Beiträge: 100


Ich liebe dieses Forum!


Profil anzeigen WWW
Re: Atmel und 4 PWMs
« Antwort #43 am: Februar 12, 2005, 16:23:50 »

warum auch einfach, wenns auch kompliziert geht, stimmts?

das sind extra decoder und treiber die für 7segment-anzeigen gemacht wurden, meinste net die sind vllt besser geeignet? in der nächsten version werden die 7segments warscheinlich eh durch n lcd ersetzt, dann spar ich sogar 4 pins :p
Gespeichert
Freak5
Dremelfreund

*

Karma: +0/-0
Offline Offline
Geschlecht: Männlich
Beiträge: 139



Profil anzeigen WWW
Re: Atmel und 4 PWMs
« Antwort #44 am: Februar 13, 2005, 16:10:18 »

Wie das denn?
Gespeichert

Seiten: 1 2 [3] 4 nach oben Drucken 
« vorheriges nächstes »
Gehe zu:  

Einloggen mit Benutzername, Passwort und Sitzungslänge      

Powered by MySQL Powered by PHP
eXTReMe Tracker
Seite erstellt in 0.019 Sekunden mit 16 Zugriffen.
© 2001-2022 MODDING-FAQ FORUM | SMF
Alle Rechte vorbehalten.
Prüfe XHTML 1.0! Prüfe CSS!