www.kn34pc.com

Форум на силистренските радиолюбители
Дата и час: 24 Окт 2026, 08:33

Часовете са според зоната UTC + 2 часа [ DST ]




Напиши нова тема Отговори на тема  [ 29 мнения ]  Отиди на страница Предишна  1, 2
Автор Съобщение
МнениеПубликувано на: 02 Сеп 2026, 08:50 
Offline
Аватар

Регистриран на: 07 Дек 2006, 18:24
Мнения: 1710
Местоположение: Силистра
DVS написа:
Най-лошото нещо на интернет - каквото и да се сетиш, някой друг вече го е направил ...

За хобито се занимаваме заради самото занимание :wink .
---
DVS написа:
... да се вземе един 16 сегментен индикатор и да се изписват часовете и минутите с букви.
Напр., IТ‘S ELEVEN THIRTY-SEVEN или ЕДИНАДЕСЕТ И ТРИДЕСЕТ И СЕДЕМ (на латиница).

Да, идеята е добра, може и така:

十五小时四十二分钟
(в превод (опростен китайски) -> петнадесет часа и четиридесет и две минути, в 9 символа напр. на LCD1601) :smile


Върнете се в началото
 Профил  
 
МнениеПубликувано на: 04 Сеп 2026, 09:31 
Offline
Аватар

Регистриран на: 07 Дек 2006, 18:24
Мнения: 1710
Местоположение: Силистра
Часовник с 3x 7-сегментни индикатора, Четвърта версия:

2 светодиода за часове x10 и 3x 7-сег. индикатора
по-долу: 15:31


Прикачени файлове:
3x_2led.jpg
3x_2led.jpg [ 57.16 KiB | Прегледано 9160 пъти ]
Върнете се в началото
 Профил  
 
МнениеПубликувано на: 05 Сеп 2026, 06:30 
Offline

Регистриран на: 11 Юни 2024, 15:10
Мнения: 145
Часовник с 3x 7-сегментни индикатора, Пета версия:
Мултиплексиране на часовете и минутите, за да не се затрудняват читателите!

Вече има много млади хора, деца около 5-10 годишни, които никога не са виждали (или много рядко) часовник със стрелки и се затрудняват, а някои дори не могат да разберат, какво показва. В домовете им няма, родителите им не носят часовници със стрелки...
Като се замислих, ние в къщата също нямаме часовник със стрелки, освен тези, които съм опаковал и сложил в един кашон :-)


Прикачени файлове:
7_Seg_Watch.jpg
7_Seg_Watch.jpg [ 36.14 KiB | Прегледано 8383 пъти ]
Върнете се в началото
 Профил  
 
МнениеПубликувано на: 05 Сеп 2026, 11:42 
Offline
Аватар

Регистриран на: 07 Дек 2006, 18:24
Мнения: 1710
Местоположение: Силистра
Благодаря, харесва ми :smt041

Дори за тест модифицирах прогр. си код към работещата установка "Часовници с 7-seg LED" на STM32F411CEU6.
име на папка на проекта: stm32f411ceu6_clock_7_seg_3_digit_ca_rtc_bat_x3_buttons_time_hh._.mm_calib :crazy .
Прикачени файлове:
ezgif-24c12e92e247e456.gif
ezgif-24c12e92e247e456.gif [ 688.86 KiB | Прегледано 8205 пъти ]

От 0:00 до 9:59 се изобразяват нормално H.MM с десетична точка: 0.00 ... 9.59
Преключването HH./.MM е от 10:00 до 23:59.

TIM4 - "превключващ" таймер за моментите на изобразяване
Код за потвърждение:
  // 100000000 / 10000 / 2000 = 5 Hz

  TIM4->PSC = 10000 - 1;
  TIM4->ARR = 2000 - 1;

fs[20] - "времеви прозорци" на показанията:
0 -> изгасен
1 -> HH.
2 -> .MM
Код за потвърждение:
// HH / MM -> 3 digit 7 segments LED indicator
// blank, hh, hh, hh, hh, hh, hh, hh, hh, hh, blank, mm, mm, mm, mm, mm, mm, mm, mm
const uint8_t fs[20] = {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2};
...
void TIM4_IRQHandler(void) {
  TIM4->SR &= ~TIM_SR_UIF;  // clear the update flag

  if (hh < 10) {
    d[0] = mm % 10;           // x1
    d[1] = (mm / 10) % 10;    // x10
    d[2] = hh % 10;           // x1

    dp[0] = 1;                // no dp
    dp[1] = 1;                // no dp
    dp[2] = double_dp;
  }
  else {
    fs_index++;

    if (fs_index > 19)
      fs_index = 0;

    switch (fs[fs_index]) {
    case 0:                   // blank
      d[0] = 11;
      d[1] = 11;
      d[2] = 11;

      dp[0] = 1;              // no dp
      dp[1] = 1;              // no dp
      dp[2] = 1;              // no dp
      break;

    case 1:                   // display 'HH._'
      d[0] = 11;              // blank
      d[1] = hh % 10;         // x1
      d[2] = (hh / 10) % 10;  // x10

      dp[0] = 1;              // no dp
      dp[1] = 0;              // dp
      dp[2] = 1;              // no dp
      break;

    case 2:                   // display '_.MM'
      d[0] = mm % 10;         // x1
      d[1] = (mm / 10) % 10;  // x10
      d[2] = 11;              // blank

      dp[0] = 1;              // no dp
      dp[1] = 1;              // no dp
      dp[2] = 0;              // dp
      break;
    }
  }
}

TIM10 - динамична индикация, превключване на 3 разряда през 106,7 Hz
Код за потвърждение:
   // 320 / 3 = 106.7 Hz
  // 100000000 / 100 / 3125 = 320 Hz

  TIM10->PSC = 100 - 1;
  TIM10->ARR = 3125 - 1;

Повече време отиде за избор (от няколко варианта) на сверяването (начинът на изобразяване точно в този момент).


Върнете се в началото
 Профил  
 
МнениеПубликувано на: 07 Сеп 2026, 08:15 
Offline

Регистриран на: 11 Юни 2024, 15:10
Мнения: 145
Часовник с 3x 7-сегментни индикатора, Шеста версия:
Аз го направих на GIF, нo aко на някой не го мързи да напише кода, за поредния вариант може да се направи ето това :D


Прикачени файлове:
Watch_Source.jpg
Watch_Source.jpg [ 51.64 KiB | Прегледано 4787 пъти ]
Watch.gif
Watch.gif [ 85.81 KiB | Прегледано 4787 пъти ]
Върнете се в началото
 Профил  
 
МнениеПубликувано на: 07 Сеп 2026, 11:51 
Offline
Аватар

Регистриран на: 07 Дек 2006, 18:24
Мнения: 1710
Местоположение: Силистра
Да, анимирано е ефектно :smile
По- ми е малко информативно обаче: трябва да си задържам повече време погледа, за да разбера колко е часа :mail.

"Анимацията" през отделния таймер стана бързо.
Отново повече време отиде за метода за сверяването и индикацията в този случай. Но със TIM-stop/TIM-стар се получи.


Прикачени файлове:
ezgif-2f91c119766b8e12.gif
ezgif-2f91c119766b8e12.gif [ 1.31 MiB | Прегледано 4591 пъти ]
Върнете се в началото
 Профил  
 
МнениеПубликувано на: 09 Сеп 2026, 06:54 
Offline

Регистриран на: 11 Юни 2024, 15:10
Мнения: 145
Часовник с 3x 7-сегментни индикатора, Седма версия:
Математическите варианти са безброй, но няма начин часовникът да покаже „по икиндия“ - народният израз, който означава късен следобед, времето малко преди залез слънце или между 15:00 и 16:00 часа.
За показване на „ракиено време“ дори AI не може да се справи :D


Прикачени файлове:
Watch_7_Seg_1.png
Watch_7_Seg_1.png [ 170.79 KiB | Прегледано 2709 пъти ]
Watch_7_Seg.gif
Watch_7_Seg.gif [ 13.29 KiB | Прегледано 2709 пъти ]
Върнете се в началото
 Профил  
 
МнениеПубликувано на: 09 Сеп 2026, 07:42 
Offline
Аватар

Регистриран на: 07 Дек 2006, 18:24
Мнения: 1710
Местоположение: Силистра
Сложно стана. Четимост: нулева :smt048 .


Върнете се в началото
 Профил  
 
МнениеПубликувано на: 16 Сеп 2026, 19:43 
Offline

Регистриран на: 11 Юни 2024, 15:10
Мнения: 145
Часовник с 3x 7-сегментни индикатора, Осма версия:
Вече навлизаме в зоната на здрача, но пък тази версия е по-четлива:

В момента е 18:37 ч. :D


Прикачени файлове:
New_Clock.gif
New_Clock.gif [ 28.95 KiB | Прегледано 1306 пъти ]
Върнете се в началото
 Профил  
 
МнениеПубликувано на: 17 Сеп 2026, 10:02 
Offline
Аватар

Регистриран на: 07 Дек 2006, 18:24
Мнения: 1710
Местоположение: Силистра
Може би с два отделителни маркера '|'? Иначе ми е объркващо.

То и с два маркера се замисляш какво виждаш ...
37|18| -> 37:18 ли е ... 18|37| -> 18:37 ли е ... :wink


Върнете се в началото
 Профил  
 
МнениеПубликувано на: 19 Сеп 2026, 08:23 
Offline

Регистриран на: 11 Юни 2024, 15:10
Мнения: 145
Въртим един индикатор и в определени моменти включване съответните сегменти.
Най-интересното е, че човек може да завърти диска на ръка и пак да види изписването, макар и за съвсем кратко, на часовете и минутите.


Прикачени файлове:
7_Seg_1.jpg
7_Seg_1.jpg [ 49.53 KiB | Прегледано 1255 пъти ]
7_Seg.jpg
7_Seg.jpg [ 29.02 KiB | Прегледано 1255 пъти ]
Върнете се в началото
 Профил  
 
МнениеПубликувано на: 21 Сеп 2026, 15:12 
Offline
Аватар

Регистриран на: 07 Дек 2006, 18:24
Мнения: 1710
Местоположение: Силистра
Механично-електронните са друга тема. Сложни са си.
---
Часовник с 3x 7-сегментни индикатора, Девета версия:
Часовник "за небързащи" (и други) -> за спокоен живот - няма индикация за "единици минути" -> HH.M :smt041
Прикачени файлове:
clock_digits_3xxx.jpg
clock_digits_3xxx.jpg [ 27.63 KiB | Прегледано 1237 пъти ]

(Като се замисля по въпроса, часовникът от тази категория може да е и само с 2x 7-сегментни индикатора - само с часове -> HH :biggrin )


Върнете се в началото
 Профил  
 
МнениеПубликувано на: 24 Сеп 2026, 06:34 
Offline

Регистриран на: 11 Юни 2024, 15:10
Мнения: 145
Цитат:
(Като се замисля по въпроса, часовникът от тази категория може да е и само с 2x 7-сегментни индикатора - само с часове -> HH)

За къде си се разбързал? Седмица и месец са напълно достатъчни...


Прикачени файлове:
Watch_W_M.jpg
Watch_W_M.jpg [ 62.8 KiB | Прегледано 1224 пъти ]
Върнете се в началото
 Профил  
 
МнениеПубликувано на: 24 Сеп 2026, 10:13 
Offline
Аватар

Регистриран на: 07 Дек 2006, 18:24
Мнения: 1710
Местоположение: Силистра
То като е тръгнало да диференцираме часовниците по този параметър ...
Още по-загадъчни устройства могат да се констуират :cool .
------------------------------------------------------------------------------------------------------
Например: устройството си "виси" на стената и "спи" примерно до 31.12.2xxx година, "пали" се в 23:59:00, три пъти премигва в 0:00:00 и остава да свети 1..3..7 дни.
Прикачени файлове:
clock_digits_ny.gif
clock_digits_ny.gif [ 20.24 KiB | Прегледано 1221 пъти ]

После пак "сън" до следващата година по същото време :mail .
------------------------------------------------------------------------------------------------------
Но ... автоматично възникват цяла поредица от технически въпроси за допълнително изясняване и приемане на решения:

- Ако е отделен автономен уред на собствено захранване, каква ще е батерията напр. с нищожен саморазряд? Ако ще е акумулатор, след 2..5-тата година, с подзаряд, акумулаторорът ще е "заминал" ...

- Понеже ще отчитаме много точния! момент от времето (23:59:59 -> 0:00:00 часа), часовникът трябва да работи (MCU напр. в "спящ режим") цяла година много точно! и да не изостане/изпревари и една секунда! за тая следваща година (иначе "ще изтървем" момента на "НОВА ГОДИНА" :mocking. )

-- с часовников кварц 32768 Hz с 20 ppm ще натрупа dt от примерно: (60 * 60 * 24 * 365) * 0,00002 = 630,72 секунди (отписахме го като кандидат за констукцията)
-- с "много точния" RTC DS3231 с ±2ppm -> ±63,12 секунди на година (отписахме го за констукцията, или трябва сериозна калибрация!)
-- с TCXO (32768 Hz?) с обявен 0,5 ppm -> ±15,7 секунди на година (горе-долу е ОК, ще приложим някаква калибрация)
-- с TCXO (32768 Hz?) с обявен 0,1 ppm -> ±3,15 секунди на година (ОК, ще приложим някаква калибрация)
-- с OCXO (OSC5A2B02 10 MHz) обявен 10 ppb -> ±0,315 секунди на година (супер! атомна точност :П)

Е, с OCXO няма да изтървем момента "НОВА ГОДИНА", но са "лакоми" за ток ... -> OSC5A2B02 -> около 600 mA при старт, около 250 mA в работен режим .... :smt048.
------------------------------------------------------------------------------------------------------
Кратко "повличане" по сметки и теглилки:
OSC5A2B02, 5V / 250 mA работен ток, консумирана енергия за 1 година:

--- мощност: 5V * 0,250 A = 1,25 W
--- часове в годината: 365 дни * 24 часа = 8 760 часа
--- общо потребление: 1,25 W * 8 760 часа = 10 950 Wh = 10,95 kWh за цяла година

цена ток за битови потребители: ~0.14 € / kWh -> 10,95 kWh × 0,14 € = 1,53 € на година :comp . :heat за математическите сметки, свързани с пари.
------------------------------------------------------------------------------------------------------
Ако сме на кварц (32768 Hz) или на TCXO, и тези разсъжденията също водят до "сложнотии":

- ако използваме MCU AVR: за да "спи" устройството една година?
32768 Hz / (Prescaler 128 / Timer2 256) = 1 секунда "сън"
за 1 година чипчето трябва да се "събужда" и "заспива" (60 * 60 * 24 * 365) = 31 536 000 пъти :mocking
------------------------------------------------
- ако използваме mcu PIC: за да "спи" устройството една година?
-- стари PIC-ове:
32768 Hz, WDT максимално 18 ms, с rescaler 128 -> 128 * 0,018 = 2,304 секунди "сън"
за 1 година чипчето трябва да се "събужда" и "заспива" (31 536 000 / 2,304) = 13 687 500 пъти :mocking
------------------------------------------------
-- по-нов PIC (любимия PIC16F15325):
32768 Hz, WDT максимално 256 секунди "сън"
за 1 година трябва да се събужда и заспива (31 536 000 / 256) = 123187.5 пъти :mail .
(Не, ще заспива 123187 пъти, а остатъка ще "дочакваме" примерно по друг начин - напр. "нищонеправене" 0,5 секунди) :mail
------------------------------------------------
Трябва съвременен mcu с "аларма" (PIC18, PIC24, STM32 ...).
или DS3231 с външен клок и обикновен микроконтролер, който да "спи" една година и да се "събуди" по "аларма" от напр. DS3231 ...
------------------------------------------------------------------------------------------------------
И се започнаха добавяния на външни системи: DCF77 (трябва добра локация към Mainflingen, Germany), NTP сървъри (трябва и интернет свързаност), GPS-модул (трябва открит достъп до небе), вход: от компютърна система ... и други такива.

Уж просто устройство като идея, ама трябва толкова непроста реализация (като домашен часовник) :rolleyes .


Върнете се в началото
 Профил  
 
Покажи мненията от миналия:  Сортирай по  
Напиши нова тема Отговори на тема  [ 29 мнения ]  Отиди на страница Предишна  1, 2

Часовете са според зоната UTC + 2 часа [ DST ]


Кой е на линия

Потребители, разглеждащи този форум: 0 регистрирани и 1 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Форумът се задвижва от phpBB® Forum Software © phpBB Group
Преведено от yarnaudov.com