Разделы

В сети

Пользователей: 39
Из них просматривают:
Аналоги: 10. Даташиты: 10. Новости: 5. Профиль пользователя: 3. Форум: 11.
Участников: 2
Гостей: 37

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

Партнёры


Партнёры

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

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

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

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

Каждый корпус компьютера оснащен светодиодом на передней панели, который индицирует  работу жесткого диска. Один мерцающий светодиод лучше, чем ничего, но 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 светодиодах
Технический Директор
Технический Директор
Дата регистрации: 24.06.2011
Откуда: Мухосранск
Сообщений: 2678
не в сети
О, вот это тема! Кто-нибудь может переписать прошивку под МК семейства PICххх?
Отправитель Нити

Ответы Отправитель Отправлено
 Индикация активности жесткого диска на 10 светодиодах wolf170571 20.01.2013 5:08
    Индикация активности жесткого диска на 10 светодиодах grom 20.01.2013 13:36
      Индикация активности жесткого диска на 10 светодиодах MACTEP 20.01.2013 13:37
        Индикация активности жесткого диска на 10 светодиодах evildesign 21.01.2013 1:02

 Индикация активности жесткого диска на 10 светодиодах
Технический Директор
Технический Директор
Дата регистрации: 24.06.2011
Откуда: Мухосранск
Сообщений: 2678
не в сети
В смысле "оторвать?" о_О
Отправитель Нити

Ответы Отправитель Отправлено
 Индикация активности жесткого диска на 10 светодиодах T112-10 21.01.2013 21:58
    Индикация активности жесткого диска на 10 светодиодах grom 22.01.2013 10:12
      Индикация активности жесткого диска на 10 светодиодах evildesign 22.01.2013 11:22

 Индикация активности жесткого диска на 10 светодиодах
Технический Директор
Технический Директор
Дата регистрации: 24.06.2011
Откуда: Мухосранск
Сообщений: 2678
не в сети
evildesign, что имеется ввиду под словом "оторвать"?
Отправитель Нити

Ответы Отправитель Отправлено
 Индикация активности жесткого диска на 10 светодиодах T112-10 22.01.2013 23:18

 Индикация активности жесткого диска на 10 светодиодах
Абитуриент
Абитуриент
Дата регистрации: 23.01.2013
Откуда:
Сообщений: 3
не в сети
Не айс =/
Такое можно сделать и без МК. Вот только вопрос ЗАЧЕМ это нужно???
Я в свое время стрелочный индикатор лепил. Вот это смотрелось круто. Правда было это лет 10 назад, тогда моддинг был актуален...
Отправитель Нити

Ответы Отправитель Отправлено
 Индикация активности жесткого диска на 10 светодиодах MACTEP 23.01.2013 19:30

 Индикация активности жесткого диска на 10 светодиодах
Технический Директор
Технический Директор
Дата регистрации: 24.06.2011
Откуда: Мухосранск
Сообщений: 2678
не в сети
"Такое можно сделать и без МК"


Выложи схему пжл.
Отправитель Нити

Ответы Отправитель Отправлено
 Индикация активности жесткого диска на 10 светодиодах Salgado 24.01.2013 10:46
    Индикация активности жесткого диска на 10 светодиодах KT315 24.01.2013 14:44
      Индикация активности жесткого диска на 10 светодиодах Salgado 24.01.2013 16:38

 Индикация активности жесткого диска на 10 светодиодах
Технический Директор
Технический Директор
Дата регистрации: 24.06.2011
Откуда: Мухосранск
Сообщений: 2678
не в сети
Пожалуйста, продублируйте своё сообщение в той теме. Здесь обсуждается статья.
Отправитель Нити

Ответы Отправитель Отправлено
 Индикация активности жесткого диска на 10 светодиодах KT315 23.02.2013 21:22
    Индикация активности жесткого диска на 10 светодиодах evildesign 23.02.2013 22:57
      Индикация активности жесткого диска на 10 светодиодах KT315 24.02.2013 23:36

Разное

Интересно

Если у вас нет жидкого канифольного флюса, его легко изготовить самостоятельно.
В небольшом количестве спирта растворяют кусочки канифоли до образования темно-коричневой жидкости. Наносят такой флюс на место пайки кисточкой.

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