Мелкие вопросы по МК и ПЛИС.

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Ответить
Друг Кота
Аватара пользователя
Сообщения: 6296
Зарегистрирован: Пн ноя 22, 2010 00:57:15
Откуда: Ukraine

Сообщение FreshMan »

вот сдесь http://www.protostack.com/blog/2011/02/ ... atmega168/ есть такой пример

Код: Выделить всё

uint16_t ReadADC(uint8_t __channel)

{

   ADMUX = (ADMUX & 0xf0) | __channel; // Channel selection

   ADCSRA |= _BV(ADSC);                // Start conversion

   while(!bit_is_set(ADCSRA,ADIF));    // Loop until conversion is complete

   ADCSRA |= _BV(ADIF);                // Clear ADIF by writing a 1 (this sets the value to 0)

 

   return(ADC);

}
в цикле while(!bit_is_set(ADCSRA,ADIF)); мы коротаем время пока не будут завершены преобразования, а потом сбрасываем флаг(сами).
не проще ли было бы сделать чтобы сдесь он сбрасывался аппаратно ?
Tell Me The Truth
Реклама
Друг Кота
Аватара пользователя
Сообщения: 3872
Зарегистрирован: Пт янв 29, 2010 10:27:40
Откуда: Москва

Сообщение Engineer_Keen »

FreshMan писал(а):не проще ли было бы сделать чтобы сдесь он сбрасывался аппаратно ?
Зависит от конкретной программы, где-то удобно через прерывания, где-то тупым ожиданием флага готовности.
Реклама
Друг Кота
Аватара пользователя
Сообщения: 6296
Зарегистрирован: Пн ноя 22, 2010 00:57:15
Откуда: Ukraine

Сообщение FreshMan »

а почему чтобы сбросить ADIF то надо записать 1 ?
ведь 0 буыло бы логичней ........., из каких соображений так сделано ?
Tell Me The Truth
Друг Кота
Аватара пользователя
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск

Сообщение pyzhman »

Смотреть на микросхему 561ТМ2. Чем там сброс происходит?
Docendo discimus
Контактная информация:
Реклама
Эиком - электронные компоненты и радиодетали
Друг Кота
Аватара пользователя
Сообщения: 6296
Зарегистрирован: Пн ноя 22, 2010 00:57:15
Откуда: Ukraine

Сообщение FreshMan »

по поводу 561ТМ2 там все понятно....., подаешь на вход R сигнал логической 1 и вуаля.......
а тут мы имеем дело с ячейкой памяти....., то извините, немног другое :))
Tell Me The Truth
Реклама
Модератор
Аватара пользователя
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля

Сообщение Аlex »

FreshMan писал(а):ведь 0 буыло бы логичней
Согласен. Это равносильно тому, что фраза "сбросить бит" означала бы записать в бит единичку. Не логично однако ....
Контактная информация:
Реклама
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2482
Зарегистрирован: Пт авг 27, 2010 05:57:06
Откуда: Тюмень

Сообщение vitalik_1984 »

У меня у одного дежавю???
Кто то уже спрашивал похожее :)))
Контактная информация:
Модератор
Аватара пользователя
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля

Сообщение Аlex »

vitalik_1984, хорошая у Вас память :)) По крайней мере лучше чем у FreshMan :)))
Контактная информация:
Друг Кота
Аватара пользователя
Сообщения: 6296
Зарегистрирован: Пн ноя 22, 2010 00:57:15
Откуда: Ukraine

Сообщение FreshMan »

в тот момент я так и не услышал внятно-понятного ответа......, прозвучали слова касающиеся вокруг да около и так "взагалi" :))
вот по этому пробел и остался :tea:
Tell Me The Truth
Друг Кота
Аватара пользователя
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск

Сообщение pyzhman »

Если не понятно что и как работает, то воспринимаем это как аксиому. Как библию. Как судьбу в виде даташита. :)) Ну а если не нравится, то делаем свое. :))
Docendo discimus
Контактная информация:
Друг Кота
Аватара пользователя
Сообщения: 6296
Зарегистрирован: Пн ноя 22, 2010 00:57:15
Откуда: Ukraine

Сообщение FreshMan »

pyzhman писал(а):Если не понятно что и как работает
то надо искать источник где это понятно обясняется и излагается
всему есть логическое обьяснение :))
Tell Me The Truth
Друг Кота
Аватара пользователя
Сообщения: 3872
Зарегистрирован: Пт янв 29, 2010 10:27:40
Откуда: Москва

Сообщение Engineer_Keen »

FreshMan писал(а):всему есть логическое обьяснение :))
Это логическое объяснение может крыться глубоко в схемотехнике контроллера, например если выход этого регистра, отвечающий за флаг статуса идет через логическое "ИЛИ" (со схемой дающей "1" при переходе на адрес вектора прерывания АЦП) на сброс триггера. При этом установка "1" в триггере происходит при окончании преобразования, а его выход это как раз тот самый бит флага но уже только для чтения (и для работы подсистемы прерывания). Т.е. этот бит не просто один физический бит памяти, которым можно манипулировать как вздумается, а более сложное устройство со своей хитрой схемой управления...
Сложный какой-то пример получился :facepalm:
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2482
Зарегистрирован: Пт авг 27, 2010 05:57:06
Откуда: Тюмень

Сообщение vitalik_1984 »

то надо искать источник где это понятно обясняется и излагается
Ищите молча, потом нам расскажете :))
Вообще почему Atmel сделал в управляющем регистре портом 0 это вход 1 это выход, в отличие от микрочип, где 1 это вход, а 0 это выход?
Таких загадок можно много найти, а ответ будет один- аппаратные особенности каждого Мк.
Сложный какой-то пример получился
Я как то так же пытался объяснить, но не вышло. Не знает человек что такое схемотехника. Да и плохо объясняю
Вообще ответ могут дать инженеры Atmel, может им стоит написать, вместо этого форума? :wink:
Контактная информация:
Друг Кота
Аватара пользователя
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск

Сообщение pyzhman »

Мол какого хэ, пацаны? :))
Docendo discimus
Контактная информация:
Друг Кота
Аватара пользователя
Сообщения: 6296
Зарегистрирован: Пн ноя 22, 2010 00:57:15
Откуда: Ukraine

Сообщение FreshMan »

я тут читал что Cortex M3 имеет разделенную шину данных и управления и общую память для програм и ОЗУ
а у AVR шина данных и управления тоже разделены ?
Tell Me The Truth
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 1900
Зарегистрирован: Сб фев 21, 2009 13:11:40
Откуда: Москва

Сообщение ibiza11 »

вот так и хочется написать "нах.я тебе все это?"
вы знаете зачем эти шины нужны? а они вообще есть в AVR?
Ставим плюсы: )
Друг Кота
Аватара пользователя
Сообщения: 6296
Зарегистрирован: Пн ноя 22, 2010 00:57:15
Откуда: Ukraine

Сообщение FreshMan »

ibiza11, если не можешь ничего сказать по теме то лучше промолчи.
а зачем мен все это ты узнаешь когда подростешь....., может быть :))
Tell Me The Truth
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 1900
Зарегистрирован: Сб фев 21, 2009 13:11:40
Откуда: Москва

Сообщение ibiza11 »

а по-моему вы задаете вопросы только для того чтобы их задать.
посмотрите в даташит на любой AVR и сразу станет ясно разделенные шины управления и данных или нет. Зачем этот вопрос? или по вашему на форуме должны повторять все те моменты архитектуры, которые описаны явно в даташите?
Да даже картинки полистайте в даташите!
Да даже в интернете посмотрите на русском языке, если на английском непонятно!

и еще "подростешь" пишется через "а" в корне, так что расти тут вам, а не мне. и не тычьте мне, неуважаемый, не с мальчиком общаетесь.
Ставим плюсы: )
Друг Кота
Аватара пользователя
Сообщения: 3872
Зарегистрирован: Пт янв 29, 2010 10:27:40
Откуда: Москва

Сообщение Engineer_Keen »

FreshMan писал(а):а у AVR шина данных и управления тоже разделены ?
На первых страницах даташита на любую AVRку есть структурная схема, только там шины не подписаны...
Хочешь подробнее, могу только посоветовать поставить квартус, зарегаться на opencores и скачать там ядро avr. Скомпилировать и посмотреть на уровне RTL (т.е. на уровне отдельных регистров), вот только там хрен чего разберешь :))) :facepalm:
Друг Кота
Аватара пользователя
Сообщения: 6296
Зарегистрирован: Пн ноя 22, 2010 00:57:15
Откуда: Ukraine

Сообщение FreshMan »

ibiza11 писал(а):а по-моему вы задаете вопросы только для того чтобы их задать.
это только по твоему
ibiza11 писал(а):и еще "подростешь" пишется через "а" в корне, так что расти тут вам, а не мне.
давай тогда поговорим на украинском и посмотрим кому еще придется расти :wink:
ibiza11 писал(а):и не тычьте мне, неуважаемый,
ты тогда тоже подбирай слова и фильтруй звуки........., уважаемый :wink:
Engineer_Keen писал(а):На первых страницах даташита на любую AVRку есть структурная схема, только там шины не подписаны...
я в курсе....., скажите об этом ibiza11 , он по ходу ни сном ни духом..... :))
Tell Me The Truth
Ответить

Вернуться в «Разные вопросы по МК»