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

 
 
> Чудеса, паразитные импульсы
MySOL
сообщение Nov 17 2012, 14:19
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 67
Регистрация: 17-06-12
Пользователь №: 72 370



Друзья, выручайте. Возникли проблемы с получением генератора прямоугольных импульсов. Микроконтроллер ATMEGA48. Вобщем суть такова: для одной схемки нужно было прилепить пул ап к выводу и на определённый промежуток прижимать его к земле. В протеусе всё летает как нужно. В итоге перенёс все на железо и тут понеслось: ничего не работает.(Это просто лирическое отступление и в суть программы вдаваться не стоит). Долго маялся и не мог понять в чём проблема. В итоге запилил простейший генератор прямоугольного сигнала и вот что я увидел на экране осциллографа:
Прикрепленное изображение


Я уже несколько недель маюсь с этой проблемой. Думал, что проблема в питалове. Подключал и ЛБП и батарейки. На входе стоит кондер на 10 мкф, такты задаются кварцем на 12 МГц. Пробовал и на внутреннем rc, ничего не изменилось. Есть ли какие нибудь соображения?

А по поводу той программки, что я писал вначале. Она должна прижать ногу микрухи на 500 мкс. На осциллографе этого не происходило, был просто моментальный скачёк до 0 и тут же отпускал:
Прикрепленное изображение


И ещё я пробовал на 2 микрухах везде оно и то же.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
ILYAUL
сообщение Nov 17 2012, 16:52
Сообщение #2


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

Группа: Свой
Сообщений: 1 940
Регистрация: 16-12-07
Из: Москва
Пользователь №: 33 339



Если , честно то - кошмар.
Начнём с начала Из чего состоит импульс сброс присутствие - из 2-х фаз Сброса 480us- посылаемого MCU и ответа DS - присутствие
Код
LDI        TEMP,    0B00000000       ; Сброс
OUT        PORTB,    TEMP           ; Посылаем 0 в течении 500 мкс

Меняется на
Код
cbi PORTB, PD0

Задержка 500us
Код
sbi PORTB, PD0
CBI        DDRB,    PD0               ; Меняем вывод на ввод
SBIC     PINB,    PD0               ; Ждём пока датчик утопит шину
                     RJMP     PC-1



--------------------
Закон Мерфи:

Чем тщательнее составлен проект, тем больше неразбериха, если что-то пошло не так
Go to the top of the page
 
+Quote Post
defunct
сообщение Dec 22 2012, 23:58
Сообщение #3


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(ILYAUL @ Nov 17 2012, 18:52) *
Код
sbi PORTB, PD0
CBI DDRB,    PD0            ; Меняем вывод на ввод

А для чего делается короткий пульс (запись 1 в порт когда пин настроен на вывод)?
подозреваю что если есть внешний pull-up достаточно управлять только DDR'ом.
Go to the top of the page
 
+Quote Post
ILYAUL
сообщение Dec 23 2012, 16:28
Сообщение #4


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

Группа: Свой
Сообщений: 1 940
Регистрация: 16-12-07
Из: Москва
Пользователь №: 33 339



Цитата(defunct @ Dec 23 2012, 03:58) *
А для чего делается короткий пульс (запись 1 в порт когда пин настроен на вывод)?
подозреваю что если есть внешний pull-up достаточно управлять только DDR'ом.

Код
sbi PORTB, PD0
Да , это лишнее


--------------------
Закон Мерфи:

Чем тщательнее составлен проект, тем больше неразбериха, если что-то пошло не так
Go to the top of the page
 
+Quote Post

Сообщений в этой теме


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

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 08:42
Рейтинг@Mail.ru


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