Портал для радиолюбителей и разработчиков электроники · с 2003 годаРеклама на сайте
Найти компонент, схему или даташит

Даташиты, справочник отечественных приборов, схемы с разбором и живой форум

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы

Atmega8 термометр

Непрочитано 10.12.2014, 17:19  
_Артём_
Гражданин KAZUS.RUN
 
Регистрация: 16.03.2011
Сообщений: 486
Сказал спасибо: 8
Сказали Спасибо 131 раз(а) в 116 сообщении(ях)
_Артём_ на пути к лучшему
По умолчанию Re: Atmega8 термометр

Сообщение от STM32F0 Посмотреть сообщение
Нет в этом кале программных приоритетов прерываний.
Так ли необходимы приоритеты? Для чего они тут?

Сообщение от STM32F0 Посмотреть сообщение
И железно 1-wire не изобразить.
Мастера? Как-то всё-таки можно...
Сообщение от STM32F0 Посмотреть сообщение
Единственный более-менее подходящий вариант это заюзать для 1-wire UART.
UART-ов в mega и так не хватает. Жалко их на 1-wire тратить.

Сообщение от STM32F0 Посмотреть сообщение
Единственный
Можно ещё функцию захвата задействовать - получится короткий кусок кода с запрещёнными прерываниями (1-2 мкс). А дальше 1 от 0 можно отличить по захваченному таймером значению.
Реклама:
_Артём_ вне форума  
Непрочитано 10.12.2014, 18:12  
-Alan-
Прописка
 
Аватар для -Alan-
 
Регистрация: 05.12.2008
Адрес: Россия, Омск
Сообщений: 145
Сказал спасибо: 39
Сказали Спасибо 29 раз(а) в 22 сообщении(ях)
-Alan- на пути к лучшему
По умолчанию Re: Atmega8 термометр

Ну что уж сразу "нельзя"? А как же обычные игры с портом ввода-вывода? Он же не зря порт ввода-вывода, а не какой-то конкретный порт ввода, или порт вывода.
В чём сложность вообще? Изобразить прерывания по таймеру каждую 1мс? Просто. Добавить процедуры задержки на 20-40мкс? Просто.
И что дальше? Правильно! Можно уже делать интерфейс One-Wire ручками.
Неправильно? Возможно. Велосипед? Вполне. А если нет готового интерфейса в чипе?
Кстати, STM32F0, а в STM32 такой интерфейс есть? Нету. Я знаю, ибо тоже с ними работаю.
В данный момент допиливаю проект на Меге (с прерываниями, SPI, UART, Ethernet (over SPI, но не суть) и динамической индикацией. Туда DS18B20 вмещается легко.
Кстати, в скором времени доделаю под него подобие библиотеки (разве что, заточена будет под мой личный проект), но работать будет. Кстати, работать будет асинхронно, то есть, наматывать NOP'ы не будем: Отправили/приняли бит? Отлично! Положите на полочку к остальным и завершите выполнение прерывания.
Приблизетельно так. По прикидкам, на 12МГц (да, сейчас опять могут кидаться фразами, мол "Медленно!") тратится не более 3% времени (при приёме/передаче нулей и активной шине). В случае же простоя шины прерывание только спрашивает функцию, нужно ли ей выполниться.
-Alan- вне форума  
Непрочитано 10.12.2014, 18:33  
_Артём_
Гражданин KAZUS.RUN
 
Регистрация: 16.03.2011
Сообщений: 486
Сказал спасибо: 8
Сказали Спасибо 131 раз(а) в 116 сообщении(ях)
_Артём_ на пути к лучшему
По умолчанию Re: Atmega8 термометр

Сообщение от -Alan- Посмотреть сообщение
Добавить процедуры задержки на 20-40мкс? Просто.
Можно и без задержки обойтись: после выставления на шине 0 разрешить прерывание по совпадению и в этом прерывании отпускать шину 1-wire.
_Артём_ вне форума  
Непрочитано 10.12.2014, 20:01  
STM32F0
Заблокирован
 
Регистрация: 22.04.2014
Сообщений: 0
Сказал спасибо: 15
Сказали Спасибо 366 раз(а) в 284 сообщении(ях)
STM32F0 на пути к лучшему
По умолчанию Re: Atmega8 термометр

Сообщение от akegor Посмотреть сообщение
Ойц! Во как пальцы выворачиваются!
Это от тыкания на неправильные ссылки с неправильными примерами! Нет примеров с:
Цитата:
где бы использовались прерывания от внешних устройств и работа с датчиком DS18b20
--------------

Сообщение от _Артём_ Посмотреть сообщение
Так ли необходимы приоритеты?
А почему нет?

Сообщение от _Артём_ Посмотреть сообщение
Мастера? Как-то всё-таки можно...
На Меге? Железно? Ну-ну!

Сообщение от _Артём_ Посмотреть сообщение
UART-ов в mega и так не хватает. Жалко их на 1-wire тратить.
Таймеров то тоже не очень.

Сообщение от -Alan- Посмотреть сообщение
Изобразить прерывания по таймеру каждую 1мс? Просто. Добавить процедуры задержки на 20-40мкс? Просто.
И что дальше? Правильно! Можно уже делать интерфейс One-Wire ручками.
Угу! На АСМе, чтобы жизнь малиной не казалась.

Сообщение от -Alan- Посмотреть сообщение
в STM32 такой интерфейс есть? Нету. Я знаю, ибо тоже с ними работаю.
Запиливается на раз-два пилочкой для ногтей, даже без прерываний.

Сообщение от -Alan- Посмотреть сообщение
В данный момент допиливаю проект на Меге (с прерываниями, SPI, UART, Ethernet (over SPI, но не суть) и динамической индикацией. Туда DS18B20 вмещается легко.
Верю. Главное чтобы место во флэше осталось.

Сообщение от _Артём_ Посмотреть сообщение
Можно и без задержки обойтись: после выставления на шине 0 разрешить прерывание по совпадению и в этом прерывании отпускать шину 1-wire.
А если прерываний несколько? Вот здесь бы приоритет прерываний и пригодился бы.
STM32F0 вне форума  
Непрочитано 10.12.2014, 20:42  
akegor
Гуру портала
 
Аватар для akegor
 
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 19,313
Сказал спасибо: 2,633
Сказали Спасибо 12,076 раз(а) в 6,082 сообщении(ях)
akegor на пути к лучшему
По умолчанию Re: Atmega8 термометр

Сообщение от STM32F0 Посмотреть сообщение
Это от тыкания на неправильные ссылки
А хрена ж, простите за слог, Вы не тыкнули в правильные? Может, от того, что без комментария фраза
Сообщение от 123ksn Посмотреть сообщение
Примеров для Ардуино много, но я не нашел НИ ОДНОГО, где бы использовались прерывания от внешних устройств и работа с датчиком DS18b20.
может пониматься как угодно (или как удобно)?
Какой был вопрос, такой был получен ответ.
А Вы, таки, подагру-то лечите, заодно и жабу воспитывайте.
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
akegor вне форума  
Непрочитано 10.12.2014, 20:47  
STM32F0
Заблокирован
 
Регистрация: 22.04.2014
Сообщений: 0
Сказал спасибо: 15
Сказали Спасибо 366 раз(а) в 284 сообщении(ях)
STM32F0 на пути к лучшему
По умолчанию Re: Atmega8 термометр

Не надо заниматься словоблудием и ораторским онанизмом. Можно совместить 1-wire и прерывания в Меге? Покажите!
STM32F0 вне форума  
Непрочитано 10.12.2014, 20:54  
omercury
Почётный гражданин KAZUS.RUN
 
Аватар для omercury
 
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,487
Сказал спасибо: 30
Сказали Спасибо 3,070 раз(а) в 2,011 сообщении(ях)
omercury на пути к лучшему
По умолчанию Re: Atmega8 термометр

Сообщение от STM32F0 Посмотреть сообщение
Угу! На АСМе, чтобы жизнь малиной не казалась.
Хто тут чё против АСМа имеет?

Эт во-первых.
А во-вторых, стоит ли вообще такой камень, как Ваш ник, заморачивать на такую хрень, как 1-wire?
Не мудрее ли будет всю эту медленную лабуду выделить в отдельный процесс и пыренько выгребать оттуда уже подготовленные данные в необходимый момент времени?

Сообщение от STM32F0 Посмотреть сообщение
Вот здесь бы приоритет прерываний и пригодился бы.
Вернёмся к MCS51?
Там ещё и FPU покруче STM-овского.
omercury вне форума  
Непрочитано 10.12.2014, 21:00  
STM32F0
Заблокирован
 
Регистрация: 22.04.2014
Сообщений: 0
Сказал спасибо: 15
Сказали Спасибо 366 раз(а) в 284 сообщении(ях)
STM32F0 на пути к лучшему
По умолчанию Re: Atmega8 термометр

Сообщение от omercury Посмотреть сообщение
стоит ли вообще такой камень, как Ваш ник, заморачивать на такую хрень, как 1-wire?
А какая разница?
Сообщение от omercury Посмотреть сообщение
Не мудрее ли будет всю эту медленную лабуду выделить в отдельный процесс и пыренько выгребать оттуда уже подготовленные данные в необходимый момент времени?
Не знаю. Я школу толком не закончил, Мегу в руках не держал.
STM32F0 вне форума  
Непрочитано 10.12.2014, 21:01  
akegor
Гуру портала
 
Аватар для akegor
 
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 19,313
Сказал спасибо: 2,633
Сказали Спасибо 12,076 раз(а) в 6,082 сообщении(ях)
akegor на пути к лучшему
По умолчанию Re: Atmega8 термометр

Сообщение от STM32F0 Посмотреть сообщение
Не надо заниматься словоблудием и ораторским онанизмом
Уже сказал -
Сообщение от akegor Посмотреть сообщение
жабу воспитывайте
Сообщение от STM32F0 Посмотреть сообщение
Можно совместить 1-wire и прерывания в Меге?
Уже сказали в 21 и 22 постах.
Сообщение от STM32F0 Посмотреть сообщение
Покажите!
Требуете? Гы! [Непечатность]
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
akegor вне форума  
Непрочитано 10.12.2014, 21:04  
STM32F0
Заблокирован
 
Регистрация: 22.04.2014
Сообщений: 0
Сказал спасибо: 15
Сказали Спасибо 366 раз(а) в 284 сообщении(ях)
STM32F0 на пути к лучшему
По умолчанию Re: Atmega8 термометр

Сообщение от akegor Посмотреть сообщение
Уже сказали в 21 и 22 постах.
А толку? Пароли, явки, коды, хексы, где?
[Непечатность][Непечатность][Непечатность][Непечатность][Непечатность][Непечатность][Непечатность][Непечатность][Непечатность][Непечатность]
STM32F0 вне форума  
 
Опции темы

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ATmega8 kurilka Микроконтроллеры, АЦП, память и т.д 84 06.03.2010 16:03
Котроллер дисплея на Atmega8 kosant Микроконтроллеры, АЦП, память и т.д 24 30.11.2009 20:57
Порт С в ATmega8 VVKart Микроконтроллеры, АЦП, память и т.д 2 10.11.2009 14:08
proteus, atmega8, меняю ноги в hex - не работает digitest Микроконтроллеры, АЦП, память и т.д 3 08.10.2009 13:07


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


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