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

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

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

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

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

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


 
Опции темы
Непрочитано 21.02.2017, 04:46  
CERGEI1982
Почётный гражданин KAZUS.RU
 
Аватар для CERGEI1982
 
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
CERGEI1982 на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от eddy Посмотреть сообщение
Если нужна строгая задержка (скажем, 1-wire), то она выполняется либо таймером, либо USART'ом.
.
Интересно,а как с помощью USART,примерный алгоритм можно?
Реклама:
__________________
Глаза боятся,а руки делают.
CERGEI1982 вне форума  
Непрочитано 21.02.2017, 04:47  
CERGEI1982
Почётный гражданин KAZUS.RU
 
Аватар для CERGEI1982
 
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
CERGEI1982 на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от STM32F0 Посмотреть сообщение
Но по личному опыту могу сказать, что на сегодняшний день СТМ32, а для мелких проектов и СТМ8, самые что ни на есть хоббийные. Их основная хоббийность в том, что при всей своей кажущейся сложности они позволяют создавать более-менее приличные проекты не прибегая к КА, в привычном виде, или РТОС..
Уже почувствовал тока начиная изучение и сравнение с пиком.Вещь серьезная,но думаю будет много пользы.
Книжку читаю по процу Cortex-M3,хоть в общем представлять какое ядро и прерывания,потом дальше периферию изучать буду дальше.Очень интересует DMA,может дорасту и до Ethernet.
__________________
Глаза боятся,а руки делают.

Последний раз редактировалось CERGEI1982; 21.02.2017 в 04:50.
CERGEI1982 вне форума  
Непрочитано 21.02.2017, 09:30  
eddy
Почётный гражданин KAZUS.RU
 
Аватар для eddy
 
Регистрация: 27.01.2005
Адрес: Россия, КЧР, Нижний Архыз
Сообщений: 3,627
Сказал спасибо: 115
Сказали Спасибо 814 раз(а) в 591 сообщении(ях)
eddy на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от CERGEI1982 Посмотреть сообщение
Интересно,а как с помощью USART,примерный алгоритм можно?
У него изменяли скорость (для инита одна, для собственно передачи данных другая) а импульсы формировали, задавая нужные последовательности. Скажем, сигнал с заполнением 50% получится передачей байта 0x0f, ну и далее по аналогии.
Работает с DMA (разве что инит не очень-то на DMA садится, но его можно и через КА реализовать).

На таймерах я и сам реализацию делал (см. в моем гитхабе stm32samples для F1). Там тоже инициализация через КА, а дальше общение при помощи DMA. Заполнение задается собственно изменением регистра CCR1 таймера. А в CCR2 заносится ответ.

В обоих алгоритмах сначала формируется посылка — набор данных для DMA. Потом пинается init. Как только все ОК, запускается передача данных по DMA. По прерыванию DMA в окончании передачи запускается "дешифратор", который из полученного массива данных восстанавливает информацию.

Отличие возможностей STM32 от STM8 можно и по толщине RM оценить. Я вот за пару вечеров на STM8 сделал I2C. С STM32F030 вчера весь вечер прочитал, охренел, сколько регистров для этой элементарщины нужно. Только с утра сегодня понял, как там надо тайминги настраивать. А мне еще хочется туда DMA прикрутить...
__________________
Союз Советских Социалистических Округов Северной Америки
eddy вне форума  
Непрочитано 21.02.2017, 12:23  
STM32F0
Заблокирован
 
Регистрация: 22.04.2014
Сообщений: 0
Сказал спасибо: 15
Сказали Спасибо 366 раз(а) в 284 сообщении(ях)
STM32F0 на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от CERGEI1982 Посмотреть сообщение
Интересно,а как с помощью USART,примерный алгоритм можно?
Ноги ростут от самого Далласа. Поиском в гугле "dallas 1-wire uart" и первая же строка
____https://www.maximintegrated.com/en/app-notes/index.mvp/id/214
Метод действителен для любых МК, в принципе. Просто для СТМ, за счёт его особенностей, всё получается немного проще.
STM32F0 вне форума  
Непрочитано 21.02.2017, 12:40  
STM32F0
Заблокирован
 
Регистрация: 22.04.2014
Сообщений: 0
Сказал спасибо: 15
Сказали Спасибо 366 раз(а) в 284 сообщении(ях)
STM32F0 на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от CERGEI1982 Посмотреть сообщение
Очень интересует DMA
ДМА в СТМ32 особенно красив в паре таймерами. Тот же 1-wire реализуется аппаратно, даже без УАРТ и даже без КА. Т.е. тупо запускается таймер, а по окончанию транзакции ДМА разбираем данные. Да и вообще, там многим чем можно рулить аппаратно через таймера и ДМА. Главное чтобы хватало того и другого.
STM32F0 вне форума  
Непрочитано 21.02.2017, 12:58  
Easyrider83
Гуру портала
 
Аватар для Easyrider83
 
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,835
Сказал спасибо: 919
Сказали Спасибо 4,308 раз(а) в 2,573 сообщении(ях)
Easyrider83 на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

STM32F0, а можно подробнее? Есть один проект, есть свободный DMA, есть 1-wire, который не очень дружит с RTOS.
Easyrider83 вне форума  
Непрочитано 21.02.2017, 13:30  
eddy
Почётный гражданин KAZUS.RU
 
Аватар для eddy
 
Регистрация: 27.01.2005
Адрес: Россия, КЧР, Нижний Архыз
Сообщений: 3,627
Сказал спасибо: 115
Сказали Спасибо 814 раз(а) в 591 сообщении(ях)
eddy на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Easyrider83, вот мое под STM32F103 на таймерах.
__________________
Союз Советских Социалистических Округов Северной Америки
eddy вне форума  
Сказали "Спасибо" eddy
Easyrider83 (21.02.2017)
Непрочитано 21.02.2017, 14:39  
zöner
Гражданин KAZUS.RU
 
Регистрация: 16.02.2012
Сообщений: 441
Сказал спасибо: 89
Сказали Спасибо 735 раз(а) в 149 сообщении(ях)
zöner на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Цитата:
Если нужна строгая задержка (скажем, 1-wire), то она выполняется либо таймером, либо USART'ом.
а ведь получается глупо - задействовать целый таймер, и потом в цикле тупо ждать его завершения... в чем выигрыш ?
для микросекундной задержки тоже таймер заряжать ?
zöner вне форума  
Непрочитано 21.02.2017, 14:54  
eddy
Почётный гражданин KAZUS.RU
 
Аватар для eddy
 
Регистрация: 27.01.2005
Адрес: Россия, КЧР, Нижний Архыз
Сообщений: 3,627
Сказал спасибо: 115
Сказали Спасибо 814 раз(а) в 591 сообщении(ях)
eddy на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от zöner Посмотреть сообщение
тупо ждать его завершения
Не тупо ждать, а заниматься другими делами: общению по USB, опросу других датчиков и т.д., и т.п.
Сообщение от zöner Посмотреть сообщение
для микросекундной задержки тоже таймер заряжать
Да, за это время можно много чего полезного сделать. Или просрать много чего, если тупо ждать, не обрабатывая другие флаги. А так — запомнил текущее время, да периодически проверяй. Как только нужное количество микросекунд прошло, выполняй задачу.

На абдуринщиков крайне не рекомендую смотреть: эти [censored] то в прерывание какую-нибудь здоровую функцию впихнут, то по полсекунды ждут в блокирующем цикле, то ногами дрыгают...
Кстати, с таким извращенским подходом просто невозможно, скажем, плавно управлять шаговым двигателем. Ему обязательно нужен таймер (да еще и с DMA, чтобы разгон/торможение задавать).
__________________
Союз Советских Социалистических Округов Северной Америки

Последний раз редактировалось eddy; 21.02.2017 в 14:57.
eddy вне форума  
Непрочитано 21.02.2017, 15:09  
zöner
Гражданин KAZUS.RU
 
Регистрация: 16.02.2012
Сообщений: 441
Сказал спасибо: 89
Сказали Спасибо 735 раз(а) в 149 сообщении(ях)
zöner на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

например зарядили таймер, переключились на другие задачи, вернулись обратно, и тут оказалось что другая задача заняла слишком много времени... и задержка получилась неточной...
и зачем ждать если есть прерывания? в том числе на USB...
zöner вне форума  
 

Закладки
Опции темы

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Школа АRMрестлинга Uragan90 Микроконтроллеры, АЦП, память и т.д 54 22.08.2011 16:13
ARM Cortex M3 + Linux SiMiLya Микроконтроллеры, АЦП, память и т.д 10 17.06.2011 17:20
Помогите с STM32 - очень нужно... yakuzaa Микроконтроллеры, АЦП, память и т.д 60 04.08.2010 11:04
Как добавить поддержку для STM32 SFHK Микроконтроллеры, АЦП, память и т.д 11 18.12.2009 18:09


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


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot