PDA

Просмотр полной версии : ZX-PM (Power Manager для ATX БП :-)



jager
15.05.2007, 17:34
Привет!

Тут пока мега128 от проекта ZX-ETH-CARD подохла и не купилась новая, решил таки проводок в вилке ATX БП заменить на что-то более цивильное, что можно будет и к корпусу ATX подрубить, когда куплю его. В общем, сделал простенький повер манагер.

Что он умеет?
- умеет включать и выключать компер по нажатию на кнопку (PWR_SW). При выключении надо кнопку подержать примерно секунды 4.
- умеет включать и выключать компер по сигналу PWR_EVT который может подаваться от периферии (например, с карты ZXMC, если Камиль выделит одну ножку на контроллере :v2_rolley . Для этого надо его установить в 0, сам сигнал подтянут к 1.
- умеет включать индикатор PWR_LED на корпусе. Когда БП включен, индикатор светится постоянно, когда выключен, пример раз в две секунды моргает.
- в добавок, на плате размещено: контрольный светодиод, который питается от дежурного питалова в +5В от которого запитан и сам контроллер, разъем +5VSB (дежурное питание) и разъем +12VDC.

Несколько объяснений
1. В качестве языка программирования для контроллера взял С (avr-gcc), чисто потому, что хотелось на С. :v2_rolley
2. Не стал ставить транзистор для сигнала PS_ON идущий в ATX БП, так как там ток очень маленький (проверил на 3-х БП что у меня были под рукой), в документации поглядел, про характеристику этого сигнала ничего не нашел (может просмотрел? :v2_blush: )
3. Вообще я начинающий в железе, поэтому критика, замечания и пожелания приветствуются. :v2_rolley
4. Проект под GPL.

В аттаче все, что нужно (исходник прошивки, прошивка, проект платки в eagle и pdf-ы для печати)

Have a lot of fun! :v2_tong2:

Sonic
16.05.2007, 10:02
Здорово только ИМХО контроллер тут - из пушки по воробьям. :-) Ту же задачу можно решить на одном D-триггере с потерей лишь одной фичи - задержки в 4 сек (впрочем на Пегасе оно многих только раздражает). Стоимость девайса и сложность изготовления от этого только упадет (логика стоит копейки, и шить ее не надо).

CHRV
16.05.2007, 11:29
Здорово только ИМХО контроллер тут - из пушки по воробьям. :-) Ту же задачу можно решить на одном D-триггере с потерей лишь одной фичи - задержки в 4 сек (впрочем на Пегасе оно многих только раздражает). Стоимость девайса и сложность изготовления от этого только упадет (логика стоит копейки, и шить ее не надо).

Ну можно и с задержой (правда не 4 секунды) и антидребезгом контактов, RCцепочка после кнопки спасет отца русской демократии :).

Sonic
16.05.2007, 12:20
Или одновибратор после кнопки. :-) Тогда можно и 4 сек. Только это уже две микросхемы. :-)

jager
16.05.2007, 17:22
Ту же задачу можно решить на одном D-триггере
можно, просто хотелось поиграться.

Mikka_A
17.05.2007, 13:09
можно, просто хотелось поиграться.

не слушай ты их.
Так круче!
и моднее!!!:v2_thumb: :v2_clap2:

Бывалый
17.05.2007, 13:21
можно, просто хотелось поиграться.

Я себе тоже такой хочу сделать, может ещё что туда можно добавить. Например включение компьютера в нужное время, или ещё чего.:)

Southern Bear
17.05.2007, 14:08
может ещё что туда можно добавить
Состояние после сбоя по питанию. Типа - Вкл./Выкл./То, что было до сбоя.

jager
18.05.2007, 09:49
не слушай ты их. Так круче!
:-)


Например включение компьютера в нужное время, или ещё чего.

Состояние после сбоя по питанию.
Тогда надо делать интерфейс к ZX. Еще можно настройки вкл/выкл (задержка, например) добавить. А если делать вкл. компа по времени, тогда добавлять еще одни часики. И получается, что часики пихают куда угодно. :-)

Sonic
18.05.2007, 09:52
Не надо добавлять еще одни часики. Насколько я знаю, у часиков есть аппаратный будильник. Там вывод дергается. Можно (и нужно) этот факт использовать. На мультикарте ведь есть часики, а еще одни не нужны ИМХО.

jager
18.05.2007, 17:13
На мультикарте ведь есть часики, а еще одни не нужны ИМХО.
когда машина выключена, мультикарта тоже выключена.
Хотя вот тут я подумал, часики на ней от батарейки запитаны ведь. Тогда сработает, наверное. :-)

Southern Bear
18.05.2007, 18:09
А кто мешает её (мультикарт) от 5VSB запитать?

caro
19.05.2007, 10:41
когда машина выключена, мультикарта тоже выключена.
Хотя вот тут я подумал, часики на ней от батарейки запитаны ведь. Тогда сработает, наверное. :-)Выход сигнала /INT (вывод 7 микросхемы PCF8553) на ZXMC не задействован.
Но в принципе его можно аккуратно вывести на дополнительный двухвыводной разьемчик.
Саму плату ZXMC можно не запитывать, а использовать этот вывод RTC
для управления внешними устройствами, поскольку он представляет собой
схему с открытым истоком, проще говоря просто ключ на землю.

Добавлено через 3 минуты

А кто мешает её (мультикарт) от 5VSB запитать?Поскольку ZXMC подключена к системному разьему Спектрума,
питать ее от отдельного источника пожалуй не получится,
поскольку не приняты никакие меры по работе схемы при висящих
в воздухе входных сигналах.
Хотя на свой страх и риск наверное можно попробовать :)

Alex_NEMO
06.07.2009, 19:41
Заинтересовал меня проект Александра "ZX-PM (Power Manager для ATX БП)", но не нашел я ATtiny13, а платить лишние деньги за доставку как-то не хочется - кризис, одноко! Нашел у друга PIC12F675, и решил его заюзать, заодно и в программировании PIC'ов попрактиковаться!
Еще момент - я ориентировался на AT БП, либо любой, подходящий импульсник, например, от MeanWell. Включение БП производится реле с мощными контактами (> 8А).
В коде "оригинала" я не увидел кода, который отвечал бы контроль сигнала "PowerGood" от БП, хотя по схеме он заведен в схему.
В данной версии сигнал "PowerGood" от БП контролируется постоянно! Добавлен светодиод аварии и "пищалка" для этого же режима. Помимо этого, если неохота втавить доп. светодиод и(или) "пищалку", режим аварии индицируется и светодиодом "PowerLED" - частыми морганиями. Сброс "аварии" - (см. схему) общим выключением питания (обесточиванием контроллера).
Прога написана в демо-версии mikroC PRO for PIC(v2.15 с оффсайта(http://www.mikroe.com/download/c_pic_pro.php)) - для мелких контроллеров и прог в пару десятков строк вполне достаточно!
Вместо PIC12F675, по идее, можно использовать PIC12F629, выбрав в св-вах проекта последний.