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

Что бы еще такого сделать?... Предлагайте! Обсудим все!!!
Darth Cuauhtemoc
Говорящий с текстолитом
Сообщения: 1699
Зарегистрирован: Вс июн 16, 2013 18:41:45

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

Сообщение Darth Cuauhtemoc »

Волосатый писал(а):ПС я тоже сталкивался с мусором на шине

Почему? Экономия на внешних резисторах 4.7 (5.1) кОм подвески к питанию, использование высокоомных, что в животе у МК и как следствие наводки от соседних цепей?
У кошки четыре ноги - вход, выход, земля и питание. Но трогать ее не моги - получится замыкание.
Dark_Rider
Держит паяльник хвостом
Сообщения: 956
Зарегистрирован: Чт июл 19, 2012 10:30:17

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

Сообщение Dark_Rider »

RoboC писал(а):Ссылка на пост того кто собирал, но к сожалению его уже 2 месяца тут нет :( .
Ссылка, которую вы видели, уже померла вместе с галереей. В ЛС переведем разговор..

dark_rider писал(а):индикация статика. можете ругаться и все такое, но поскольку это мой первый проект, было сделано именно так....просто идей особых нет(


Идеи есть :idea: !
Какова частота опроса РТС? Если велика, то при поочередном считывании неправильного значения(помехи) и правильного Вы получите на статике эффект который описали. Роем в сторону опроса РТС. Сами писали или библиотеку где то потянули? Если мне не изменяет память, то можно либо считать одну ячейку из РТС, либо пакетом(длинный) много ячеек подряд. Попробуйте короткий вариант или задержки правьте...

я прошивку брал за основу такую:

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

#include <mega8535.h>
#include <delay.h>
// I2C Bus functions
#asm
   .equ __i2c_port=0x15 ;PORTC
   .equ __sda_bit=1
   .equ __scl_bit=0
#endasm
#include <i2c.h>
#include <bcd.h>
// DS1307 Real Time Clock functions
#include <ds1307.h>
#define dreb 10
#define smena_tsifr 500
#define dreb_set 1000
#define dreb_set_2 100
#define kn_set 0b01111100
#define kn_hour 0b10111100
#define kn_min 0b11011100
#define kn_sec 0b11101100
#define obn 100
// Declare your global variables here
 char hour, min, sec; //переменные для времени.
 char tmp;
 

void main(void)
{
DDRA=0xFF;
DDRB=0xFF;
PORTC=0xFF;
DDRD=0xFF;


// Analog Comparator Input Capture by Timer/Counter 1: Off
ACSR=0x80;


// I2C Bus initialization
i2c_init();


tmp = rtc_read(0x00);
//tmp &=~(1<<7);
tmp=tmp&0b01111111;
rtc_write(0x00, tmp); //включение DS1307, бит 7 ноль
tmp = rtc_read(0x02);
//tmp &=~(1<<6);
tmp=tmp&0b0111111;

rtc_write(0x02, tmp); // бит 6 ноль - 24ох часовой режим
rtc_init(0, 1, 1); // включение генератора импульсов
//rtc_set_time(14,02 , 00);

дальше идет в бесконечном цикле опрос
rtc_get_time(&hour, &min, &sec); // читаем из DS-ки время
и в зависимости от полученных цифр выстанавливаем ноги МК в нужные положения
(к сожалению из-за топологии платы приходилось каждый пин ручками программировать, то есть такая фишка как bin2bcd не прокатила)
но я не знаю, где эту частоту смотреть. хм, у меня тоже была мысль про помехи)
Аватара пользователя
RoboC
Мудрый кот
Сообщения: 1795
Зарегистрирован: Ср апр 04, 2012 09:55:53
Откуда: Северодонецк
Контактная информация:

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

Сообщение RoboC »

Darth Cuauhtemoc писал(а):дальше идет в бесконечном цикле опрос
rtc_get_time(&hour, &min, &sec); // читаем из DS-ки время


После этой команды добавьте 3 строчки, где присваиваете &hour, &min, &sec определенные значения. Часы идти не будут, но если глюк пропадет- проблема в обмене с RTC. Ну а там, отладчик с симулятором Вам в руки :) .
У того, кто делает — получается редко. У того, кто не делает — не получается никогда.
Dark_Rider
Держит паяльник хвостом
Сообщения: 956
Зарегистрирован: Чт июл 19, 2012 10:30:17

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

Сообщение Dark_Rider »

RoboC писал(а):
Darth Cuauhtemoc писал(а):дальше идет в бесконечном цикле опрос
rtc_get_time(&hour, &min, &sec); // читаем из DS-ки время


После этой команды добавьте 3 строчки, где присваиваете &hour, &min, &sec определенные значения. Часы идти не будут, но если глюк пропадет- проблема в обмене с RTC. Ну а там, отладчик с симулятором Вам в руки :) .

хм, интересная идея, нужно попробовать, спасибо)
Аватара пользователя
Волосатый
Сверлит текстолит когтями
Сообщения: 1288
Зарегистрирован: Пн апр 14, 2008 12:54:35
Откуда: Город ГЕРОЙ Ленинград
Контактная информация:

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

Сообщение Волосатый »

Вот здесь

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

i2c_init();
Нужно посмотреть, что записывается в регистр TWBR. От этого регистра зависит скорость работы шины, как рассчитать нужную, хорошо описано в даташите в разделе про TWI, там есть формула. Скорость выбирайте до 100кГц, 50 думаю вполне подойдет.
Почему? Экономия на внешних резисторах 4.7 (5.1) кОм подвески к питанию, использование высокоомных, что в животе у МК и как следствие наводки от соседних цепей?
Резисторы есть, цепи довольно длинные, проходящие рядом с другими высокочастотными цепями, незнаю в чем конкретно дело но факт остается фактом.
Последний раз редактировалось Волосатый Сб окт 12, 2013 13:19:11, всего редактировалось 1 раз.
Опыт приходит сразу после того, как он был нужен...
Dark_Rider
Держит паяльник хвостом
Сообщения: 956
Зарегистрирован: Чт июл 19, 2012 10:30:17

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

Сообщение Dark_Rider »

окей, поищу на примерах, спасибо
Darth Cuauhtemoc
Говорящий с текстолитом
Сообщения: 1699
Зарегистрирован: Вс июн 16, 2013 18:41:45

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

Сообщение Darth Cuauhtemoc »

Волосатый писал(а):Резисторы есть, цепи довольно длинные, проходящие рядом с другими высокочастотными цепями, незнаю в чем конкретно дело но факт остается фактом.

У меня линии I2C короткие, окружены землей (все свободное пространство залито землей), внешние резисторы тоже есть - никаких проблем. И еще, обращение к RTC для чтения времени только один раз - при включении основного питания, т.е. вероятность поймать помехи именно в этот момент очень мала.

Тем не менее факт, что помехи в принципе могут пролезть на шину, удручает. Не всегда можно сделать наилучшую разводку.
У кошки четыре ноги - вход, выход, земля и питание. Но трогать ее не моги - получится замыкание.
Аватара пользователя
Microtech
Поставщик валерьянки для Кота
Сообщения: 2052
Зарегистрирован: Вт ноя 03, 2009 21:02:38
Откуда: Москва
Контактная информация:

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

Сообщение Microtech »

Скорее для темы в Мяяу.
Заглючить шину I2C плохой разводкой платы, которая сама площадью с 3 спичечных коробка? Даже если поставить 200 переходных отверстий и пустить дорожки зигзагом, как на восточном ковре, всё равно не получится создать проблему для I2C. Интерфейс был изначально разработан для коммуникации между блоками бытовой техники, способен работать без сбоев на длинных проводах, метр и более. Припаяйте конденсатор по питанию. Если не поможет, припаяйте ещё один. Если конденсаторы не дали эффекта, - уберите баг в программе или сделайте обмен медленнее. Читая форум, мне несколько раз попадалось сообщение, о проблемах с точностью хода, при использовании DS1307 на длинных проводах, вдали от процессора. Как? Она ведь время внутри себя считает, причем тут интерфейс? Ё... :facepalm:
Darth Cuauhtemoc
Говорящий с текстолитом
Сообщения: 1699
Зарегистрирован: Вс июн 16, 2013 18:41:45

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

Сообщение Darth Cuauhtemoc »

Microtech писал(а):Читая форум, мне несколько раз попадалось сообщение, о проблемах с точностью хода, при использовании DS1307 на длинных проводах, вдали от процессора. Как? Она ведь время внутри себя считает, причем тут интерфейс? Ё... :facepalm:

У меня были проблемы с точностью хода, вина моя, развел кварц не так, как было рекомендовано в даташите. Так что кто так говорил, просто длинные провода совпали с неправильно разведенным кварцем или отсутствием кондера по питанию, а человек подумал на провода.

Я на каждую микру ставлю 0.1 мкФ 0805 как можно ближе к ногам питания.

А на I2C наводки могут быть (как и на любые другие цепи), если в качестве подвески использовать внутренние высокоомные сопротивления МК. Но это уже отступление от спецификаций.
У кошки четыре ноги - вход, выход, земля и питание. Но трогать ее не моги - получится замыкание.
Аватара пользователя
mss_ja
Друг Кота
Сообщения: 4323
Зарегистрирован: Сб дек 24, 2011 05:02:33
Откуда: Киев

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

Сообщение mss_ja »

Microtech писал(а):Скорее для темы в Мяяу.. Читая форум, мне несколько раз попадалось сообщение, о проблемах с точностью хода, при использовании DS1307 на длинных проводах, вдали от процессора. Как? Она ведь время внутри себя считает, причем тут интерфейс? Ё... :facepalm:

я писал.
есть зависимость
даже DS3231 не хочет нормально работать. точность сильно "хромает".
хотя она даже со своим генератором "на борту".
ИзображениеИзображение
это уже обсуждалось.
Palmyr
Вымогатель припоя
Сообщения: 564
Зарегистрирован: Сб апр 23, 2011 17:59:55
Откуда: Мурманск // СПБ

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

Сообщение Palmyr »

mss_ja,
Возможно DS3231 не хочет нормально работать из за наводок не на шину I2C а нацепи в самой микросхеме?
Всё-таки рядом с высоковольтными цепями стоит, по которым могут помехи от преобразователя проходить. :dont_know:

PS: чую будет у меня веселуха с тремя устройствами на I2C и их частым опросом.
Наше солнце, гори - не сгорай!
Изображение
Dark_Rider
Держит паяльник хвостом
Сообщения: 956
Зарегистрирован: Чт июл 19, 2012 10:30:17

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

Сообщение Dark_Rider »

Волосатый писал(а):dark_rider, поставьте для начала частоту опроса RTC один-два раза в секунду, если проблема с мусором на шине, то при получении такого мусора вы это будете наблюдать эти 0,5-1 секунду.
RoboC писал(а):... Вы получите на статике эффект который описали.
Кстати не обязательно. Всё зависит от того как часто обновляется экран, если после опроса ЧРВ то да будет именно так, а если после того как поменялась секунда, то, тоже не исключено, но реже.

ПС я тоже сталкивался с мусором на шине, но в 99,99% случаев передача прерывалась с зависанием TWI и МК получал "лог. единицу" что соотв. коду 0xFF, что соотв. высокоимпедансному состоянию на всех выводах дешифратора, что при завышенном анодном приводит к хаотичному свечению случайных катодов в лампе. Не стал особо заморачиваться и вставил проверку полученного на значение 0xFF, и если это получено, то этот пакет пропускается, TWI переинициализируется и передача начинается с начала.

дома нет программатора и lpt порта, это нужно часы на работу тащить(
все никак не обзаведусь нормальным..
ну а можете выложить код на проверку полученного на значение 0xFF?
хотя у меня когда начался этот баг, я залил прошивку без использования RTC, цифры ходили просто на delay , вроде тогда было нормально.
Аватара пользователя
mss_ja
Друг Кота
Сообщения: 4323
Зарегистрирован: Сб дек 24, 2011 05:02:33
Откуда: Киев

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

Сообщение mss_ja »

Palmyr писал(а):Возможно DS3231 не хочет нормально работать из за наводок не на шину I2C а нацепи в самой микросхеме? .

я же выложил печатку
под нее "расчищено " место . ни рядом. ни под ней ничего нет.
выпаяв и повесив ее "над процессором" все нормализуется.
кому интересно-найдите в теме где это обсуждалось. там все подробно
я же выскаывал предположение.
сбоит не сама шина.
по неи идут наводки внутрь микросхемы. и там уже она глючит.
Аватара пользователя
Ян
Поставщик валерьянки для Кота
Сообщения: 1947
Зарегистрирован: Вт ноя 01, 2005 17:32:22
Откуда: Москва

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

Сообщение Ян »

Опять немного не в тему... Но думаю посетителям этой ветки будет полезен этот приборчик. Все-таки сейчас многие имеют дело с СМД деталями.
Изображение
Наконец доделал. :))
Аватара пользователя
suslogon
Друг Кота
Сообщения: 10693
Зарегистрирован: Пн июл 14, 2008 21:28:00
Откуда: Москва
Контактная информация:

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

Сообщение suslogon »

а я уже давно купил себе пинцет для смд :) вроде мастеч) и все равно мало пользуюсь....
Ищу тиратрон ТХИ1-2000/4, ГРИ ИН-23, ФЭУ-103; 134; 135, 138, 155, 157, лампу ИСШ-7.
Любые ГИС серий 203, 225, 233, 244, 250, 296, 801, 838 в любом состоянии. Компоненты и детали от миниатюрных твердотельных лазеров.
Dark_Rider
Держит паяльник хвостом
Сообщения: 956
Зарегистрирован: Чт июл 19, 2012 10:30:17

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

Сообщение Dark_Rider »

выглядит симпотно.
Аватара пользователя
suslogon
Друг Кота
Сообщения: 10693
Зарегистрирован: Пн июл 14, 2008 21:28:00
Откуда: Москва
Контактная информация:

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

Сообщение suslogon »

dark_rider писал(а):выглядит симпотно.

:P Ян неаккуратно не делает...
Ищу тиратрон ТХИ1-2000/4, ГРИ ИН-23, ФЭУ-103; 134; 135, 138, 155, 157, лампу ИСШ-7.
Любые ГИС серий 203, 225, 233, 244, 250, 296, 801, 838 в любом состоянии. Компоненты и детали от миниатюрных твердотельных лазеров.
Аватара пользователя
Ян
Поставщик валерьянки для Кота
Сообщения: 1947
Зарегистрирован: Вт ноя 01, 2005 17:32:22
Откуда: Москва

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

Сообщение Ян »

suslogon писал(а):а я уже давно купил себе пинцет для смд :) вроде мастеч) и все равно мало пользуюсь....

Да он по цене наверно вышел как готовый.:) Примерно 1000р. Просто захотелось немного развлечься. Да и хоть редко но такой нужен. К тому же он определяет цоколевку транзисторов и диодов. Удобно.
Аватара пользователя
Термит
Мучитель микросхем
Сообщения: 436
Зарегистрирован: Сб фев 12, 2011 23:54:22

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

Сообщение Термит »

Недавно видел ламповую сборку в ней 15 ламп содинены паралельно.Т.е.
Динамическая индикация управляет аж 15-тью лампами!
Лампы типа ZM размером с нашу ИН8.
kozutinalexei
Родился
Сообщения: 19
Зарегистрирован: Чт сен 26, 2013 21:38:10

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

Сообщение kozutinalexei »

mss_ja писал(а):
savantik писал(а):Ребята, дико извиняюсь, может кто даст РАБОЧУЮ схему и печатку с прошивкой часов, на ИН-14

я уже предлагал готовые чистые платы под ин14 и ин 12
Изображение

Я бы купили готовую плату! сколько будет стоить?
Ответить

Вернуться в «Умные мысли»