Разделы

В сети

Пользователей: 171
Из них просматривают:
Аналоги: 58. Даташиты: 55. Инструкции: 7. Новости: 20. Остальное: 9. Ошибки: 1. Программы: 1. Производители: 1. Профиль пользователя: 2. Форум: 16. Чат: 1.
Участников: 3
Гостей: 168

an , Google , Яндекс , далее...
Рекорд 2375 человек онлайн установлен 26.12.2015.

Партнёры


Партнёры

Новые объявления

В настоящее время нет объявлений.
Раздел: Компьютеры

Индикация активности жесткого диска на 10 светодиодах

Написал MACTEP 19.01.2013 18:00:00 (Просмотров: 94857)

Каждый корпус компьютера оснащен светодиодом на передней панели, который индицирует  работу жесткого диска. Один мерцающий светодиод лучше, чем ничего, но 10-светодиодная линейная шкала, показывающая работу жесткого диска в процентах было бы действительно удобно!



 Особенности
• дисплей с помощью 10 светодиодов указывает активность жесткого диска
• Отображение активности жесткого диска с шагом 10%
• Авария ( зависит от компьютера)
• Аккуратный компактный модуль легко помещается внутри корпуса

 

 Схема

 

 

 

Печатные платы

Печатная плата (вид со стороны деталей)

плата (детали) 

 

Печатная плата (вид со стороны проводников)

плата

 

 

 Исходный код

/*****************************************************

Project  : Bargraphanzeige für die HDD-Aktivität (10LEDs)

Version  : 1.0

Date     : 25.03.2011

 

Chip type          : ATtiny2313

Clock frequency    : 4,000000 MHz

Memory model       : Tiny

External RAM size  : 0

Data Stack size    : 32

*****************************************************/

 

#include

#include

 

#define LED_10_rot_off   PORTD.0=0

#define LED_10_rot_on    PORTD.0=1

#define LED_9_gelb_off   PORTD.1=0

#define LED_9_gelb_on    PORTD.1=1

#define LED_8_gelb_off   PORTD.2=0

#define LED_8_gelb_on    PORTD.2=1

#define LED_7_gruen_off  PORTD.3=0

#define LED_7_gruen_on   PORTD.3=1

#define LED_6_gruen_off  PORTD.4=0

#define LED_6_gruen_on   PORTD.4=1

#define LED_5_gruen_off  PORTD.5=0

#define LED_5_gruen_on   PORTD.5=1

#define LED_4_gruen_off  PORTD.6=0

#define LED_4_gruen_on   PORTD.6=1

#define LED_3_gruen_off  PORTB.0=0

#define LED_3_gruen_on   PORTB.0=1

#define LED_2_gruen_off  PORTB.1=0

#define LED_2_gruen_on   PORTB.1=1

#define LED_1_gruen_off  PORTB.2=0

#define LED_1_gruen_on   PORTB.2=1

#define Signal_Out_off   PORTB.3=0

#define Signal_Out_on    PORTB.3=1

#define Signal_HDD_In    PINB.4

 

void main(void)

{

    unsigned int zaehler_signal_on=0;

    unsigned char i=0;

 

    // Crystal Oscillator division factor: 1

    #pragma optsize-

    CLKPR=0x80;

    CLKPR=0x00;

    #ifdef _OPTIMIZE_SIZE_

    #pragma optsize+

    #endif

    // Input/Output Ports initialization

    // Port A initialization

    // Func2=In Func1=In Func0=In

    // State2=T State1=T State0=T

    PORTA=0x00;

    DDRA=0x00;

 

    // Port B initialization

    // Func7=In Func6=In Func5=In Func4=In Func3=Out Func2=Out Func1=Out Func0=Out

    // State7=T State6=T State5=T State4=P State3=0 State2=0 State1=0 State0=0 

    PORTB=0x10;

    DDRB=0x0F;

 

    // Port D initialization

    // Func6=Out Func5=Out Func4=Out Func3=Out Func2=Out Func1=Out Func0=Out

    // State6=0 State5=0 State4=0 State3=0 State2=0 State1=0 State0=0

    PORTD=0x00;

    DDRD=0x7F;

 

    TCCR0A=0x00;

    TCCR0B=0x00;

    TCNT0=0x00;

    OCR0A=0x00;

    OCR0B=0x00;

 

    TCCR1A=0x00;

    TCCR1B=0x00;

    TCNT1H=0x00;

    TCNT1L=0x00;

    ICR1H=0x00;

    ICR1L=0x00;

    OCR1AH=0x00;

    OCR1AL=0x00;

    OCR1BH=0x00;

    OCR1BL=0x00;

 

    GIMSK=0x00;

    MCUCR=0x00;

 

    TIMSK=0x00;

    USICR=0x00;

    ACSR=0x80;

 

    LED_10_rot_on;  //beim Einschalten des PC´s alle 10 LEDs Ein für 2s

    LED_9_gelb_on;

    LED_8_gelb_on;

    LED_7_gruen_on;

    LED_6_gruen_on;

    LED_5_gruen_on;

    LED_4_gruen_on;

    LED_3_gruen_on;

    LED_2_gruen_on;

    LED_1_gruen_on;

    delay_ms(2000);

    LED_10_rot_off;

    delay_ms(200);

    LED_9_gelb_off;

    delay_ms(200);

    LED_8_gelb_off;

    delay_ms(200);

    LED_7_gruen_off;

    delay_ms(200);

    LED_6_gruen_off;

    delay_ms(200);

    LED_5_gruen_off;

    delay_ms(200);

    LED_4_gruen_off;

    delay_ms(200);

    LED_3_gruen_off;

    delay_ms(200);

    LED_2_gruen_off;

    delay_ms(200);

    LED_1_gruen_off;

 

    while (1)

    {

        if(Signal_HDD_In==0)Signal_Out_on;

           //Ausgabe für HDD-LED im 200ms Zeitraster

        else Signal_Out_off;

 

        zaehler_signal_on=0;

 

        for(i=0;i<200;i++) //ca. 200ms

        {

           delay_ms(1);

           if(Signal_HDD_In==0)zaehler_signal_on++;

           //zählen wie lange das HDD-Signal in 200ms Ein ist

        }

 

        LED_10_rot_off; //alle LEDs aus

        LED_9_gelb_off;

        LED_8_gelb_off;

        LED_7_gruen_off;

        LED_6_gruen_off;

        LED_5_gruen_off;

        LED_4_gruen_off;

        LED_3_gruen_off;

        LED_2_gruen_off;

        LED_1_gruen_off;

 

        //Ausgabe der HDD Aktivität auf die LEDs in 10% Schritte alle 200ms

 

        if(zaehler_signal_on>0) LED_1_gruen_on; //1...10% HDD aktivität

        if(zaehler_signal_on>20) LED_2_gruen_on; //11...20% HDD aktivität

        if(zaehler_signal_on>40) LED_3_gruen_on; //21...30% HDD aktivität

        if(zaehler_signal_on>60) LED_4_gruen_on; //31...40% HDD aktivität

        if(zaehler_signal_on>80) LED_5_gruen_on; //41...50% HDD aktivität

        if(zaehler_signal_on>100) LED_6_gruen_on; //51...60% HDD aktivität

        if(zaehler_signal_on>120) LED_7_gruen_on; //61...70% HDD aktivität

        if(zaehler_signal_on>140) LED_8_gelb_on; //71...80% HDD aktivität

        if(zaehler_signal_on>160) LED_9_gelb_on; //81...90% HDD aktivität

        if(zaehler_signal_on>180) LED_10_rot_on; //91...100% HDD aktivität

     }

}

 

 

 Видео работы индикатора

 

Видео от КТ361

Karsten Böhme (Germany) 

Скачать файлы проекта (исходник, плата в формате eagle, плата в формате lay, исходник статьи на английском)

 

 

5
Комментарии принадлежат их авторам. Мы не несем ответственности за их содержание.
 Индикация активности жесткого диска на 10 светодиодах
V.I.P.
V.I.P.
Дата регистрации: 24.06.2011
Откуда: Мухосранск
Сообщений: 2576
не в сети
О, вот это тема! Кто-нибудь может переписать прошивку под МК семейства PICххх?
 Индикация активности жесткого диска на 10 светодиодах
Технический Директор
Технический Директор
Дата регистрации: 08.01.2009
Откуда: Tallinn
Сообщений: 2276
не в сети
Охренеть! Еще две тиньки и в космос!
 Индикация активности жесткого диска на 10 светодиодах
Технический Директор
Технический Директор
Дата регистрации: 18.12.2008
Откуда: Тирасполь
Сообщений: 2077
не в сети
это реально полезное устройство, которое кому-то необходимо? Вопрос - кому?
Или элемент моддинга?
 Индикация активности жесткого диска на 10 светодиодах
Администратор
Администратор
Дата регистрации: 07.08.2008
Откуда: Тирасполь
Сообщений: 7025
не в сети
Моддинг
 Индикация активности жесткого диска на 10 светодиодах
Модератор
Модератор
Дата регистрации: 26.01.2010
Откуда: Тирасполь
Сообщений: 3869
не в сети
Диод D1 лишний. А еще, если аффтору конструкции оторвать чего-нить, то сойдет...
 Индикация активности жесткого диска на 10 светодиодах
V.I.P.
V.I.P.
Дата регистрации: 24.06.2011
Откуда: Мухосранск
Сообщений: 2576
не в сети
В смысле "оторвать?" о_О
 Индикация активности жесткого диска на 10 светодиодах
Технический Директор
Технический Директор
Дата регистрации: 17.07.2010
Откуда: Спиртогонск
Сообщений: 2088
не в сети
Наверное, в прямомОткрыть изображение в новом окне
 Индикация активности жесткого диска на 10 светодиодах
Технический Директор
Технический Директор
Дата регистрации: 18.12.2008
Откуда: Тирасполь
Сообщений: 2077
не в сети
что есть SV1, HDD led с платы и HDD led на корпусе?
 Индикация активности жесткого диска на 10 светодиодах
Модератор
Модератор
Дата регистрации: 26.01.2010
Откуда: Тирасполь
Сообщений: 3869
не в сети
sv1 - разъем внутрисхемного программирования. оптопара подключается к выходу материнки, выход процессора подключается к штатному светодиоду.
 Индикация активности жесткого диска на 10 светодиодах
V.I.P.
V.I.P.
Дата регистрации: 24.06.2011
Откуда: Мухосранск
Сообщений: 2576
не в сети
evildesign, что имеется ввиду под словом "оторвать"?
 Индикация активности жесткого диска на 10 светодиодах
Технический Директор
Технический Директор
Дата регистрации: 17.07.2010
Откуда: Спиртогонск
Сообщений: 2088
не в сети
И самое главное, что оторвать?Открыть изображение в новом окне
 Индикация активности жесткого диска на 10 светодиодах
Абитуриент
Абитуриент
Дата регистрации: 23.01.2013
Откуда:
Сообщений: 3
не в сети
Не айс =/
Такое можно сделать и без МК. Вот только вопрос ЗАЧЕМ это нужно???
Я в свое время стрелочный индикатор лепил. Вот это смотрелось круто. Правда было это лет 10 назад, тогда моддинг был актуален...
 Индикация активности жесткого диска на 10 светодиодах
Администратор
Администратор
Дата регистрации: 07.08.2008
Откуда: Тирасполь
Сообщений: 7025
не в сети
Вам не надо? Пройдите мимо...
 Индикация активности жесткого диска на 10 светодиодах
V.I.P.
V.I.P.
Дата регистрации: 24.06.2011
Откуда: Мухосранск
Сообщений: 2576
не в сети
"Такое можно сделать и без МК"


Выложи схему пжл.
 Индикация активности жесткого диска на 10 светодиодах
Абитуриент
Абитуриент
Дата регистрации: 23.01.2013
Откуда:
Сообщений: 3
не в сети
Смотря на чем хотите делать. Микросхем таких куча разных. Зависит от того сколько светодиодов нужно. К примеру очень популярная LM3914 на 10 светодиодов. Или еще одна оч популярная AN6884 (имеет кучу аналогов). Там на 5 светодиодов. Схемы берутся из даташитов. Из обвязки нужно пару резисторов и кондер по питанию.
 Индикация активности жесткого диска на 10 светодиодах
V.I.P.
V.I.P.
Дата регистрации: 24.06.2011
Откуда: Мухосранск
Сообщений: 2576
не в сети
radio-hobby.org/modules/newbb/viewtopic.php?start=0&topic_id=1158&viewmode=flat&order=ASC&type=&mode=0 на 3914 хотел, ничего нк получилось
 Индикация активности жесткого диска на 10 светодиодах
Абитуриент
Абитуриент
Дата регистрации: 23.01.2013
Откуда:
Сообщений: 3
не в сети
VT1 R2 R3 прям так нужен??? Зачем штатный светодиод если ставим линейку?
R6 R5 вообще не нужно...R1 R4 сильно много. Вот 470 туда думаю подойдет.
Посмотрите внимательно даташит. Если конкретно под индикатор Жесткого диска, то:
1. Между 8 и 7 выводом 10к
2. 6 вывод кидаем на 7.
3. Между 8 и массой 3к

Все это относится к схеме http://radio-hobby.org/uploads/newbb/6140_50a7c1ad0079b.gif
 Индикация активности жесткого диска на 10 светодиодах
V.I.P.
V.I.P.
Дата регистрации: 24.06.2011
Откуда: Мухосранск
Сообщений: 2576
не в сети
Пожалуйста, продублируйте своё сообщение в той теме. Здесь обсуждается статья.
 Индикация активности жесткого диска на 10 светодиодах
V.I.P.
V.I.P.
Дата регистрации: 24.06.2011
Откуда: Мухосранск
Сообщений: 2576
не в сети
А где фьюзы взять?
 Индикация активности жесткого диска на 10 светодиодах
Модератор
Модератор
Дата регистрации: 26.01.2010
Откуда: Тирасполь
Сообщений: 3869
не в сети
CKSEL3..0 : 0010
SUT1..0 : 10
CKDIV8 : 1
BODLEVEL 2..0 : 101

Остальные оставить как есть, незапрограммированными, т.е.в "1"
 Индикация активности жесткого диска на 10 светодиодах
V.I.P.
V.I.P.
Дата регистрации: 24.06.2011
Откуда: Мухосранск
Сообщений: 2576
не в сети
СП! Собрал этот индикатор - не понравился. Тормознутый он. На LM3914 шустрее бегает, и от этого информативнее!

Разное

Обработанные водным раствором щелочи стальные контакты (например, батарейного отсека переносной магнитолы или пульта ДУ) никогда не заржавеют.

Интересно

Посыпав место пайки песком или натерев крошащимся камнем, можно паять обычными методами даже алюминий.

Похожие статьи