Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
10.12.2014, 21:06
|
|
Почётный гражданин KAZUS.RU
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
|
Re: Atmega8 термометр
Сообщение от STM32F0
|
Покажите!
|
Гы!
Напомнить?
Сообщение от STM32F0
|
А какая разница?
|
Смотря от общей задачи.
Сообщение от STM32F0
|
Мегу в руках не держал.
|
Ага-ага.
Бабушке расскажите.
|
|
|
|
10.12.2014, 21:14
|
|
Вид на жительство
Регистрация: 09.10.2012
Сообщений: 327
Сказал спасибо: 124
Сказали Спасибо 71 раз(а) в 38 сообщении(ях)
|
Re: Atmega8 термометр
Сообщение от STM32F0
Покажите!
Мужики, посмотрите 1 страницу!!!!
|
|
|
|
10.12.2014, 21:15
|
|
Заблокирован
Регистрация: 22.04.2014
Сообщений: 0
Сказал спасибо: 15
Сказали Спасибо 366 раз(а) в 284 сообщении(ях)
|
Re: Atmega8 термометр
Сообщение от omercury
|
Сообщение от STM32F0;
|
Мегу в руках не держал.
|
Ага-ага.
Бабушке расскажите.
|
А шо? Уже лет как несколько.
Мдя, без Кисона нет вальс-бостона.
|
|
|
|
10.12.2014, 21:24
|
|
Гражданин KAZUS.RU
Регистрация: 16.03.2011
Сообщений: 486
Сказал спасибо: 8
Сказали Спасибо 131 раз(а) в 116 сообщении(ях)
|
Re: Atmega8 термометр
Сообщение от STM32F0
|
А почему нет?
|
Потому что их (приоритетов) нет.
Сообщение от STM32F0
|
На Меге? Железно? Ну-ну!
|
Input capture - это не железно?
Сообщение от STM32F0
|
Таймеров то тоже не очень.
|
До 2-ух с захватом есть.
Сообщение от STM32F0
|
Угу! На АСМе, чтобы жизнь малиной не казалась.
|
АСМ на АВР не нужен в таких случаях.
Сообщение от STM32F0
|
Верю. Главное чтобы место во флэше осталось.
|
Есть АВР с 256 и 384 кБ flash. На многое может хватит.
Сообщение от STM32F0
|
А если прерываний несколько? Вот здесь бы приоритет прерываний и пригодился бы.
|
Разрешайте прерывания при входе в обработчик - получите возможность вложенных прерываний.
|
|
|
|
10.12.2014, 21:34
|
|
Заблокирован
Регистрация: 22.04.2014
Сообщений: 0
Сказал спасибо: 15
Сказали Спасибо 366 раз(а) в 284 сообщении(ях)
|
Re: Atmega8 термометр
Сообщение от _Артём_
|
Потому что их (приоритетов) нет.
|
Вообще-то есть.
Цитата:
|
The list also
determines the priority levels of the different interrupts. The lower the address the higher is the
priority level.
|
Цитата:
|
Input capture - это не железно?
|
Нет, не совсем. Железно это пнул и забыл.
Цитата:
|
До 2-ух с захватом есть.
|
Ну хоть что-то есть.
Цитата:
|
Разрешайте прерывания при входе в обработчик - получите возможность вложенных прерываний.
|
Это не мне надо. Это вопрошающему.
|
|
|
|
10.12.2014, 21:43
|
|
Гражданин KAZUS.RU
Регистрация: 16.03.2011
Сообщений: 486
Сказал спасибо: 8
Сказали Спасибо 131 раз(а) в 116 сообщении(ях)
|
Re: Atmega8 термометр
Сообщение от STM32F0
|
Вообще-то есть.
|
Мы говорили о системе с несколькими уровнями вложенных прерываний - такого нет.
В цитате говорится о случае возникновения нескольких запросов - тогда вызывается тот обработчик у которого номер вектора меньше.
Сообщение от STM32F0
|
Нет, не совсем. Железно это пнул и забыл.
|
На xmega такое наверное можно изобразить, но там и УАРТов хватает. От mega-то чего требовать - им уж больше 10 лет.
|
|
|
|
10.12.2014, 22:32
|
|
Гражданин KAZUS.RU
Регистрация: 16.03.2011
Сообщений: 486
Сказал спасибо: 8
Сказали Спасибо 131 раз(а) в 116 сообщении(ях)
|
Re: Atmega8 термометр
Сообщение от STM32F0
|
Можно совместить 1-wire и прерывания в Меге? Покажите!
|
Можно.
Как-то так:
Выделяете для 1wire 2 ноги. Первая - ICPx (input capture), вторая - неважно - она будет линию 1wire в 0 тянуть.
Бит ICESn(Input Capture Edge Select) настраивается на положительный перепад.
В прерывании переполнения/совпадения (к примеру) от таймера выдаётся 0 на 1wire и разрешается прерывание по совпадению с каналом B или C.
В прерывании от канала B или С отпускаете 1wire. Когда slave отпустит 1wire значение TCNT скопируется в ICRx - по нему можно понять что передал slave (0 или 1).
|
|
|
|
10.12.2014, 23:05
|
|
Заблокирован
Регистрация: 22.04.2014
Сообщений: 0
Сказал спасибо: 15
Сказали Спасибо 366 раз(а) в 284 сообщении(ях)
|
Re: Atmega8 термометр
Сообщение от _Артём_
|
Мы говорили о системе с несколькими уровнями вложенных прерываний - такого нет.
|
Конечно нет.
Сообщение от _Артём_
|
В цитате говорится о случае возникновения нескольких запросов - тогда вызывается тот обработчик у которого номер вектора меньше.
|
Правильно. Хардварные уровни прерываний в наличии, софтварные уровни прерываний - отсутствуют.
Сообщение от _Артём_
|
От mega-то чего требовать - им уж больше 10 лет.
|
Вот и я о том.
Сообщение от _Артём_
|
Выделяете для 1wire 2 ноги.
|
Уже уныло. А если нужно одновременно несколько датчиков опрашивать?
Сообщение от _Артём_
|
Первая - ICPx (input capture), вторая - неважно - она будет линию 1wire в 0 тянуть.
Бит ICESn(Input Capture Edge Select) настраивается на положительный перепад.
В прерывании переполнения/совпадения (к примеру) от таймера выдаётся 0 на 1wire и разрешается прерывание по совпадению с каналом B или C.
В прерывании от канала B или С отпускаете 1wire. Когда slave отпустит 1wire значение TCNT скопируется в ICRx - по нему можно понять что передал slave (0 или 1).
|
Ужас какой! Даже в STM8 - настроили таймер как PWM и open drain, и в прерывании выталкиваем байт по одному слоту, вместе с паузами и Reset. Назначаем прерыванию высокий приоритет, все остальные опускаем до нужного. И хоть LED дисплей, хоть УАРТ, хоть RC-5, всё пофигу.
Можно зациклить и по флагу вытаскивать с буфера уже готовые данные. Это не хардварно конечно, а полухардварно, но всё же.
На STM32 вообще через ДМА можно рулить и не заморачиваться.
|
|
|
|
10.12.2014, 23:18
|
|
Гражданин KAZUS.RU
Регистрация: 16.03.2011
Сообщений: 486
Сказал спасибо: 8
Сказали Спасибо 131 раз(а) в 116 сообщении(ях)
|
Re: Atmega8 термометр
Сообщение от STM32F0
|
Хардварные уровни прерываний в наличии, софтварные уровни прерываний - отсутствуют.
|
Наоборот. Софтварно можно делать много чего, а хардварных уровней всего 1.
Сообщение от STM32F0
|
Уже уныло. А если нужно одновременно несколько датчиков опрашивать?
|
До 2-ух в старших моделях можно обеспечить. Больше сложно, но можно - прерывание по изменению на порту никто не отменял (на каждом пине в наличии).
Сообщение от STM32F0
|
Ужас какой! Даже в STM8
|
Нет, не надо с STM8 сравнивать. Они вышли на сколько лет позже? Сравнивайте тогда уж с xmega.
Сообщение от STM32F0
|
настроили таймер как PWM и open drain, и в прерывании выталкиваем байт по одному слоту, вместе с паузами и Reset. Назначаем прерыванию высокий приоритет, все остальные опускаем до нужного.
|
В xmega тоже есть и open drain и приоритетыпрерываний, и софт нормальный бесплатный кстати (GCC).
Сообщение от STM32F0
|
На STM32 вообще через ДМА можно рулить и не заморачиваться.
|
В xmega тоже ДМА есть (4 канала всего правда).
Последний раз редактировалось _Артём_; 10.12.2014 в 23:31.
|
|
|
|
10.12.2014, 23:31
|
|
Заблокирован
Регистрация: 22.04.2014
Сообщений: 0
Сказал спасибо: 15
Сказали Спасибо 366 раз(а) в 284 сообщении(ях)
|
Re: Atmega8 термометр
Сообщение от _Артём_
|
Наоборот. Софтварно можно делать много чего, а хардварных уровней всего 1.
|
Не суть! Я не могу переназначить приоритеты, чтобы прерывания с низким приоритетом прерывались прерываниями с более высоким уровнем приоритета, особенно если уровней несколько.
Сообщение от _Артём_
|
До 2-ух в старших моделях можно обеспечить. Больше сложно, но можно - прерывание по изменению на порту никто не отменял (на каждом пине в наличии).
|
Вот именно, сложно.
Сообщение от _Артём_
|
Нет, не надо с STM8 сравнивать. Они вышли на сколько лет позже? Сравнивайте тогда уж с xmega.
|
"Кузнец? Какой кузнец?"(С)
Зачем она нужна, эта xmega?
Сообщение от _Артём_
|
В xmega тоже ДМА есть (4 канала всего правда). А STM8 как с ДМА?
|
В STM8L тоже 4 канала, но только один из них полноценный, к сожалению.
ДМА в STM32 позволяет сделать 1-wire полностью хардварным, до 16 каналов.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
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, время: 16:57.
|
|