Страница 1763 из 2451

Re: Часы на газоразрядных индикаторах

Добавлено: Вт дек 08, 2015 07:05:05
SLvik
Iggis писал(а):Транзисторы тоже грелись, но резисторы (когда были 10к) были горячее. Температуру мерил костяшкой мизинца, ну а как еще? :)
Соберите термометр.
:)

Re: Часы на газоразрядных индикаторах

Добавлено: Вт дек 08, 2015 09:27:54
diafour
uldemir писал(а):И это, длинные исходники прячьте, пожалуйста, под спойлер. А то меня икота проняла от ардуино-стайла.
Это классический индус-стайл, когда программисту платят за количество строк =)

art100, switch и d,b,c,a можно убрать, если применить побитовые операции с cifra1, а код в loop() вообще до 5 строк сократить, если пины положить в массивы. И размер прошивки значительно уменьшится.

Re: Часы на газоразрядных индикаторах

Добавлено: Вт дек 08, 2015 12:01:25
art100
diafour писал(а):... платят за количество строк ......можно ... размер прошивки....
Щас. Когда сопли пайки отлавливаешь. Когда перепутки ищешь. Когда Рискуешь спалить всю херотень сразу. Еще замыливать глаз ифами форами милисекундами побитовыми сдвигами. Уже жирно от того, что свич написал. Уже можно 1-ин пин 1-на единица 1-ин коментарий удалить 1-ной строкой.
А вы на асме код для отладок новомодных платок пишите? :))

Я вот о способе руления сейчас думаю
1.пимпочик
2.джопстик
3.енкодер

Я пока склоняюсь к джойстику
одна палка - пять кнопок симитирую
удержанием еще кнопариков виртуальных добавлю

Код: Выделить всё

  int ModeInput = digitalRead(PIN_Mode);  
  if(ModeInput==0)  ButtonPressMode = true;
  while(ModeInput==0){    ModeTimer++;    delay(100);    ModeInput = digitalRead(PIN_Mode);  }
  //If the button is pressed shortly, these actions will be taken just after the button is released.
  if (Mode==1 && ButtonPressMode==true && ModeInput==1 && ModeTimer<5){
      Mode =2;   ButtonPressMode =false;                  ModeTimer=0;  }//
  if (Mode==2 && ButtonPressMode==true && ModeInput==1 && ModeTimer<5){
      Mode =3;   ButtonPressMode =false;                  ModeTimer=0;  }//.
  if (Mode==3 && ButtonPressMode==true && ModeInput==1 && ModeTimer<5){
      Mode =1;   ButtonPressMode =false;                  ModeTimer=0;  }//
  //If the button is pressed longly, 
  if((Mode==1||Mode==2||Mode==3) && ButtonPressMode==true && ModeInput==1 && ModeTimer>=5){
      Mode =0;   ButtonPressMode =false;  ModeTimer=0;  }
  if (Mode==0 && ButtonPressMode==true && ModeInput==1 && ModeTimer>=5){
      Mode =1;   ButtonPressMode =false;  ModeTimer=0;  }
  // SETTING SELECTION  ---------------------------------------------
  int LeftInput  = digitalRead(PIN_Setting1);
  int RightInput = digitalRead(PIN_Setting2);

  if( LeftInput== LOW && RightInput==HIGH)  Set = 0; .
  if(RightInput== LOW &&  LeftInput==HIGH)  Set = 2; 
  if(RightInput==HIGH &&  LeftInput==HIGH)  Set = 1; 
  
  if(Mode==3){
    if(LeftInput==LOW)    ButtonPressAlar =true;
    if(LeftInput==HIGH && ButtonPressAlar==true && CmdAlarm==false){  
                          ButtonPressAlar =false;  CmdAlarm=  true;    }
    if(LeftInput==HIGH && ButtonPressAlar==true && CmdAlarm== true){ //turn alarm off.
                          ButtonPressAlar =false;  CmdAlarm= false;    }
  }

Для начала ковыряния какой-нибудь кнопки напишу что-нибудь такое
Про Али-Бабу и Сим-Сима

Код: Выделить всё

// art100 to write tester pin alibaba
#define PIN_SimSimOtkroysya  2
#define PIN_Bulijnik        13
//---------------------------------------------------------------------
void setup(){
  pinMode(PIN_SimSimOtkroysya, INPUT_PULLUP);
  pinMode(PIN_Bulijnik,              OUTPUT);

}
//===============
void loop() {
  int BatonOnIVAfrikaBaton = digitalRead(PIN_SimSimOtkroysya);
  if  (BatonOnIVAfrikaBaton == LOW){ digitalWrite(PIN_Bulijnik,HIGH); }
  else                             { digitalWrite(PIN_Bulijnik, LOW); }
}
//===============


:)

Re: Часы на газоразрядных индикаторах

Добавлено: Вт дек 08, 2015 19:42:26
diafour
Асм, не асм, на копипасту профессиональный рефлекс, как красная тряпка для быка :)

Напишите управление одной кнопкой. Вот есть велокомп, на нём все функции настраиваются одной кнопкой, в том числе часы.

Re: Часы на газоразрядных индикаторах

Добавлено: Вт дек 08, 2015 19:53:51
woddy
чтоб вам всю жизнь консольные команды морзянкой вводить)

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

Re: Часы на газоразрядных индикаторах

Добавлено: Вт дек 08, 2015 21:45:06
art100
И пришли 5-ять разбойников к пещере алибабы. Да давай кричать Сим-Сим откройся.
1.Кино https://yadi.sk/i/A0krcfwjm63uy
2.Вино Изображение
3.Домино

Код: Выделить всё

// art100 to write tester pin alibaba and 40 razboynikov ArduinoProMini new china 2$
//pins-------------------------
#define PIN_Razboynik_Enter  12
#define PIN_Razboynik_Left_  A0
#define PIN_Razboynik_Right  A1
#define PIN_Razboynik_Up___  A5
#define PIN_Razboynik_Down_  A4
//consts----------------------------
// usb------------------------------
//testkeyboard20151208int  commandusb        = 0; //
//---------------------------------------------------------------------
void setup(){
  Serial.begin(9600);
  pinMode(PIN_Razboynik_Enter,INPUT_PULLUP);
  pinMode(PIN_Razboynik_Left_,INPUT_PULLUP);
  pinMode(PIN_Razboynik_Right,INPUT_PULLUP);
  pinMode(PIN_Razboynik_Up___,INPUT_PULLUP);
  pinMode(PIN_Razboynik_Down_,INPUT_PULLUP);
}
//===============
void loop() {
  // usb ----------------------------------------------------------------
//  if(Serial.available()>0){   
//    commandusb = Serial.read();
  if(digitalRead(PIN_Razboynik_Enter)==LOW){ Serial.println("PIN_Razboynik_Enter"); }
  if(digitalRead(PIN_Razboynik_Left_)==LOW){ Serial.println("PIN_Razboynik_Left_"); }
  if(digitalRead(PIN_Razboynik_Right)==LOW){ Serial.println("PIN_Razboynik_Right"); }
  if(digitalRead(PIN_Razboynik_Up___)==LOW){ Serial.println("PIN_Razboynik_Up___"); }
  if(digitalRead(PIN_Razboynik_Down_)==LOW){ Serial.println("PIN_Razboynik_Down_"); }
//  }
  // usb ----------------------------------------------------------------    
}
//===============

Re: Часы на газоразрядных индикаторах

Добавлено: Ср дек 09, 2015 07:22:54
SLvik
woddy писал(а):что за извращения типа управления одной кнопкой? понимаю на велокомпе может не быть места. тут же огромные часы, где поместятся и три и пять кнопок.
Почему извращение?
У меня 3 проекта с управлением одной кнопкой.
В этих корпусах больше 1й дырки под кнопку не просверлишь.

Здесь была одна дырочка в корпусе - как раз под кнопку.
http://radiokot.ru/forum/viewtopic.php?p=507193#p507193

В этом я снизу сверлил.
Они ходят непрерывно по сей день...
http://radiokot.ru/forum/viewtopic.php?p=865324#p865324

3й не нашёл - он был в корпусе мини керосинки на ИН-18.
:)

:idea:
Ещё в 2х тюнерах ставится время, время выключения,
время включения и коррекция одной кнопкой часов.
:)

Re: Часы на газоразрядных индикаторах

Добавлено: Ср дек 09, 2015 09:39:00
art100
SLvik писал(а):...У меня 3 проекта с управлением одной кнопкой...В ... корпусах больше 1й дырки... не просверлишь... :)
Знаете вы толк в извращениях.
Я думал не выкину газоразрядник в мусорку, а тут такие извращенные мысли появляются. :)
Нет.Нет.Нет. Чур меня чертовщина и бесовщина. :) Умные мысли назад. Назад. В головушку. :)
Ставлю себе задачу.
Часы на газоразрядных индикаторах с кодом на Arduino.
Точка.
Если отвлекусь от задания можете попинать меня ногами наставляя на путь истинный. :kill:
Вопрос:
1.Есть у кого-нибудь на С код делящий текущее общее время одной строкой на 6 разрядов?
Или формат какой модно нынче. 2 цифры часы 2 цифры минуты 2 цифры секунды?
23 59 59
или
23:59
Я считаю что секунды отображать это зло но зло можно потом выключить.

Re: Часы на газоразрядных индикаторах

Добавлено: Ср дек 09, 2015 12:49:25
woddy
SLvik, когда это органичение корпуса/дизайна (особненно на одноламповых или наручных часах), то конечно оправдано. В остальных случаях нет.

Re: Часы на газоразрядных индикаторах

Добавлено: Ср дек 09, 2015 14:51:07
diafour
art100 писал(а):текущее общее время
Не хватает информации. Время в каком виде? По i2c приходит от DS1307 (и т.п.) или это количество секунд в счётчике? А может это ascii строка из gps приёмника, полученная по rs232?

Re: Часы на газоразрядных индикаторах

Добавлено: Ср дек 09, 2015 21:02:22
art100
diafour писал(а):...По i2c приходит от DS1307..
Не помню чтобы я про разряды думал. ЖКИ с "контроллерами-мотороллерами HT47xxxxx" всасывающие строчками слету расслабляют.

Для страдальцев сегодня ловил соплю в крайнем левом разряде выдавил из себя пару циклов фо. Нате вам погрейте душеньку. :music:
Кино https://yadi.sk/i/qlAh7yQ4m7V8E
Вино https://yadi.sk/i/MTdDL6F7m7V9X
Домино

Код: Выделить всё

//art100 tester k155id1 mc34063 0.22Om irf740 kt3107 220mkGn 4.7mkf mpsa92 mpsa42 in-12a
//pins------------------------
#define PIN_K155ID1_A0  12//2//low
#define PIN_K155ID1_A3  11//3//
#define PIN_K155ID1_A1  10//4//
#define PIN_K155ID1_A2   8//5//
#define PIN_ANOD_1      A3//6//high
#define PIN_ANOD_2      A2//7
#define PIN_ANOD_3       4//8
#define PIN_ANOD_4       2//9
#define PIN_ANOD_5       1//10
#define PIN_ANOD_6       0//11
//consts---------------------
int timer1=1000;//100;
//------------------------------------------------------------------
void setup(){ 
  pinMode(PIN_K155ID1_A0, OUTPUT);digitalWrite(PIN_K155ID1_A0,HIGH); 
  pinMode(PIN_K155ID1_A3, OUTPUT);digitalWrite(PIN_K155ID1_A3,HIGH);  
  pinMode(PIN_K155ID1_A1, OUTPUT);digitalWrite(PIN_K155ID1_A1,HIGH);  
  pinMode(PIN_K155ID1_A2, OUTPUT);digitalWrite(PIN_K155ID1_A2,HIGH); 
  pinMode(PIN_ANOD_1,     OUTPUT);digitalWrite(PIN_ANOD_1,     LOW); 
  pinMode(PIN_ANOD_2,     OUTPUT);digitalWrite(PIN_ANOD_2,     LOW); 
  pinMode(PIN_ANOD_3,     OUTPUT);digitalWrite(PIN_ANOD_3,     LOW); 
  pinMode(PIN_ANOD_4,     OUTPUT);digitalWrite(PIN_ANOD_4,     LOW); 
  pinMode(PIN_ANOD_5,     OUTPUT);digitalWrite(PIN_ANOD_5,     LOW); 
  pinMode(PIN_ANOD_6,     OUTPUT);digitalWrite(PIN_ANOD_6,     LOW);   
 
}
//=====================
void loop(){
  for(int cifra=0;cifra<10;cifra++){
    for(int razryad=1;razryad<7;razryad++){
      Set_K155ID1_razryad1(cifra,razryad);delay(timer1);
      digitalWrite(PIN_ANOD_1,     LOW); 
      digitalWrite(PIN_ANOD_2,     LOW); 
      digitalWrite(PIN_ANOD_3,     LOW); 
      digitalWrite(PIN_ANOD_4,     LOW); 
      digitalWrite(PIN_ANOD_5,     LOW); 
      digitalWrite(PIN_ANOD_6,     LOW);
    }
  }  
}
//================
void Set_K155ID1_razryad1(int cifra1,int razryad1){
  int d,c,b,a;
  switch(razryad1){
    case 1:  digitalWrite(PIN_ANOD_1,HIGH); break;
    case 2:  digitalWrite(PIN_ANOD_2,HIGH); break;
    case 3:  digitalWrite(PIN_ANOD_3,HIGH); break;
    case 4:  digitalWrite(PIN_ANOD_4,HIGH); break;
    case 5:  digitalWrite(PIN_ANOD_5,HIGH); break;
    case 6:  digitalWrite(PIN_ANOD_6,HIGH); break;    
  }  
  switch(cifra1){
    case 0:  d=0;c=0;b=0;a=0; break;
    case 1:  d=0;c=0;b=0;a=1; break;
    case 2:  d=0;c=0;b=1;a=0; break;
    case 3:  d=0;c=0;b=1;a=1; break;
    case 4:  d=0;c=1;b=0;a=0; break;
    case 5:  d=0;c=1;b=0;a=1; break;
    case 6:  d=0;c=1;b=1;a=0; break;
    case 7:  d=0;c=1;b=1;a=1; break;
    case 8:  d=1;c=0;b=0;a=0; break;
    case 9:  d=1;c=0;b=0;a=1; break;
    default: d=1;c=1;b=1;a=1; break;
  }  
  digitalWrite(PIN_K155ID1_A3,d);digitalWrite(PIN_K155ID1_A2,c);digitalWrite(PIN_K155ID1_A1,b);digitalWrite(PIN_K155ID1_A0,a);
}


//------------------------------------------------------------------
// K155ID1 Table
//D C B A #
//L,L,L,L 0
//L,L,L,H 1
//L,L,H,L 2
//L,L,H,H 3
//L,H,L,L 4
//L,H,L,H 5
//L,H,H,L 6
//L,H,H,H 7
//H,L,L,L 8
//H,L,L,H 9

//------------------------------------------------------------------------------------------------------------------------------
Расслабся. Скажи что-нибудь доброе светлое и прекрасное. И всем станет хорошо. :)
Вот пока нашел у себя в завалах DS1307. Тыкнул и охватило меня "агульная млявасць и абыякавасць да жыцця" Когда-то код писал на нее. Сейчас даже влом свои исходники многолетние перелопачивать. https://yadi.sk/i/vHTsmQSRm7Wx7

Re: Часы на газоразрядных индикаторах

Добавлено: Чт дек 10, 2015 12:09:04
asidalv
резистор в цепи ИНС-1 поставил 180к. Питание - 220. Дальнейшее уменьшение сопротивления не приводит к увеличению яркости неонки. Сколько вообще оптимально для этой лампы при питании от сети без преобразователя?

Re: Часы на газоразрядных индикаторах

Добавлено: Чт дек 10, 2015 14:37:56
xSanders
Увеличить надо сопротивление - по справочному листу http://www.istok2.com/data/1748/ к нему - при питании индикатора переменным током рекомендуется включать его через диод.

Индикаторы ИНС-1 должны подключаться через балластное сопротивление, которое рассчитывается по формуле:
Rбал = (Uист.п.-Uподдерж.р)/Iраб.

В частности для сети ~220V сопротивление должно составлять около 300-330Ком.

Re: Часы на газоразрядных индикаторах

Добавлено: Чт дек 10, 2015 22:17:20
Waik
Только что доделал подсветку,
СпойлерИзображение
Изображение
Изображение

Re: Часы на газоразрядных индикаторах

Добавлено: Чт дек 10, 2015 23:29:58
watchmaker
Никогда не понимал и не понимаю смысла подсветки - она ведь только мешает читать цифры.

Re: Часы на газоразрядных индикаторах

Добавлено: Пт дек 11, 2015 01:44:09
BlackAlex
watchmaker писал(а):Никогда не понимал и не понимаю смысла подсветки - она ведь только мешает читать цифры.
это красная, оранжевая мешает, а синя как раз на цветовом контрасте отлично подчеркивает.

Re: Часы на газоразрядных индикаторах

Добавлено: Пт дек 11, 2015 04:45:41
Enceladus
Небольшой вопрос: каким напряжением питать ИН-18? В данный момент использую источник на 185 В и ток через лампы (эффективный т.к индикация динамическая) порядка 2-2.2 мА (индикаторы дорогие, потому ток несколько занижен дабы продлить жизнь). При этом в паспорте на лампу говорится что напряжение необходимо не менее 200 В. Собственно если питать лампу от 185 В, скажется ли это негативно на сроке службы?

Re: Часы на газоразрядных индикаторах

Добавлено: Пт дек 11, 2015 05:13:52
akl
Более важными будут параметры, отмеченные на картинке, которые у Вас обеспечены.
ин-18.GIF

Re: Часы на газоразрядных индикаторах

Добавлено: Пт дек 11, 2015 08:38:22
RoboC
Изображение Изображение Изображение

:tea:

Re: Часы на газоразрядных индикаторах

Добавлено: Пт дек 11, 2015 09:11:44
diafour
Красиво конечно, законченное упакованное изделие. Но брошюра требует редакторского глаза ;)