Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту


Закрытая тема
Опции темы
Непрочитано 28.03.2009, 21:05   #361
yuriji
Прописка
 
Регистрация: 09.02.2007
Сообщений: 108
Сказал спасибо: 1
Сказали Спасибо 1 раз в 1 сообщении
yuriji на пути к лучшему
По умолчанию

Добрый всем вечер!!!
Мужики поставьте аську и не парьтесь всякими яндекс.ру, рамблер .ру
Рекомендую qip8092, я уже им года два пользуюсь. (425-014-089)
Реклама:
yuriji вне форума  
Непрочитано 28.03.2009, 22:03   #362
yuriji
Прописка
 
Регистрация: 09.02.2007
Сообщений: 108
Сказал спасибо: 1
Сказали Спасибо 1 раз в 1 сообщении
yuriji на пути к лучшему
По умолчанию

Нашел тут кое-что интересное… http://licrym.org/images/wiki/big_clock_final_code.txt
Вот только не пойму как работает?

char get_day(void)//возвращает значение дня недли, начиная с 0-ВС 1-пн ...
{
int a, y, m;
a = (14 - month) / 12;
y = year - a;
m = month + 12 * a - 2;
return (7000 + (day + y + y / 4 - y / 100 + y / 400 + (31 * m) / 12)) % 7;
};

Михалыч может, разберетесь?
yuriji вне форума  
Непрочитано 28.03.2009, 22:36   #363
IOPA4
Почётный гражданин KAZUS.RU
 
Аватар для IOPA4
 
Регистрация: 07.05.2008
Адрес: Мурманск
Сообщений: 1,300
Сказал спасибо: 461
Сказали Спасибо 526 раз(а) в 273 сообщении(ях)
IOPA4 на пути к лучшему
По умолчанию

Сообщение от yuriji
Михалыч может, разберетесь?
Я уже предлагал такой вариант, но код занимает много места - Atmega8 не резиновая:
Код:
unsigned char day_week(void)
{
  int y;
  unsigned char m, d, w, c;
  y=Y;
  d=day;
  m=M;
  if (m ‹ 3)
  {
    m = m + 10;
    y = y - 1;
  }
  else {m = m - 2;};
  c = y%100; // div 
  y = (int)fmod ((float)y,100.0);
  w = (char)fmod((float)(Abs (Trunc (2.6 * m - 0.2) + d + y%4 + y + c%4 - 2 * (float)c)), 7.0);
  return (w);
}
Все очень просто - 28 дней, три месяца и 2009 лет назад воскрес Христос и как помните в воскресенье, т.е. 0-ой день, 0-ой месяц и 0-ой год. Теперь нужно сосчитать сколько прошло дней с этой даты, учитывая високосные годы (каждые 4 года) и переход на декретное время (Старый Новый Год! ). Потом поделить все это на 7 (к-во дней в неделе) и в остатке получаем порядковый номер дня недели.
IOPA4 вне форума  
Непрочитано 28.03.2009, 22:53   #364
IOPA4
Почётный гражданин KAZUS.RU
 
Аватар для IOPA4
 
Регистрация: 07.05.2008
Адрес: Мурманск
Сообщений: 1,300
Сказал спасибо: 461
Сказали Спасибо 526 раз(а) в 273 сообщении(ях)
IOPA4 на пути к лучшему
По умолчанию

В нашем случае нужно использовать так:
Код:
char get_day(void)//возвращает значение дня недли, начиная с 0-ВС 1-пн ... 
{ 
  int a, y, m; 
  a = (14 - M) / 12; 
  y = Y - a; 
  m = M + 12 * a - 2; 
  return (7000 + (day + y + y / 4 - y / 100 + y / 400 + (31 * m) / 12)) % 7; 
};
Дальше если месяц третий(31 день) или десятый(31 день) нужно начиная с даты 31-7=25(последняя неделя), т.е. с 25 по 31 проверять не 0-ой ли это день и если нулевой, то сделать перевод.
IOPA4 вне форума  
Непрочитано 28.03.2009, 23:16   #365
Denexp
Частый гость
 
Регистрация: 23.11.2007
Сообщений: 32
Сказал спасибо: 192
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Denexp на пути к лучшему
По умолчанию

Раз тут тема про С для АVR, а как я до этого писал, что изучаю С по сайту http://avr123.nm.ru/ то в принципе есть вопрос к автору и не только (приветствуется любое мнение) ,а точнее просьба помочь разобраться. Засада вот в чём, написал прогу задача 5 ( avr123.nm.ru/z5.htm ) вывод данных на USART & LCD, решил начать с USART т.е. всё про LCD в коменте. Проблема вот в чём не получается запустить ATmega16 на 115200 с внешним генератором 11,0592MHz.Fuse выставил на CKSEL=0000. Использую программатор ATSTK500(Atmel)все jumpers выставил как положенно ,осцилом смотрел генерация 11,0592 на XTAL1(13 pin) присутствует,не хочет выдавать на Com ничего( мониторю COM Port Toolkit 3.9).Перестроил проект на 8MHz (внутр генератор)9600 бод.Процесс пошёл но с ошибками,но это уже что-то, т.е. Toolkit что-то начал видеть правда с сильными ошибками думаю из-за погрешности в 0.8%(поправьте если не так).Помогите разобраться где туплю.
Denexp вне форума  
Непрочитано 28.03.2009, 23:38   #366
IOPA4
Почётный гражданин KAZUS.RU
 
Аватар для IOPA4
 
Регистрация: 07.05.2008
Адрес: Мурманск
Сообщений: 1,300
Сказал спасибо: 461
Сказали Спасибо 526 раз(а) в 273 сообщении(ях)
IOPA4 на пути к лучшему
По умолчанию

Сообщение от Denexp
Раз тут тема про С для АVR, а как я до этого писал, что изучаю С по сайту http://avr123.nm.ru/ то в принципе есть вопрос к автору и не только (приветствуется любое мнение) ,а точнее просьба помочь разобраться. Засада вот в чём, написал прогу задача 5 ( avr123.nm.ru/z5.htm ) вывод данных на USART & LCD, решил начать с USART т.е. всё про LCD в коменте. Проблема вот в чём не получается запустить ATmega16 на 115200 с внешним генератором 11,0592MHz.Fuse выставил на CKSEL=0000. Использую программатор ATSTK500(Atmel)все jumpers выставил как положенно ,осцилом смотрел генерация 11,0592 на XTAL1(13 pin) присутствует,не хочет выдавать на Com ничего( мониторю COM Port Toolkit 3.9).Перестроил проект на 8MHz (внутр генератор)9600 бод.Процесс пошёл но с ошибками,но это уже что-то, т.е. Toolkit что-то начал видеть правда с сильными ошибками думаю из-за погрешности в 0.8%(поправьте если не так).Помогите разобраться где туплю.
Я понял так: Вы запустили CVAVR и создали заготовку типа:
......
Код:
// USART initialization
// Communication Parameters: 8 Data, 1 Stop, No Parity
// USART Receiver: On
// USART Transmitter: On
// USART Mode: Asynchronous
// USART Baud Rate: 115200
UCSRA=0x00;
UCSRB=0x18;
UCSRC=0x86;
UBRRH=0x00;
UBRRL=0x05;
.....
Запрограммировали фьюзы и далее что-то не получается?

-- Прилагается рисунок: --
IOPA4 вне форума  
Непрочитано 29.03.2009, 00:11   #367
Denexp
Частый гость
 
Регистрация: 23.11.2007
Сообщений: 32
Сказал спасибо: 192
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Denexp на пути к лучшему
По умолчанию

Ага спасибо, настройки USART кривые были
// USART initialization
// Communication Parameters: 8 Data, 1 Stop, No Parity
// USART Receiver: On
// USART Transmitter: On
// USART Mode: Asynchronous
// USART Baud Rate: 115200
UCSRA=0x00;
UCSRB=0x98;
UCSRC=0x86;
UBRRH=0x00;
UBRRL=0x05;
так должно было быть, чётко подметили где рыть.
// USART Transmitter: Off как-то получилось 8O
Ещё раз спасибо!
Denexp вне форума  
Непрочитано 29.03.2009, 09:58   #368
yuriji
Прописка
 
Регистрация: 09.02.2007
Сообщений: 108
Сказал спасибо: 1
Сказали Спасибо 1 раз в 1 сообщении
yuriji на пути к лучшему
По умолчанию

Сообщение от IOPA4
В нашем случае нужно использовать так:
Код:
char get_day(void)//возвращает значение дня недли, начиная с 0-ВС 1-пн ... 
{ 
  int a, y, m; 
  a = (14 - M) / 12; 
  y = Y - a; 
  m = M + 12 * a - 2; 
  return (7000 + (day + y + y / 4 - y / 100 + y / 400 + (31 * m) / 12)) % 7; 
};
Дальше если месяц третий(31 день) или десятый(31 день) нужно начиная с даты 31-7=25(последняя неделя), т.е. с 25 по 31 проверять не 0-ой ли это день и если нулевой, то сделать перевод.
Спасибо Михалыч, теперь понял.
Михалыч, а переход на лед индикатор пока не рассматривали?
Если питается от сети, «светит», сеть пропала, всю периферию отключаем и тикает только таймер часов.
yuriji вне форума  
Непрочитано 29.03.2009, 10:25   #369
IOPA4
Почётный гражданин KAZUS.RU
 
Аватар для IOPA4
 
Регистрация: 07.05.2008
Адрес: Мурманск
Сообщений: 1,300
Сказал спасибо: 461
Сказали Спасибо 526 раз(а) в 273 сообщении(ях)
IOPA4 на пути к лучшему
По умолчанию

Сообщение от yuriji
Спасибо Михалыч, теперь понял.
Михалыч, а переход на лед индикатор пока не рассматривали?
Если питается от сети, «светит», сеть пропала, всю периферию отключаем и тикает только таймер часов.
Я переписал код для автоперевода летнего/зимнего времени с применением присланной функцией - влезло только для английской версии. Не проверял - как будто "протеусный грип" (теперь у меня вышибает каждую минуту). Вчера посылка пришла 2 ЖКИ EL 1602A. С ледами вчера занимался - универсальный драйвер писал (для от 3-х знаков до ....), а вот как и на какой индикатор выводить инфо не придумал.

Прикрепленный файл: 8681318.zip
IOPA4 вне форума  
Непрочитано 29.03.2009, 18:42   #370
yuriji
Прописка
 
Регистрация: 09.02.2007
Сообщений: 108
Сказал спасибо: 1
Сказали Спасибо 1 раз в 1 сообщении
yuriji на пути к лучшему
По умолчанию

Михалыч , а чем обусловлено такое схемное решение БП.

-- Прилагается рисунок: --

yuriji вне форума  
Закрытая тема

Закладки


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Видео уроки dosikus Микроконтроллеры, АЦП, память и т.д 61 23.01.2012 21:06
Видео уроки (flash) Proteus 7.1 fmssp Proteus 5 13.08.2007 03:56
AVR уроки Рюмика chipic128 Proteus, KiCAD и другие ECAD 9 07.03.2007 21:46
уроки от LABCENTRE(PIC12F675+C) dosikus Микроконтроллеры, АЦП, память и т.д 22 09.10.2006 10:16


Часовой пояс GMT +4, время: 21:58.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot