реклама на сайте
подробности

 
 
> Как правильно организовать архитектуру программы?, Архитектура для часов
Maxi_Man
сообщение Aug 3 2015, 17:50
Сообщение #1





Группа: Участник
Сообщений: 9
Регистрация: 28-07-15
Пользователь №: 87 751



Как правильно организовать архитектуру программы для часов?
Часы должны показывать время дату и температуру, по очереди с определённой задержкой.
Как организовать настройку времени?
Контроллер: Mega8;
IDE: Atmel Studio.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
mempfis_
сообщение Aug 4 2015, 12:44
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 001
Регистрация: 27-06-06
Пользователь №: 18 409



Цитата(Maxi_Man @ Aug 3 2015, 20:50) *
Как правильно организовать архитектуру программы для часов?
Часы должны показывать время дату и температуру, по очереди с определённой задержкой.
Как организовать настройку времени?
Контроллер: Mega8;
IDE: Atmel Studio.


Делал недавно для ссебя такую программу на atmega16. Отображение времени на ин14, отображение даты, температуры. Настройка вариантов отображения - время, время-дата, время-дата-температура.
И некоторые другие функции.

Разделите вашу задачу на независимые подзадачи, которые условно не связаны друг с другом. Например:
- ведение часов (например опрос ds1337 с заданным периодом или внутренний таймер атмеги),
- задача индикации - отображение информации в зависимости от состояния или режима работы устройства
- опрос термодатчика с заданным периодом
- опрос кнопок управления
- задача динамической индикации - отображение данных на индикаторе
- какие-либо остальные задачи

Свяжите эти задачи друг с другом через глобальные флаги. Например - если в данны
Go to the top of the page
 
+Quote Post
Maxi_Man
сообщение Aug 4 2015, 14:56
Сообщение #3





Группа: Участник
Сообщений: 9
Регистрация: 28-07-15
Пользователь №: 87 751



Цитата(mempfis_ @ Aug 4 2015, 15:44) *
Делал недавно для ссебя такую программу на atmega16. Отображение времени на ин14, отображение даты, температуры. Настройка вариантов отображения - время, время-дата, время-дата-температура.
И некоторые другие функции.

Разделите вашу задачу на независимые подзадачи, которые условно не связаны друг с другом. Например:
- ведение часов (например опрос ds1337 с заданным периодом или внутренний таймер атмеги),
- задача индикации - отображение информации в зависимости от состояния или режима работы устройства
- опрос термодатчика с заданным периодом
- опрос кнопок управления
- задача динамической индикации - отображение данных на индикаторе
- какие-либо остальные задачи

Свяжите эти задачи друг с другом через глобальные флаги. Например - если в данны

Не могли бы вы скинуть исходник? Просто Ваш случай, практически, в точности копирует мой.
Go to the top of the page
 
+Quote Post
mempfis_
сообщение Aug 6 2015, 08:09
Сообщение #4


Профессионал
*****

Группа: Свой
Сообщений: 1 001
Регистрация: 27-06-06
Пользователь №: 18 409



Цитата(Maxi_Man @ Aug 4 2015, 17:56) *
Не могли бы вы скинуть исходник? Просто Ваш случай, практически, в точности копирует мой.


Я думал сообщение не отправилось.... Оно и не дописано...
Скину Вам исходник, но там нет настроек времени т.к. я использую GPS-модуль для синхронизации времени.
проект под IAR AVR 5.10a
Go to the top of the page
 
+Quote Post
Maxi_Man
сообщение Aug 6 2015, 10:18
Сообщение #5





Группа: Участник
Сообщений: 9
Регистрация: 28-07-15
Пользователь №: 87 751



Цитата(mempfis_ @ Aug 6 2015, 11:09) *
Я думал сообщение не отправилось.... Оно и не дописано...
Скину Вам исходник, но там нет настроек времени т.к. я использую GPS-модуль для синхронизации времени.
проект под IAR AVR 5.10a

Спасибо огромное!
Подскажите, пожалуйста.Как реализовать такой режим отображения?
1)Время-отображается 20сек;
2)Дата-отображается 10сек;
и так по кругу.
Go to the top of the page
 
+Quote Post
mempfis_
сообщение Aug 6 2015, 11:06
Сообщение #6


Профессионал
*****

Группа: Свой
Сообщений: 1 001
Регистрация: 27-06-06
Пользователь №: 18 409



Цитата(Maxi_Man @ Aug 6 2015, 13:18) *
Спасибо огромное!
Подскажите, пожалуйста.Как реализовать такой режим отображения?
1)Время-отображается 20сек;
2)Дата-отображается 10сек;
и так по кругу.


Посмотрите как это сделано в моём проекте. Там есть 3 режима отображения.
Если вопрос как это сделать в принципе - то заведите таймер длительности отображения. Отображаете время, устанавливаете таймер длительности отображения на 20 секунд. Мониторите таймер каждую секунду попутно обновляя время (если есть отображение секунд). Если вышел таймаут отображения времени, отображаете дату, устанавливаете таймер длительности отображения на 10 секунд. Мониторите истечение таймаута. Далее опять переходите на отображение времени.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Maxi_Man   Как правильно организовать архитектуру программы?   Aug 3 2015, 17:50
- - RabidRabbit   Архитектура программная, по-моему, сильно зависит ...   Aug 4 2015, 06:22
- - kolobok0   Цитата(Maxi_Man @ Aug 3 2015, 20:50) Как ...   Aug 4 2015, 11:00
- - CrimsonPig   Цитата(Maxi_Man @ Aug 3 2015, 18:50) Как ...   Aug 4 2015, 11:37
|- - Jury093   Цитата(Maxi_Man @ Aug 4 2015, 17:56) Не м...   Aug 4 2015, 19:07
||- - demiurg1978   1 - Модульность программ. Опрос кнопок. Вывод инфо...   Aug 5 2015, 07:25
- - Onkel   порядок гуглим "AVR. Учебный курс. Операционн...   Aug 7 2015, 05:41
|- - demiurg1978   Крайне вредный совет и цикл статей. В этой "о...   Aug 7 2015, 10:11
|- - Onkel   Цитата(demiurg1978 @ Aug 7 2015, 13:11) К...   Aug 21 2015, 06:37
|- - demiurg1978   Конкретика? Пожалуйста: очередь таймеров, которая ...   Aug 21 2015, 07:30
|- - Onkel   Цитата(demiurg1978 @ Aug 21 2015, 10:30) ...   Aug 21 2015, 07:59
|- - demiurg1978   Представьте, что функции накидали задач в очередь....   Aug 21 2015, 08:06
|- - Onkel   Цитата(demiurg1978 @ Aug 21 2015, 11:06) ...   Aug 21 2015, 08:14
|- - demiurg1978   Не торопитесь. Давайте продуктивно обсудим. Во-пе...   Aug 21 2015, 08:27
|- - Onkel   Цитата(demiurg1978 @ Aug 21 2015, 11:27) ...   Aug 21 2015, 09:03
|- - demiurg1978   Цитата(Onkel @ Aug 21 2015, 16:03) ... В ...   Aug 21 2015, 09:31
|- - Onkel   Цитата(demiurg1978 @ Aug 21 2015, 12:31) ...   Aug 21 2015, 10:01
- - Onkel   пы сы что- то не могу из ящика, дублирую тут не, с...   Aug 21 2015, 13:16
|- - demiurg1978   Мои правила написания программ: Весь набор правил...   Aug 21 2015, 14:35
- - sigmaN   Конечно от конкретной задачи таймера это делеко, н...   Aug 30 2015, 05:50
- - Onkel   Цитата(sigmaN @ Aug 30 2015, 08:50) Конеч...   Sep 4 2015, 09:00
- - NicholasR   Цитата(Onkel @ Sep 4 2015, 13:00) вряд ли...   Sep 28 2015, 05:43
- - Onkel   Цитата(NicholasR @ Sep 28 2015, 08:43) По...   Sep 29 2015, 22:52
- - demiurg1978   Цитата(Onkel @ Sep 30 2015, 05:52) (на ос...   Sep 30 2015, 04:02
|- - Onkel   Цитата(demiurg1978 @ Sep 30 2015, 07:02) ...   Oct 1 2015, 20:56
- - NicholasR   Цитата(Onkel @ Sep 30 2015, 02:52) сейчас...   Sep 30 2015, 05:55


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 25th June 2025 - 16:36
Рейтинг@Mail.ru


Страница сгенерированна за 0.01697 секунд с 7
ELECTRONIX ©2004-2016