AVR Раздел по микроконтроллерам компании Atmel - AVR / ATtiny / ATmega / ATMega128 / ATxmega, вопросы по программированию в AVR studio и все, относящееся к AVR... |
27.03.2013, 22:00
|
|
Частый гость
Регистрация: 27.03.2013
Сообщений: 45
Сказал спасибо: 3
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: АЦП на Атмега8 и УАРТ - помогите
Сообщение от akegor
|
AsSoul, еще раз перечитал задание, скорее всего (раз задана периодичность передачи) прерывания от таймера. Нужно выбрать таймер (для начала проще 8-ми битный), выбрать источник тактирования (точнее, предделитель). В визарде разрешить соответствующее прерывание (можно по переполнению, можно по сравнению - зависит от конкретных значений периодичности, предделителя, необходимой точности интервала) -будет сгенерирована "рыба" обработчика прерывания. Необходимые действия перенести из main() в обработчик прерывания.
Если есть вопросы - жду.
|
Простите, за глупый вопрос. А что значит необходимые действия перенести в обработчик прерываний?
И еще вопрос - на что влияет предделитель?!
И просьба - как по английски будет прерывание по переполнению, по сравнению. чтоб в визарде это выбрать.
Я когда разбиралась как и что - про регистры ацп и уарт - вроде все поняла (куда и что записывать чтоб ацп был настроен как надо и уарт настраиваю через визард), а вот про прерыванияскока не читала, так и не смогла ничего понять.
|
|
|
|
27.03.2013, 22:05
|
|
Почётный гражданин KAZUS.RU
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
|
Re: АЦП на Атмега8 и УАРТ - помогите
Сообщение от akegor
|
мне кажется, Вы уводите человека в сторону.
|
Поэтому и написал про чёткое ТЗ, чтоб без вариантов.
К тому же девушке желательно использовать прерывание - и тут появляется выбор - используя Free Running Mode сделать 2 прерывания или без него замутить целых 3!
UPD.
Сообщение от AsSoul
|
А что значит необходимые действия перенести в обработчик прерываний?
|
А вот этого делать как раз не стоит - ни к чему привыкать к дурному тону и раскладывать себе грабли.
Последний раз редактировалось omercury; 27.03.2013 в 22:09.
|
|
|
|
27.03.2013, 22:15
|
|
Частый гость
Регистрация: 27.03.2013
Сообщений: 45
Сказал спасибо: 3
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: АЦП на Атмега8 и УАРТ - помогите
Сообщение от akegor
|
omercury, мне кажется, Вы уводите человека в сторону. Она меня уже один раз ткнула носом в первый пост, где достаточно сказано о техзадании, а если учесть что ТС - студент, то ни о каких наворотах типа хоста речи быть не может - простая учебная задача для познания основ. И "Free Running Mode" здесь ни к чему, достаточно один раз в 10...100 ms производить измерения.
|
Не совсем - это первый шаг при написании диплома. ((((
Т.е. далее программа должна быть усложнена. Для начала преподаватель требует эту программу написать, чтобы с помощью нее снять показания с потенциометрического датчика на роботе, затем с этими показаниями мы сможем рассчитать ПИД регулятор для двигателей робота. Сам диплом представляет программу для СУ робота. Я должна буду написать часть этой программы, которая будет выполнять постоянный опрос датчиков и постоянную регулировку двигателей, а также принимать с ПК пакеты с заданиями для робота. Не знаю пока правда как!((((( Застряла на этой начальной программе, а преподаватель даже капельку помочь не хочет - говорит: все сама! не можешь - гуляй!((((((((((((( Как-то так. Простите за много букв!
|
|
|
|
27.03.2013, 22:16
|
|
Частый гость
Регистрация: 27.03.2013
Сообщений: 45
Сказал спасибо: 3
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: АЦП на Атмега8 и УАРТ - помогите
Сообщение от oleg110592
|
Код, который на радиокоте проверили?
|
Нет еще. Не могу сейчас. С планшета пишу. Нет доступа к компу!((((((((
|
|
|
|
27.03.2013, 22:21
|
|
Частый гость
Регистрация: 27.03.2013
Сообщений: 45
Сказал спасибо: 3
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: АЦП на Атмега8 и УАРТ - помогите
Сообщение от omercury
|
Кто-то должен быть главным в этой системе - вот он-то и есть хост.
Или просто передаём что есть в "белый свет"?
Значит придётся придумать алгоритм контроля, скажем исключающее или с константой и передача последовательно того, что намерили и контрольного байта. На стороне приёмника нужно проделать ту же операцию и сравнить с контрольным байтом.
Справитесь?
Угу. Это повлияет на настройки скорости UART.
|
Пока что пытаюсь добиться чтобы просто передавалось в свет, в дальнейшем как я преподавателя поняла - нужно будет отправлять и получать ответ от пк.
алгоритм контроля вряд ли осилю, но где в просторах интернета видела такой - поищу!
Настойки в протеусе поменяю!)
|
|
|
|
27.03.2013, 22:22
|
|
Гражданин KAZUS.RU
Регистрация: 05.04.2009
Сообщений: 976
Сказал спасибо: 35
Сказали Спасибо 155 раз(а) в 134 сообщении(ях)
|
Re: АЦП на Атмега8 и УАРТ - помогите
Проверил в протеусе. число 80 шестнадцатеричное = 128
|
|
|
|
27.03.2013, 22:25
|
|
Частый гость
Регистрация: 27.03.2013
Сообщений: 45
Сказал спасибо: 3
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: АЦП на Атмега8 и УАРТ - помогите
Сообщение от oleg110592
|
Проверил в протеусе. число 80 шестнадцатеричное = 128
|
А при 5 Вольтах что выдает?!
|
|
|
|
27.03.2013, 22:26
|
|
Гуру портала
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 18,856
Сказал спасибо: 2,532
Сказали Спасибо 11,771 раз(а) в 5,896 сообщении(ях)
|
Re: АЦП на Атмега8 и УАРТ - помогите
AsSoul, у таймера есть варианты выбора частоты тактирования, т.е., частота его инкремента. Эта частота получается делением частоы процессора (кварца) на коэффициент предделителя. На вкладке таймера в визарде это видно (там прямо указывается частота, но для этого на вкладке "чип" нужно указать контроллер и частоту кварца). Сравнение у Т1 и Т2, у Т0 только переполнение. Достаточно правильно выбрать Clock Value и прерывания попадут в указанный диапазон. Это самый простой вариант, но его можно и усложнить, задавшись точным периодом.
В сгенерированной визардом "рыбе" будет пустая функция обработки прерывания.
Все устройства контроллера предварительно настраиваются визардом (если внимательно подойти к этому этапу - вручную ничего не нужно настраивать).
"Прерывание" - приостановка работы программы для реакции на произошедшее интересующее событие. Реакция - вызов специальной функции "обработчика прерывания". Об этом, все же, нужно почитать. Готов отвечать на вопросы (но не писать программу - это уж самостоятельно, но помогу). Переполнение - overflow.
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
|
|
|
|
27.03.2013, 22:29
|
|
Частый гость
Регистрация: 27.03.2013
Сообщений: 45
Сказал спасибо: 3
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: АЦП на Атмега8 и УАРТ - помогите
Сообщение от akegor
|
AsSoul, у таймера есть варианты выбора частоты тактирования, т.е., частота его инкремента. Эта частота получается делением частоы процессора (кварца) на коэффициент предделителя. На вкладке таймера в визарде это видно (там прямо указывается частота, но для этого на вкладке "чип" нужно указать контроллер и частоту кварца). Сравнение у Т1 и Т2, у Т0 только переполнение. Достаточно правильно выбрать Clock Value и прерывания попадут в указанный диапазон. Это самый простой вариант, но его можно и усложнить, задавшись точным периодом.
В сгенерированной визардом "рыбе" будет пустая функция обработки прерывания.
Все устройства контроллера предварительно настраиваются визардом (если внимательно подойти к этому этапу - вручную ничего не нужно настраивать).
"Прерывание" - приостановка работы программы для реакции на произошедшее интересующее событие. Реакция - вызов специальной функции "обработчика прерывания". Об этом, все же, нужно почитать. Готов отвечать на вопросы (но не писать программу - это уж самостоятельно, но помогу). Переполнение - overflow.
|
Более менее поняла про прерывание. Такой вопрос - вы завтра на форуме будете, просто сейчас не у компа, да и голова уже просто не варит. Завтра с утра буду копаться во всем этом (попробую программу с кота и визард помучаю). Можно будет завтра Вас вопросами помучить?!)
|
|
|
|
27.03.2013, 22:31
|
|
Гражданин KAZUS.RU
Регистрация: 05.04.2009
Сообщений: 976
Сказал спасибо: 35
Сказали Спасибо 155 раз(а) в 134 сообщении(ях)
|
Re: АЦП на Атмега8 и УАРТ - помогите
Сообщение от AsSoul
|
А при 5 Вольтах что выдает?!
|
Естественно FF = 255
|
|
|
Сказали "Спасибо" oleg110592
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 10:00.
|
|