![]() |
PCI-Slot: einzelne Pins ansprechen
In mein neues Gehäuse soll 'ne Lüftersteuerung rein - selfmade
Na ja, das einzige was passieren soll, ist, dass wenn ich einen Schalter betätige, dass das mein Prog mitkriegt und dann den entsprechenden Lüfter an oder ausschaltet. Logischerweise brauch ich dazu aber auch eine Schnittstelle. Normalerweise würd die Parallele ausreichen, 8 Pins rein und raus wären da knapp noch ok. Nachdem mein Gehäuse aber Stealthmod werden soll, sollte man die Lüftersteuerung nicht immer sehen, die soll mit 'nem kleinen Motor rauskommen, ebenso 2 kleine Lüfter -> ich brauch für die beiden Motoren 4 Pins mehr -> und da hab ich das Problem. Ich hab nicht mehr genug ausgänge. Zudem kanns auch mal passieren, dass ein Drucker ran muss. Also überleg ich, was auf meinem MB noch so alles da ist: USB - ein bisschen zu klein PS2 - auch dann seh ich, dass ich noch PCI-Slots freihabe. Dort: ca. 100 Pins. Wär reichlich genug. Nur - Wie kann ich die Pins ansprechen? Muss ich dafür 'nen eigenen Treiber proggen? Oder gibts da eine Unit oder DLL, die das ermöglicht? |
Re: PCI-Slot: einzelne Pins ansprechen
Du hast da gar keine Möglichkeit.
Der PCI Bus wird durch einen eigenen Controller gesteuert. Dieser Controller ist nicht programmierbar, denn die Kommunikation über den BUS wird durch Interrupts geregelt. Selbst die Gerätetreiber sprechen 'nur' die Devices / Chips hinter direkt an. Alles andere (welcher PCI-Slot, welche Interrupts) steuert der Bus Controller. Du hast eine möglichkeit, und zwar gibt es (bei Conrad glaube ich) einige PCI-'Bastelkarten'. Diese Karten sind einfach einsteckbar und liefern einen eigenen Treiber mit. Über diesen Treiber kannst Du dann auf der Karte Pins an- und ausschalten. Allerdings haben die meistens auch nur einen Ausgang nach draussen. Da müsstest Du dann aller wahrscheinlichkeit nach die Dinger nach innen umlöten. Das sollte aber eigentlich machbar sein. Oder noch ne andere Idee: Den Parallel port brauchst Du ja wohl kaum. Theoretisch kannst Du die Pins auch direkt auf dem Bord abgreifen. Zumindest ältere Boards hatten einen Flachbandkabel-Anschluss für den Parallelport. |
Re: PCI-Slot: einzelne Pins ansprechen
Sorry, aber ich halte das für einen kompletten Wahnsinn, heutzutage noch eine Hardware zu entwickeln, die um LPT hängt und für die mit den Pins gewackelt werden muss - vor allem da unter den aktuellen OS'n dies nur noch über Umwege zu erreichen ist.
Ich würde da eher zu USB raten. Der Chiphersteller Cypress, und auch einige andere (IO-Warrier!?) bieten entsprechende USB-Port-Controller und Treiber/Demos/Scripte an, über die, je nach IC, analoge und digitale Signale erfasst/generiert werden können. Solche Bausteine lassen sich z.B. recht gut bei ![]() Eine kleine Signalverstärkung wird zur Ansteuerung der Motoren wohl eh nötig sein. Allerdings hab ich noch nicht so ganz verstanden, wieso bei 2 Motoren 4 Leitungen/Pins nötig sein sollten (Schrittmotoren!?). Entweder die Motoren 2x aud Vcc und GND über einen NPN schalten, oder 2x an GND und über 2 PNP nach Vcc schalten. Evtl. Entstörung beachten und vielleicht sogar parallel hängen... Für Hobby-Suizidgefährdete bietet z.B. Altera spezielle CPLD's an, welche zum Anschluss an den PCI-Bus geeignet sind. Allerdings gilt zu beachten, dass generell beim PCI-Bus bestimmte Randbedingungen zu erfüllen sind. Sprich z.B. min./max. Leiterbahnlängen, Führung der Leiterbahnen, Signallaufzeiten. Um sowas zu entwickelt bedarf es etwas mehr als gängiger EDA-Freeware... Grüsse! |
Re: PCI-Slot: einzelne Pins ansprechen
Ich brach für 2 Motoren 4 Pins. Warum?
Ich muss 3 Zustände beschreiben können: Vorwärts, rückwärts, stop. dafür brauch ich 2 bit. bei 2 Motoren macht das 4 Bit. Und ich möcht irgendwie nicht eine Allzugroße Schaltung reintun, und gekauftes Zeug echt nur im allerletzen notfall. Wenn der PCI-Slot (bzw. dessen Pins) über den Controller gesteuert werden, gings da nicht, den Controller zu steuern? Irgendwie musses ja gehen! |
Re: PCI-Slot: einzelne Pins ansprechen
Gameport ?? // Martin
|
Re: PCI-Slot: einzelne Pins ansprechen
Zitat:
Zitat:
|
Re: PCI-Slot: einzelne Pins ansprechen
einfach !
mach nen schieberegister oder auch mehrere an deinen LPT port und steuer den dann über delphi ( auch mit XP usw möglich ! man schaue sich ältere threads zum thema "zlportio" an ) man benutzt dann den LPT port als serielles interface und "füllt" dann damit die schieberegister die dann wiederum parallel ausgeben -> das selbe ginge auch umgedreht also als input. das ist im prinzip ne sehr kleine schaltung ( ICs, transistoren, paar widerstände und dioden falls relais angesteuert werden sollen ) und sehr preiswert ! und sehr sehr einfach erweiterbar (einfach noch paar schieberegister dran hängen und die bit schlange verlängern die da reingeschoben wird) es können auch 2 Serielle Busse draus gemacht werden ( 2x4Bit ) für 2 schieberegister schlangen wobei man dann um das doppelte an speed gewinnt.. jedoch müsste der LPT bus schon mehr als ausreichen ! hab diverse LCD displays schon so auf diese weise an einen LPT drangehängt und mit einer eigenentwicklung an software dann die LCDs angesteuert ( hab so ca 10 stück dran gehabt und jedes hatte 2 schieberegister mit je 8 bit ) |
Re: PCI-Slot: einzelne Pins ansprechen
Vorwärts? Rückwärts? Stop?
Also Vorwärts = Spannung da; Stop = Spannung weg und Rückwärts - für was sollte ein Lüfter rückwärts laufen??? :gruebel: |
Re: PCI-Slot: einzelne Pins ansprechen
Zitat:
|
Re: PCI-Slot: einzelne Pins ansprechen
Aber wo bitte liegt der Sinn? :gruebel:
AFAIK ist in der ATX-Spezifikation definiert, dass, z.B. ein Netzteillüfter, immer die Frischluft ins Gehäuse zieht, sodass dort ein Überdruck entsteht. Dies soll u.a. eine Verschmutzung durch Umgebungsstaub minimieren. Ein anders laufender Gehäuselüfter wäre da kontraproduktiv. Desweiteren sind die Lüfter doch meist eh so optimiert, dass der Luftstrom, selbst bei einer Umpolung, nur in eine Richtung optimal ist. Ein Umkehren des Luftstroms kann doch auch durch einen umgekehrten Einbau des Lüfters geschehen... Aber wie gesagt, die Möglichkeit einen Lüfter umzukehren erscheint mir IMHO recht sinnfrei... :twisted: Grüsse! |
Re: PCI-Slot: einzelne Pins ansprechen
Die Lüfter haben auch nur den zustand ein/bzw. aus
Der Motor, der aber die Frontabdeckung rausfahren soll, damit der Lüfter an meiner Front etwas luft bekommt, muss eben rein UND rausfahren können! @supermuckl: Den LTP seriell zu nutzen hab ich mir auch schon gedacht. Ich hätt mir da eine schaltung mit boolscher algebra aufgezeichnet, is aber ziemlich groß geworden... Weißt du, ob/wo man eine von dir beschriebene Schaltung (bzw. Zeichnung) herkriegen kann? |
Re: PCI-Slot: einzelne Pins ansprechen
Ok, aber ich kann mich nur wiederholen - benutze USB und du bekommst die wenigsten Probleme. Immerhin hat ja fast jedes MB auch interne Anschlüsse. Schau dir dazu mal folgenden Artikel aus der c't an:
![]() Grüsse! |
Re: PCI-Slot: einzelne Pins ansprechen
Boah Skiron :) Vielleicht solltest du dir einfach 'nen billigen Lüfter kaufen. So teuer sind die Dinger ja nicht, oder?
|
Re: PCI-Slot: einzelne Pins ansprechen
Zitat:
Dabei fällt mir ein: Ich hab kein Diskettenlaufwerk drinnen! ob man da was ansteuern kann? *verzweifeltNachWasZumAnsteckenSuch* |
Re: PCI-Slot: einzelne Pins ansprechen
Guckst Du
![]() |
Re: PCI-Slot: einzelne Pins ansprechen
Zitat:
also alle gehäuse die ich bis jetzt gesehen habe ( und das sind sehr sehr viele ) sind alle so gebaut das das netzteil die luft RAUS SAUGT @ Skiron das hab ich damals selbst entworfen.. einen schaltplan gab es nicht. hab alles löting by probiering aufgebaut und dann das entsprechende "protocol" dazu programmiert wo mir die schieberegister gesteuert hat also im prinzip ists echt sehr einfach sowas zu bauen ( da brauchste keine logikbausteine oder sonstiges ! nur schieberegister!! ) ich mach wenn ich zeit hab mal nen schaltplan (ausm kopf) ich hoffe ich krieg das nochmal so hin o_O jedenfalls kann ich dir trotzdem mal wörtlich erklären wie das funzt im detail: 1. wir haben x LPT ausgänge die wir benutzen werden ( sagen wir mal 4 ) 2. ein ausgang ist DATA, einer CLOCK und einer ENABLE ich weis jetzt nicht mehr genau wie nen schieberegister funzt aber ich denke so: ich habe nen seriellen eingang ( data ) an dem ich jeweils ein bit anlege und dann mit jedem CLOCK signal die bits "rein schiebe" das heist: bei jeder positiven flanke von CLOCK wird das schieberegister die am DATA eingang anliegende 0 oder 1 in die "schlange" übernehmen und den rest am ausgang wieder rausschieben falls es schon voll ist ( da könnte wiederum das nächste schieberegister dran ) clock würde einfach durchgeschleift werden ( alle kriegen das parallel ab ) REGISTER1 REGISTER2 ---^----------^ und data würde seriell durchgeschleift werden -> REGISTER1 -> REGISTER2 -> usw und mit enable lasse ich alle register gleichzeitig ( auch parallel zu jedem IC verdrahtet ) die bits an die ausgänge PARALLEL ausgeben ( die speichert es bis zum nächsten ENABLE wo dann die aktuellen bits wieder an die ausgänge transferiert werden ) wie die eingänge nun genau heissen weis ich nimmer -> müsste man im datenblatt nachschauen ( icmaster.com ->registrierung free ) müsste aber änlich sein die entsprechende software macht man sich halt mit ZLportio komponente ( ne pas ) die auch unter NT systemen aufn LPT zugreifen kann und dann gibt man einfach seine daten in serieller form an die register ab und die wiederum mit einem schlag ( über enable ) dann parallel an weis der teufel weiter ( lcd displays, leuchtdioden, relais (mit transistor!), transistoren, usw ) die schnelligkeit ist hervorragend! keine bange |
Re: PCI-Slot: einzelne Pins ansprechen
|
Re: PCI-Slot: einzelne Pins ansprechen
Wozu An/Aus per PC steuern? Du kannst auch SEHR kleine schalter einbauen, wenn du das geschickt machst, dann sieht es noch besser, als ohne schlater.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:13 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz