AVR studio в вопросах и ответах

Обсуждаем контроллеры компании Atmel.
Ответить
Прорезались зубы
Сообщения: 217
Зарегистрирован: Ср янв 11, 2012 11:55:51

Сообщение Land »

U235, steps опеределена как volatile -- переменная steps глобальная volatile uint16_t steps = STEP; Прерывание может конечно прилететь. И прерывание не запретить... Делать проверку условия в прерывании и флаг выставлять?
Реклама
Опытный кот
Аватара пользователя
Сообщения: 760
Зарегистрирован: Сб окт 22, 2016 17:33:32
Откуда: кг

Сообщение Карбофос »

Увидел, что ATtiny13.
Реклама
Встал на лапы
Аватара пользователя
Сообщения: 135
Зарегистрирован: Вт фев 21, 2012 20:42:26
Откуда: Санкт-Петербург, Россия, Земля

Сообщение U235 »

[uquote="Land",url="/forum/viewtopic.php?p=4224723#p4224723"]U235, steps опеределена как volatile -- переменная steps глобальная volatile uint16_t steps = STEP;[/uquote]
Вот это место я упустил из виду. Значит

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

00000163  STS 0x0062,R1      Store direct to data space
00000165  STS 0x0061,R1      Store direct to data space
Относится к

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

else steps = 0; // для перехода к сбросу
несколькими строчками выше while.
Прерывание может конечно прилететь. И прерывание не запретить... Делать проверку условия в прерывании и флаг выставлять?
Можнно флаг сделать. Или как в документации к avr-libc рекомендуют:

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

#include <util/atomic.h>

.....

uint16_t steps_copy;
do {
    ATOMIC_BLOCK(ATOMIC_FORCEON) {
        steps_copy = ctr;
    }
}  while (steps_copy);
Прорезались зубы
Сообщения: 217
Зарегистрирован: Ср янв 11, 2012 11:55:51

Сообщение Land »

U235, пожалуй второй вариант мне больше нравится. Спасибо за подсказку. Плюсанул бы вам в карму, да грехи не позволяют ))

Добавлено after 43 minutes 26 seconds:
[uquote="Land",url="/forum/viewtopic.php?p=4224973#p4224973"]U235, пожалуй второй вариант мне больше нравится. Спасибо за подсказку. Плюсанул бы вам в карму, да грехи не позволяют ))[/uquote]

Да, проблема похоже была именно в несвоевременном прилете прерывания. В железе это тоже было, но не каждый цикл. Так что Протеус не врал. А Студия моделирует все же идеально сферического коня в абсолютном вакууме (. Большое спасибо всем, принявшим участие в решении проблемы.
Реклама
Эиком - электронные компоненты и радиодетали
Прорезались зубы
Сообщения: 217
Зарегистрирован: Ср янв 11, 2012 11:55:51

Сообщение Land »

Доброго всем. Очередной вопрос касающийся именно Atmel Studio 7. Как можно откатиться на частоту ISP в диалоге программирования? Уже распаянная тинька не хотела при перешивке опознаваться, решил снизить скорость. И в результате захожу в Device Programming, выбираю Tool, выбираю Device, Interface, жму Apply -- и все. Курсор крутится, как будто процесс какой-то идет, но подключения программатора не происходит (( И что делать -- совершенно не понятно.
В логе стоит Setting Platform Property.. и все.
Реклама
Вымогатель припоя
Аватара пользователя
Сообщения: 551
Зарегистрирован: Ср июн 29, 2022 16:25:45

Сообщение Just_Fluffy »

Land, В студии по F12 открывается диалог программатора.
У меня оно срабатывает без подключенного МК, только с подключенным AVR ISP mkII от Grott-а.
Выбираю так же - Tool, Device, Interface и после нажатия Apply открывается ползунок выбора скорости. Там можно выбрать скорость ISP и нажать Apply.
И только уже при переходе к фьюзам идет обращение к МК.
--
а скорость программирования по F11 выставляется отдельно, в свойствах проекта.
Белая и Пушистая
Я не ИИ, поэтому могу ошибаться.
Реклама
Прорезались зубы
Сообщения: 217
Зарегистрирован: Ср янв 11, 2012 11:55:51

Сообщение Land »

Just_Fluffy, спасибо, попробую
Грызет канифоль
Сообщения: 260
Зарегистрирован: Вс ноя 13, 2011 11:21:23
Откуда: Горловка.

Сообщение igorka »

Прошу совета, какую порекомендуете установить версию данного продукта?Требования такие: минимум глюков, минимально возможный код после компиляции, система windows7, контроллеры использоваться будут tiny 13, 2313, 26, ATmega 8, 328. Язык программирования - "С".
Спасибо.
akl
Друг Кота
Сообщения: 4450
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Сообщение akl »

Пользуюсь студией 4.19, правда на ассемблере. Но, коллега рядом на ней же трахается на це.
Изображение
Вложения
AVR_STUDIO_4_19_730.PNG
(43.07 КБ) 438 скачиваний
Грызет канифоль
Сообщения: 260
Зарегистрирован: Вс ноя 13, 2011 11:21:23
Откуда: Горловка.

Сообщение igorka »

[uquote="akl",url="/forum/viewtopic.php?p=4274200#p4274200"]Пользуюсь студией 4.19, правда на ассемблере.[/uquote]
Понял, спасибо.
Как я понимаю в моем случае нужно установить ещё и WinAVR?
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18694
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

WinAVR устарела весьма сильно... но более свежие версии плохо будут в древней студии отлаживаться. вы бы сразу на современное что-то переходили бы...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Вымогатель припоя
Аватара пользователя
Сообщения: 551
Зарегистрирован: Ср июн 29, 2022 16:25:45

Сообщение Just_Fluffy »

igorka, пользовалась четвертой студией, когда изучала асм для аврок.
Когда взялась за си, то стало понятно, что четверка немножко грустная...
Поставила Atmel Studio 7 - там и синтаксис подсвечивается, и автозавершение умное....
Сейчас весь софт для программирования и проектирования выгнала в виртуальную машину с голой виндой 7. И эту виртуалку таскаю и на рабочий комп, и на домашний.
Белая и Пушистая
Я не ИИ, поэтому могу ошибаться.
Грызет канифоль
Сообщения: 260
Зарегистрирован: Вс ноя 13, 2011 11:21:23
Откуда: Горловка.

Сообщение igorka »

[uquote="ARV",url="/forum/viewtopic.php?p=4274258#p4274258"]WinAVR устарела весьма сильно... но более свежие версии плохо будут в древней студии отлаживаться. вы бы сразу на современное что-то переходили бы...[/uquote]
Вы имеете ввиду тулчейны?Я только учусь, помигать светодиодом и т.д. , плюс компьютер очень слабенький, ну и контроллеры буду использовать старенькие.Поэтому ставлю версию 4.19.
И все таки, что посоветуете WinAVR или avr-gss посвежее по ссылке выше?
Just_Fluffy Спасибо за совет, но я ограничен в ресурсах...
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18694
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

я бы посоветовал современную студию и современный тулчейн. собственно, единственный плюс студии - наличие симулятора, что для отладки (тем более для начинающего) большой плюс.

сам я много лет для разработки применяю Eclipse CDT с плагином для AVR, а для отладки - симуляцию в протеусе. студийная симуляция и рядом не лежала с протеусовской.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Вымогатель припоя
Сообщения: 541
Зарегистрирован: Вт фев 09, 2010 17:52:26

Сообщение codenamehawk »

ARV писал(а):студийная симуляция и рядом не лежала с протеусовской.
Это точно, студия все возможности проца может отладить, а протеус, только те, что поддерживает.

Протеус позволяет быстро отладить основные функции, но без отладки в железе не обойтись.
В старой студии можно открыть схему протеуса и отлаживать.
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18694
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

студия тоже позволяет отладить только то, что поддерживает... и многое она не поддерживает вообще. протеус симулирует на порядок больше и лучше студии, а с учетом того, что позволяет симулировать и обвязку МК, он вне конкуренции! попробуйте в студии отладить обмен с и2ц-часами, например, или 1-wire термометром!
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Вымогатель припоя
Сообщения: 541
Зарегистрирован: Вт фев 09, 2010 17:52:26

Сообщение codenamehawk »

ARV писал(а):студия тоже позволяет отладить только то, что поддерживает... и многое она не поддерживает вообще.
Что конкретно студия не поддерживает? Какие функции проца не может отладить?
Протеус полезная вещь на начальном этапе отладки, но еще более полезная внутрисхемная отладка с применением студии.
ARV писал(а):он вне конкуренции! попробуйте в студии отладить обмен с и2ц-часами, например, или 1-wire термометром!
Отказаться от протеуса позволяет вывод отладочной информации через уарт.
Вымогатель припоя
Аватара пользователя
Сообщения: 551
Зарегистрирован: Ср июн 29, 2022 16:25:45

Сообщение Just_Fluffy »

codenamehawk, WDT студия не умеет, например. Когда то столкнулась с этим, когда на 2313 тиньке сделать одну приблуду долго-спящую захотелось.
(но как показал опыт, использование мега8, включение асинхронного таймера2 с часовым кварцем, выключенными BOD и WDT оказалось экономичнее)
Тут в соседней теме уже несколько страниц спорят адепты внутрисхемной отладки и адепты отладки через Юарт, что лучше.
Никакой метод отладки неидеален.
Кстати, попробуйте отладить 1Wire-термометр с выводом на i2c OLED на тиньке13 через юарт. А ARV на это посмотрит.
Белая и Пушистая
Я не ИИ, поэтому могу ошибаться.
Вымогатель припоя
Сообщения: 541
Зарегистрирован: Вт фев 09, 2010 17:52:26

Сообщение codenamehawk »

Just_Fluffy писал(а):Кстати, попробуйте отладить 1Wire-термометр с выводом на i2c OLED на тиньке13 через юарт.
Где вы ней уарт нашли? Или хотите программный туда засунуть?
Вымогатель припоя
Аватара пользователя
Сообщения: 551
Зарегистрирован: Ср июн 29, 2022 16:25:45

Сообщение Just_Fluffy »

codenamehawk писал(а):Где вы ней уарт нашли? Или хотите программный туда засунуть?
Нигде не нашла. И не искала. Это был ответ на ваше утверждение про отладку через вывод в Юарт вместо отладки в протезе.
Белая и Пушистая
Я не ИИ, поэтому могу ошибаться.
Ответить

Вернуться в «AVR»