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

 
 
> RESET, Что должно быть на ней?
Kuznec9999
сообщение May 5 2008, 14:02
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 47
Регистрация: 29-04-08
Пользователь №: 37 157



У меня в проекте установлен фьюз BODON (запуск при достижении питания), однако даже с ним схема не всегда удачно стартует. Как повысить стабильность запуска схемы? Может стоит подключить какую-либо внешнюю цепь к выводу reset?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Vlad219i
сообщение May 5 2008, 14:20
Сообщение #2


Участник
*

Группа: Свой
Сообщений: 63
Регистрация: 13-03-06
Из: Москва
Пользователь №: 15 204



Цитата(Kuznec9999 @ May 5 2008, 18:02) *
У меня в проекте установлен фьюз BODON (запуск при достижении питания), однако даже с ним схема не всегда удачно стартует. Как повысить стабильность запуска схемы? Может стоит подключить какую-либо внешнюю цепь к выводу reset?


Reset стОит подтянуть через резистор 4,7-10к к питанию.
Кстати - это может быть проблема не ресета, а запуска генератора (конденсаторов в обвязке кварца нет или не те, остатки флюса около кварца, неправильно выставленные фузы CKSEL,CKOPT etc).
Go to the top of the page
 
+Quote Post
Kuznec9999
сообщение May 5 2008, 14:40
Сообщение #3


Участник
*

Группа: Новичок
Сообщений: 47
Регистрация: 29-04-08
Пользователь №: 37 157



Цитата(Vlad219i @ May 5 2008, 18:20) *
Reset стОит подтянуть через резистор 4,7-10к к питанию.
Кстати - это может быть проблема не ресета, а запуска генератора (конденсаторов в обвязке кварца нет или не те, остатки флюса около кварца, неправильно выставленные фузы CKSEL,CKOPT etc).

Дело в том, что генератор внутренний. А при запуске индикатор выдаёт совершенно "нечитабельные" символы. Хотя по динамике их работы видно, что программа всё же работает. Всё-таки инициализировать ОЗУ обязательно. Сейчас буду пробовать. Уверен, дело в этом. Добавил в программу блок инициализации (очистки) ОЗУ, запуск стал корректным даже при отсутствии чего-либо на ножке reset.

Сообщение отредактировал Kuznec9999 - May 5 2008, 15:02
Go to the top of the page
 
+Quote Post
galjoen
сообщение May 5 2008, 16:41
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 841
Регистрация: 10-05-07
Из: Чебоксары (Россия)
Пользователь №: 27 640



Цитата(Kuznec9999 @ May 5 2008, 18:40) *
Всё-таки инициализировать ОЗУ обязательно.

Переменные, находящиеся в ОЗУ, инициализировать обязательно, а всё ОЗУ нет. Рекомендую составить подпрограммы инициализации переменных для каждой задачи, и в самом начале их вызывать. Так-же нужна подпрограмма инициализации портов. Только ук-ль стека нужно инициализировать до их вызова. А эти подпрограммы и не при старте потом понадобится могут.

Посмотрел вашу программу - впечатлило. Видимо это N1? Ну чтож - всё когда-то новичками были. А вообще всё правильно делаете - с ассемблера и нужно начинать. Только рекомендую какие-нибудь примеры посмотреть что-ли. Особенно интересно смотреть на
Код
in r18,sreg
sbrs r18,1
rjmp init1

Что можно заменить на
Код
brne init1

А вообще удивительно, что эта программа работает!
А разная ерунда на индикатор выводится видимо из-за того, что вы при отсутствии обнуления ОЗУ, видимо и zh не обнуляли.
Go to the top of the page
 
+Quote Post
Kuznec9999
сообщение May 5 2008, 17:37
Сообщение #5


Участник
*

Группа: Новичок
Сообщений: 47
Регистрация: 29-04-08
Пользователь №: 37 157



Цитата(galjoen @ May 5 2008, 20:41) *
Переменные, находящиеся в ОЗУ, инициализировать обязательно, а всё ОЗУ нет. Рекомендую составить подпрограммы инициализации переменных для каждой задачи, и в самом начале их вызывать. Так-же нужна подпрограмма инициализации портов. Только ук-ль стека нужно инициализировать до их вызова. А эти подпрограммы и не при старте потом понадобится могут.

Посмотрел вашу программу - впечатлило. Видимо это N1? Ну чтож - всё когда-то новичками были. А вообще всё правильно делаете - с ассемблера и нужно начинать. Только рекомендую какие-нибудь примеры посмотреть что-ли. Особенно интересно смотреть на
Код
in r18,sreg
sbrs r18,1
rjmp init1

Что можно заменить на
Код
brne init1

А вообще удивительно, что эта программа работает!
А разная ерунда на индикатор выводится видимо из-за того, что вы при отсутствии обнуления ОЗУ, видимо и zh не обнуляли.

Спасибо за развёрнутый ответ. Нет, это №2 smile.gif . Кстати, как не странно, работает отлично smile.gif. Процедура очистки ОЗУ - в самом начале. Что такое zh? rolleyes.gif Что представляет собой инициализация переменных, портов? Извините за множество вопросов. Микроконтроллеры для меня пока - зелёный лес smile.gif.

Сообщение отредактировал Kuznec9999 - May 5 2008, 17:40
Go to the top of the page
 
+Quote Post
galjoen
сообщение May 5 2008, 17:52
Сообщение #6


Знающий
****

Группа: Свой
Сообщений: 841
Регистрация: 10-05-07
Из: Чебоксары (Россия)
Пользователь №: 27 640



Цитата(Kuznec9999 @ May 5 2008, 21:37) *
Что такое zh?

Код
clr zh

Вот обнуление (zh==r31).
Вы командой ld r25,z пользовались, а она адрес из zh и zl берёт. ldi zl,0 вы делали,а ldi zh,0 нет. А в zh случайное число при включении процессора попадало.

А всетаки посмотрите как другие-то программы пишут - поучитесь. Это самый лучший способ обучения. Ну и теорию почитайте конечно.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Kuznec9999   RESET   May 5 2008, 14:02
- - volod_ua   Цитата(Kuznec9999 @ May 5 2008, 17:02) У ...   May 5 2008, 14:06
- - uriy   А вы уверена что проблема в ресете. Может кварц ви...   May 5 2008, 14:15
|- - Vlad219i   Цитата(Kuznec9999 @ May 5 2008, 18:40) Вс...   May 5 2008, 16:22
||- - Kuznec9999   Цитата(Vlad219i @ May 5 2008, 20:22) Дума...   May 5 2008, 16:37
|- - Kuznec9999   Цитата(galjoen @ May 5 2008, 21:52) Кодcl...   May 5 2008, 18:15
- - chds   Были такие же гадости - плата могла несколько раз ...   May 5 2008, 15:45
|- - galjoen   Цитата(chds @ May 5 2008, 19:45) а могла ...   May 5 2008, 16:08
- - domowoj   Еще обязательно вблизи МК необходимо поставить кер...   May 5 2008, 16:02
- - vet   многобайтные числа нужно инкрементировать по-друго...   May 5 2008, 18:41
- - Kuznec9999   Цитата(vet @ May 5 2008, 22:41) многобайт...   May 5 2008, 18:43


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

 


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


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