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

 
 
6 страниц V  < 1 2 3 4 5 > »   
Reply to this topicStart new topic
> ATmega16 + PT2322 + PT2323, Пишем программу в Code Vision AVR...
Дмитрий(846)
сообщение Mar 13 2013, 17:10
Сообщение #31


Участник
*

Группа: Участник
Сообщений: 45
Регистрация: 4-03-13
Из: Украина / Харьков
Пользователь №: 75 894



("state machine") - вообще не понимаю!

Поправил, все компилируется.
Прикрепленные файлы
Прикрепленный файл  System_Sound.rar ( 320.39 килобайт ) Кол-во скачиваний: 23
 
Go to the top of the page
 
+Quote Post
kovigor
сообщение Mar 13 2013, 17:29
Сообщение #32


Гуру
******

Группа: Свой
Сообщений: 5 273
Регистрация: 30-03-10
Пользователь №: 56 295



Цитата(Дмитрий(846) @ Mar 13 2013, 20:10) *
("state machine") - вообще не понимаю!

Так я же вам ссылки дал. Синонимы - "машина состояний", иногда говорят "цифровой автомат". ("state machine") - один из подходов к разработке ПО, в частности, для МК. Допустим, вы разрабатываете кодовый замок, у него есть 10 кнопок от 0 до 9 , и он должен открываться числом 729.
(Возьмите бумажку, карандашик и рисуйте):
В состояние С1 замок попадает после включения питания. В этом состоянии он ждет нажатия любой из кнопок. Если нажата только одна кнопка, и это "7", то замок переходит в состояние С2, во всех прочих случаях он остается в состоянии С1.
В состоянии С2 замок опять ждет нажатия любой из кнопок. Если нажата только одна кнопка, и это "2", то замок переходит в состояние С3, во всех прочих случаях он переходит в состояние С1.
В состоянии С3 замок опять ждет нажатия любой из кнопок. Если нажата только одна кнопка, и это "9", то замок переходит в состояние С4, во всех прочих случаях он переходит в состояние С1.
В состоянии C4 замок открывается (втягивает защелку) и ждет три секунды, а затем отпускает защелку и переходит в состояние C5.
В состоянии С5 замок ждет отпускания всех кнопок (остается в нем, если не все кнопки отпущены). Если же все кнопки отпущены, то замок переходит в состояние С1, после чего все повторяется сначала. Понятно ?
Попробуйте сделать такой замок сами, только предусмотрите подавление дребезга от кнопок ...

А, вот еще есть книжка Лобанова. Там не совсем про МК, но суть та же:
http://lord-n.narod.ru/walla.html

Ладно, пока Лобанова не читайте, а то запутаетесь ...
Go to the top of the page
 
+Quote Post
Дмитрий(846)
сообщение Mar 13 2013, 18:33
Сообщение #33


Участник
*

Группа: Участник
Сообщений: 45
Регистрация: 4-03-13
Из: Украина / Харьков
Пользователь №: 75 894



Честно говоря я уже запутанный.

Я понял что ничего не получиться самостоятельно.
Go to the top of the page
 
+Quote Post
kovigor
сообщение Mar 13 2013, 18:55
Сообщение #34


Гуру
******

Группа: Свой
Сообщений: 5 273
Регистрация: 30-03-10
Пользователь №: 56 295



Цитата(Дмитрий(846) @ Mar 13 2013, 22:33) *
Честно говоря я уже запутанный.

Я понял что ничего не получиться самостоятельно.

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

В обоих случаях для отсчета временных интервалов пользуйтесь прерыванием от таймера

P.S. А вообще, я вам указал на книги по программированию для МК. Читали ? Смотрели ? Ничего непостижимого там нет, программирование МК доступно даже старшеклассникам
Go to the top of the page
 
+Quote Post
Дмитрий(846)
сообщение Mar 13 2013, 19:17
Сообщение #35


Участник
*

Группа: Участник
Сообщений: 45
Регистрация: 4-03-13
Из: Украина / Харьков
Пользователь №: 75 894



Но зачем?
Ведь есть уже готовое, осталось только подкорректировать, не без вашего участия.

Может давайте поможете мне разобрать код, дополнить его, оптимизировать его работу

Сообщение отредактировал Дмитрий(846) - Mar 13 2013, 21:20
Прикрепленные файлы
Прикрепленный файл  System_Sound.rar ( 329.05 килобайт ) Кол-во скачиваний: 16
 
Go to the top of the page
 
+Quote Post
kovigor
сообщение Mar 13 2013, 22:52
Сообщение #36


Гуру
******

Группа: Свой
Сообщений: 5 273
Регистрация: 30-03-10
Пользователь №: 56 295



Цитата(Дмитрий(846) @ Mar 13 2013, 23:17) *
Но зачем?

Да нет у меня времени разбираться в чужом коде, тем более, что этот проект - не самый простой проект на свете. В него нужно вникать, и вникать глубоко. Да и разбирательство это мне ни к чему, ничему новому я там не научусь.
Ладно. Не хотите учиться - не нужно. Я умываю руки. Проект-то ваш. Вы сами не дотите ничего сделать cамостоятельно, чтобы он заработал, так я должен хотеть ? Вам говоришь, как надо, а вы "но зачем ? ...". Ну, тогда, если вы знаете лучше меня, сами и разбирайтесь ...
Go to the top of the page
 
+Quote Post
Дмитрий(846)
сообщение Mar 14 2013, 18:59
Сообщение #37


Участник
*

Группа: Участник
Сообщений: 45
Регистрация: 4-03-13
Из: Украина / Харьков
Пользователь №: 75 894



Цитата(kovigor @ Mar 14 2013, 00:52) *
Да нет у меня времени разбираться в чужом коде, тем более, что этот проект - не самый простой проект на свете. В него нужно вникать, и вникать глубоко. Да и разбирательство это мне ни к чему, ничему новому я там не научусь.
Ладно. Не хотите учиться - не нужно. Я умываю руки. Проект-то ваш. Вы сами не дотите ничего сделать cамостоятельно, чтобы он заработал, так я должен хотеть ? Вам говоришь, как надо, а вы "но зачем ? ...". Ну, тогда, если вы знаете лучше меня, сами и разбирайтесь ...


Помоги разобраться почему ребутиться!
Прикрепленные файлы
Прикрепленный файл  System_Sound.rar ( 322.43 килобайт ) Кол-во скачиваний: 18
 
Go to the top of the page
 
+Quote Post
XVR
сообщение Mar 15 2013, 07:18
Сообщение #38


Гуру
******

Группа: Свой
Сообщений: 3 123
Регистрация: 7-04-07
Из: Химки
Пользователь №: 26 847



Во первых маловат массив text (и пишут в него из прерывания и основной программы)
Во вторых - у вас общение с LCD идет из прерываний и из основного цикла программы - на LCD будет каша
С I2C то же самое

А ребутится может из за использования в прерываниях и основной программе всего, чего только можно. А так же из за использования функции sprintf - ей нужен довольно большой стек (насколько я помню)
Go to the top of the page
 
+Quote Post
Дмитрий(846)
сообщение Mar 15 2013, 17:19
Сообщение #39


Участник
*

Группа: Участник
Сообщений: 45
Регистрация: 4-03-13
Из: Украина / Харьков
Пользователь №: 75 894



Цитата(XVR @ Mar 15 2013, 09:18) *
Во первых маловат массив text (и пишут в него из прерывания и основной программы)
Во вторых - у вас общение с LCD идет из прерываний и из основного цикла программы - на LCD будет каша
С I2C то же самое

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


Ох? реально не учел текста + %Vol
глюков стало меньше!
Прикрепленные файлы
Прикрепленный файл  System_Sound.rar ( 324.08 килобайт ) Кол-во скачиваний: 15
 
Go to the top of the page
 
+Quote Post
Дмитрий(846)
сообщение Mar 15 2013, 22:18
Сообщение #40


Участник
*

Группа: Участник
Сообщений: 45
Регистрация: 4-03-13
Из: Украина / Харьков
Пользователь №: 75 894



Подскажите после нажатия кнопки на пульте Power, атмега перезагружается
Прикрепленные файлы
Прикрепленный файл  System_Sound.rar ( 326.7 килобайт ) Кол-во скачиваний: 22
 
Go to the top of the page
 
+Quote Post
Дмитрий(846)
сообщение Mar 18 2013, 14:19
Сообщение #41


Участник
*

Группа: Участник
Сообщений: 45
Регистрация: 4-03-13
Из: Украина / Харьков
Пользователь №: 75 894



Подскажите значения, не могу рассчитать значения делителей.

if (key_adc <= 3) return KEY_
if ((key_adc >= 50) && (key_adc <= 108)) return KEY_
if ((key_adc >= 130) && (key_adc <= 178)) return KEY_
if ((key_adc >= 180) && (key_adc <= 198)) return KEY_
if ((key_adc >= 200) && (key_adc <= 248)) return KEY_
if ((key_adc >= 248) && (key_adc <= 255)) return KEY_

НА ноге атмеги с плюсом кинул 4,7 кОм а на кнопках последовательно кинул по 1кОм
Go to the top of the page
 
+Quote Post
artkam
сообщение Mar 18 2013, 18:35
Сообщение #42


Частый гость
**

Группа: Участник
Сообщений: 182
Регистрация: 14-09-10
Из: Уфа
Пользователь №: 59 479



Приведите, пожалуйста, схему...
Go to the top of the page
 
+Quote Post
Дмитрий(846)
сообщение Mar 18 2013, 21:18
Сообщение #43


Участник
*

Группа: Участник
Сообщений: 45
Регистрация: 4-03-13
Из: Украина / Харьков
Пользователь №: 75 894



Спасибо за помощь
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
muravei
сообщение Mar 19 2013, 08:24
Сообщение #44


Гуру
******

Группа: Свой
Сообщений: 2 538
Регистрация: 13-08-05
Пользователь №: 7 591



Цитата(Дмитрий(846) @ Mar 18 2013, 17:19) *
Подскажите значения, не могу рассчитать значения делителей.

Подсказываю: Был такой мужик ,Ом .Так вот , закон его имени.
Далее читаете доку на Мегу16 ,раздел АЦП. Там есть формула перевода напряжения в цифру.
Go to the top of the page
 
+Quote Post
artkam
сообщение Mar 19 2013, 14:21
Сообщение #45


Частый гость
**

Группа: Участник
Сообщений: 182
Регистрация: 14-09-10
Из: Уфа
Пользователь №: 59 479



Как-то уж слишком мудрено у Вас... Предлагаю привести схему к виду, как в приложенном файле, тогда о уровнях напряжения на входе АЦП можно будет просто догадаться, не прибегая даже к закону имени Ома ))))
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post

6 страниц V  < 1 2 3 4 5 > » 
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 01:01
Рейтинг@Mail.ru


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