Реклама на сайте DatasheetsDatasheets

KAZUS.RUN - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Книги и журналы
FAQ по электронике

  Datasheets
Поиск SMD
Онлайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Схемы и проекты
Принципиальные схемы
  Программы
Каталог сайтов
Калькуляторы
  Форумы по электронике
Помощь проекту


 
Опции темы

Аппаратный одновибратор в Pic

Непрочитано 24.07.2015, 16:03  
alex6002
Прописка
 
Регистрация: 07.08.2006
Адрес: Оренбург
Сообщений: 176
Сказал спасибо: 39
Сказали Спасибо 83 раз(а) в 32 сообщении(ях)
alex6002 на пути к лучшему
По умолчанию Re: Аппаратный одновибратор в Pic

Сообщение от akegor Посмотреть сообщение
Правильно сформулированный вопрос содержит половину решения.
А как правильно ? Я спросил про ОДНОвибратор, а Вы мне начали советовать PWM. Я ж не знал, что для Вас это одно и то же...

Впрочем, вопрос решен - несмотря на лингвистические изъяны....
Реклама:
__________________
Делай что должно - и будь что будет.

Последний раз редактировалось alex6002; 24.07.2015 в 16:11.
alex6002 вне форума  
Непрочитано 24.07.2015, 16:46  
NewWriter
Почётный гражданин KAZUS.RUN
 
Аватар для NewWriter
 
Регистрация: 07.09.2014
Адрес: В Кремле!
Сообщений: 4,481
Сказал спасибо: 396
Сказали Спасибо 2,222 раз(а) в 1,317 сообщении(ях)
NewWriter на пути к лучшему
По умолчанию Re: Аппаратный одновибратор в Pic

Сообщение от alex6002 Посмотреть сообщение
Вот чувствую - есть чего-то очень простое и известное... а никак...
Есть!

Вообще-то, варианты есть и попроще, чем использовать еще одно прерывание от еще одного модуля. Лишняя проверка еще одного прерывания - это потеря времени. А ведь можно обойтись и одним таймером. Все очень просто.
Когда наступило прерывание через 40 мкс:
- проверяем состояние пина, (на котором формируется импульс) на =0,
- настраиваем ТОТ ЖЕ САМЫЙ ТАЙМЕР на 20 мкс,
- формируем начало импульса на порту (пин =1, формируется фронт _/- )
- и выходим из прерывания.
При повторном срабатывании прерывания через 20 мкс:
- проверив состояние пина (=1?)
- формируем завершение импульса (спад -\_, пин=0 )
- проверяем, нужно ли нам формировать следующий импульс (для этого проверяем программный флаг разрешения формирования импульсов, выставляемый в основной программе),
- и если да, то переключаем таймер на период 40 - 20 = 20 мкс
. - (если нет, то запрещаем прерывания от этого таймера или выключаем его, если он выключаемый, чтобы не фонило прерываниями. Потом основной в программе не забудем разрешить их или включить таймер, когда потребуются импульсы вновь)
И если разрешено, ждем следующего прерывания через 20 мкс, оно же через 40 мкс от предыдущего начала, всё повторится для след.импульса.

Если текст прерывания довольно длинный и 20 мкс могут истечь до выхода из прерывания, то проверку прерывания от этого таймера дублируем один или несколько раз позднее в тексте прерываний, с таким расчетом, чтобы не выходя из обработчика прерываний, среагировать на истечение 20 мкс, если где-то задержались при выполнении других прерываний.

И очень желательно, чтобы частота МК должна быть выше 4 МГц в несколько раз. Иначе, работа программы будет неэффективной из-за сильного фона прерываний - все-таки, 40 шагов между прерываниями, из которых более 50% - работа в прерывании - эт плохо

Последний раз редактировалось NewWriter; 24.07.2015 в 17:14.
NewWriter вне форума  
Непрочитано 24.07.2015, 18:00  
akegor
Гуру портала
 
Аватар для akegor
 
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 19,313
Сказал спасибо: 2,633
Сказали Спасибо 12,076 раз(а) в 6,082 сообщении(ях)
akegor на пути к лучшему
По умолчанию Re: Аппаратный одновибратор в Pic

Сообщение от alex6002 Посмотреть сообщение
Я спросил про ОДНОвибратор
Тут много спрашивают того, что потом оказывается не того.
Сообщение от alex6002 Посмотреть сообщение
Я ж не знал, что для Вас это одно и то же...
Дык Вы так описали свою хотелку.
Сообщение от alex6002 Посмотреть сообщение
А как правильно ?
Так, чтобы было понятно не только вопрошающему. Желательно бы и отвечающему понимать вопрос.

Но не переживайте, Вы не одиноки.
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
akegor вне форума  
Непрочитано 24.07.2015, 19:21  
STM32F0
Заблокирован
 
Регистрация: 22.04.2014
Сообщений: 0
Сказал спасибо: 15
Сказали Спасибо 366 раз(а) в 284 сообщении(ях)
STM32F0 на пути к лучшему
По умолчанию Re: Аппаратный одновибратор в Pic

Сообщение от NewWriter Посмотреть сообщение
Вообще-то, варианты есть и попроще, чем использовать еще одно прерывание от еще одного модуля. Лишняя проверка еще одного прерывания - это потеря времени. А ведь можно обойтись и одним таймером. Все очень просто.
Когда наступило прерывание через 40 мкс:
- проверяем состояние пина, (на котором формируется импульс) на =0,
- настраиваем ТОТ ЖЕ САМЫЙ ТАЙМЕР на 20 мкс,
- формируем начало импульса на порту (пин =1, формируется фронт _/- )
- и выходим из прерывания.
При повторном срабатывании прерывания через 20 мкс:- проверив состояние пина (=1?)
- формируем завершение импульса (спад -\_, пин=0 )
- проверяем, нужно ли нам формировать следующий импульс (для этого проверяем программный флаг разрешения формирования импульсов, выставляемый в основной программе),
- и если да, то переключаем таймер на период 40 - 20 = 20 мкс
. - (если нет, то запрещаем прерывания от этого таймера или выключаем его, если он выключаемый, чтобы не фонило прерываниями. Потом основной в программе не забудем разрешить их или включить таймер, когда потребуются импульсы вновь)
И если разрешено, ждем следующего прерывания через 20 мкс, оно же через 40 мкс от предыдущего начала, всё повторится для след.импульса.
Вот не заценил полёта мысли. Может постарел? Единственное с чем согласен
Цитата:
Лишняя проверка еще одного прерывания - это потеря времени
А сколько там модулей уже не суть.

Последний раз редактировалось STM32F0; 24.07.2015 в 19:43.
STM32F0 вне форума  
Непрочитано 24.07.2015, 19:41  
STM32F0
Заблокирован
 
Регистрация: 22.04.2014
Сообщений: 0
Сказал спасибо: 15
Сказали Спасибо 366 раз(а) в 284 сообщении(ях)
STM32F0 на пути к лучшему
По умолчанию Re: Аппаратный одновибратор в Pic

Сообщение от alex6002 Посмотреть сообщение
Если не ерничать - Вы правы конечно... но знал бы кто как неохота с новым процем разбираться.... все новое, все чужое...
Спотыкаясь и барахтаясь в подобных задачах времени улетает больше, чем при освоении новых МК. Неохота разбираться с STM32 (а всё равно со временем придётся), попробуйте разобраться с STM8, у них схожая с STM32 периферия, от прародителя STM. Даже для копеечного мелкого STM8 ваша задача плёвая.
Есть вариант освоить периферию новых ПИКов, там и логические ячейки есть, и режим типа 555. Но разбираться, быстрее всего, придётся самому, что опять время. Судя по тырнету, народ не сильно проникся новшествами Микрочипа.
STM32F0 вне форума  
Непрочитано 24.07.2015, 19:44  
NewWriter
Почётный гражданин KAZUS.RUN
 
Аватар для NewWriter
 
Регистрация: 07.09.2014
Адрес: В Кремле!
Сообщений: 4,481
Сказал спасибо: 396
Сказали Спасибо 2,222 раз(а) в 1,317 сообщении(ях)
NewWriter на пути к лучшему
По умолчанию Re: Аппаратный одновибратор в Pic

И что, STM32F0, теперь будем к каждому моему слову цепляться? Ой, ну спасибо, вот уж никак не ожидал такой популярности.
Кстати, там нет ничего неправильного. Вы просто не знакомы с темой вопроса. Занимайтесь лучше STM-ом.

И кстати, я не понял, что вы имели ввиду, выделив мои фразы. Видимо, вам не понятен смысл. Да, значения таймера можно менять как угодно и когда угодно.

Сообщение от STM32F0 Посмотреть сообщение
А сколько там модулей уже не суть.
Суть, да еще какая! Вы ее просто не уловили по причине того, что не в теме вопроса

Последний раз редактировалось NewWriter; 24.07.2015 в 19:52.
NewWriter вне форума  
Непрочитано 24.07.2015, 20:26  
STM32F0
Заблокирован
 
Регистрация: 22.04.2014
Сообщений: 0
Сказал спасибо: 15
Сказали Спасибо 366 раз(а) в 284 сообщении(ях)
STM32F0 на пути к лучшему
По умолчанию Re: Аппаратный одновибратор в Pic

Сообщение от NewWriter Посмотреть сообщение
Кстати, там нет ничего неправильного.
Верю, потому что лень вникать.
Сообщение от NewWriter Посмотреть сообщение
Видимо, вам не понятен смысл. Да, значения таймера можно менять как угодно и когда угодно.
Количество прерываний от этого то не уменьшается.
Сообщение от NewWriter Посмотреть сообщение
Вы просто не знакомы с темой вопроса.
Хм!
Сообщение от NewWriter Посмотреть сообщение
Занимайтесь лучше STM-ом
И ни разу не жалею!

Последний раз редактировалось STM32F0; 24.07.2015 в 20:28.
STM32F0 вне форума  
Непрочитано 24.07.2015, 21:05  
NewWriter
Почётный гражданин KAZUS.RUN
 
Аватар для NewWriter
 
Регистрация: 07.09.2014
Адрес: В Кремле!
Сообщений: 4,481
Сказал спасибо: 396
Сказали Спасибо 2,222 раз(а) в 1,317 сообщении(ях)
NewWriter на пути к лучшему
По умолчанию Re: Аппаратный одновибратор в Pic

Так я тоже перешел на STM, но и старого не забыл и тоже использую.
NewWriter вне форума  
Непрочитано 24.07.2015, 22:33  
STM32F0
Заблокирован
 
Регистрация: 22.04.2014
Сообщений: 0
Сказал спасибо: 15
Сказали Спасибо 366 раз(а) в 284 сообщении(ях)
STM32F0 на пути к лучшему
По умолчанию Re: Аппаратный одновибратор в Pic

Сообщение от NewWriter Посмотреть сообщение
Так я тоже перешел на STM, но и старого не забыл и тоже использую.
Это типа "Я уже перешёл в пятый класс, но уроки третьего всё ещё посещаю!".
В чём тогда смысл юзать старьё?
STM32F0 вне форума  
Непрочитано 24.07.2015, 22:44  
niXto
Почётный гражданин KAZUS.RUN
 
Аватар для niXto
 
Регистрация: 13.10.2007
Адрес: Беларусь
Сообщений: 8,026
Сказал спасибо: 60
Сказали Спасибо 3,941 раз(а) в 2,302 сообщении(ях)
niXto на пути к лучшему
По умолчанию Re: Аппаратный одновибратор в Pic

STM32F0, это типа "уже слишком старый чтобы е**ть студенток"

ПИКи и АВР за счёт толстого процесса более дубовые
niXto вне форума  
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Книги dosikus Электронная библиотека 11242 29.12.2015 23:45
PIC parallel slave port (PSP) или PIC и ISA-8 Tronix286 PIC 13 13.05.2014 13:12
Литература по микроконтроллерам (AVR, PIC, ПЛИС и т.д.). Сборка книг - (256 книг+ 27 CD c примерами из книг) [обновление 2011, PDF, DJVU] yurinform Микроконтроллеры, АЦП, память и т.д 5 05.07.2011 19:00
Вопрос про PIC 16F876А Serega7777 Микроконтроллеры, АЦП, память и т.д 2 18.12.2007 22:34


Часовой пояс GMT +4, время: 02:19.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.