Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
21.05.2010, 20:26
|
|
Временная регистрация
Регистрация: 30.06.2005
Адрес: Санкт-Петербург
Сообщений: 73
Сказал спасибо: 2
Сказали Спасибо 11 раз(а) в 11 сообщении(ях)
|
Сдвиг сигнала, почему?
При одновременной установке бит порта почему то происходит сдвиг выходных сигналов EN2 относительно EN1
...
clr tmp16
ldi tmp16,(1‹‹EN1)|(1‹‹EN2)
out PORTB,tmp16
ldi tmp16,(1‹‹SE)
out SMCR,tmp16
sei
sleep
...
часть подпрограммы, выход осуществляется по прерыванию (переполнение T0) режим Fast PWM, предделитель таймера 8. Что может быть?
|
|
|
|
21.05.2010, 21:37
|
|
Прописка
Регистрация: 24.08.2005
Сообщений: 139
Сказал спасибо: 18
Сказали Спасибо 16 раз(а) в 15 сообщении(ях)
|
Re: Сдвиг сигнала, почему?
выход последовательно на один порт или разные?
и перепеши программу на СИ!!!!!!!!!!!!!!
|
|
|
|
21.05.2010, 21:50
|
|
Прописка
Регистрация: 25.10.2008
Сообщений: 125
Сказал спасибо: 1
Сказали Спасибо 36 раз(а) в 26 сообщении(ях)
|
Re: Сдвиг сигнала, почему?
Может это "шутки" осциллографа? Не пробовали задать изменения и замерить на других выводах?
|
|
|
|
21.05.2010, 22:08
|
|
Вид на жительство
Регистрация: 12.04.2007
Сообщений: 348
Сказал спасибо: 2
Сказали Спасибо 36 раз(а) в 32 сообщении(ях)
|
Re: Сдвиг сигнала, почему?
Сообщение от vvkka
|
выход последовательно на один порт или разные?
|
ясен пень что на один
Сообщение от vvkka
|
и перепеши программу на СИ!!!!!!!!!!!!!!
|
Если Вы не владеете asm - это только Ваши проблемы.
__________________
Гидравлика + электроника = POWER
|
|
|
|
21.05.2010, 22:27
|
|
Почётный гражданин KAZUS.RU
Регистрация: 08.01.2008
Сообщений: 1,143
Сказал спасибо: 379
Сказали Спасибо 430 раз(а) в 274 сообщении(ях)
|
Re: Сдвиг сигнала, почему?
Чем сделана осциллограмма?
Попробуйте замкнуть два канала на один выход или поменять каналы(это так, для проверки фиксирующего устройства).
Возможно один вывод порт сконфигурирован как вход, и когда устанавливается бит PORTB, и за счет емкости цепи идет запаздывание нарастания напряжения (хотя под большим сомнением, судя по осциллограмме)
Последний раз редактировалось E97; 21.05.2010 в 22:31.
|
|
|
|
21.05.2010, 23:05
|
|
Гражданин KAZUS.RU
Регистрация: 17.08.2008
Сообщений: 770
Сказал спасибо: 52
Сказали Спасибо 450 раз(а) в 202 сообщении(ях)
|
Re: Сдвиг сигнала, почему?
Сообщение от E97
|
Чем сделана осциллограмма?
|
Действительно. Может быть ошибки софта осциллографа.
Что показывает реальный осциллограф?
Цитата:
|
часть подпрограммы, выход осуществляется по прерыванию
|
Это может быть еще одна причина. Убрать все прерывания и посмотреть
|
|
|
|
21.05.2010, 23:06
|
|
Почётный гражданин KAZUS.RU
Регистрация: 22.06.2004
Адрес: Харьков
Сообщений: 1,488
Сказал спасибо: 3,207
Сказали Спасибо 3,010 раз(а) в 686 сообщении(ях)
|
Re: Сдвиг сигнала, почему?
Попробуйте
ldi tmp16,b00000011
out PORTB,tmp16
Посмотрите дизассемблером HEX (вашего варианта), я видел случаи когда в исходнике на асме
ldi tmp16,(1‹‹EN1)|(1‹‹EN2)
out PORTB,tmp16
а в реальности количество команд в объектном коде больше. Типа так
ldi tmp16,b00000001
out PORTB,tmp16
ldi tmp16,b00000011
out PORTB,tmp16
в итоге время установки первого бита на несколько тактов позже времени установки нулевого.
|
|
|
|
21.05.2010, 23:38
|
|
Вид на жительство
Регистрация: 21.10.2009
Сообщений: 343
Сказал спасибо: 181
Сказали Спасибо 64 раз(а) в 56 сообщении(ях)
|
Re: Сдвиг сигнала, почему?
Попробовать поменять местами провода осциллографа. Если теперь CH2 впереди, менять осциллограф.
|
|
|
|
23.05.2010, 22:59
|
|
Временная регистрация
Регистрация: 30.06.2005
Адрес: Санкт-Петербург
Сообщений: 73
Сказал спасибо: 2
Сказали Спасибо 11 раз(а) в 11 сообщении(ях)
|
Re: Сдвиг сигнала, почему?
Спасибо за все советы, завтра попробую их применить. Напишу что получилось.
|
|
|
|
24.05.2010, 10:48
|
|
Почётный гражданин KAZUS.RU
Регистрация: 08.10.2007
Сообщений: 2,760
Сказал спасибо: 1,105
Сказали Спасибо 1,037 раз(а) в 569 сообщении(ях)
|
Re: Сдвиг сигнала, почему?
Должно быть всё одновременно. А осциллограф может врать, даже аналоговый. Я бы сложил сигналы резистивным сумматором (3 резистора) и посмотрел одним лучом. Кстати, "неравноплечий" сумматор помогает когда, например, смотришь на i2c - данные уровнем в 2 деления, а из них торчат синхроимпульсы 1 деление. И вход экономится.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 04:15.
|
|