Например TDA7294

Форум РадиоКот • Просмотр темы - AVR studio в вопросах и ответах
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Ср апр 24, 2024 00:14:25

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 3134 ]     ... , , , 152, , , ...  
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: AVR studio в вопросах и ответах
СообщениеДобавлено: Ср ноя 17, 2021 11:10:56 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 63
Рейтинг сообщений: 536
Зарегистрирован: Чт июл 28, 2016 07:58:37
Сообщений: 1925
Откуда: Kyiv, UA
Рейтинг сообщения: 0
BOB51, да и в сях на таком коде должно работать.
Студия в этом плане по возможности некорректный бряк перемещает туда, где он будет корректен.
Я повторил показанный Сергеем кусок кода (картинка большая, засим под спойлером)
СпойлерИзображение

У меня бряк ставится на
DDRB = 0b00000001;
Но при дебаге по F11 честно перескакивает на
PORTB = 0b00000001;

Скорее всего это из-за того, что заполнение DDRB - это первая команда в Си-листинге.
Но при выполнении по F5 студия честно останавливается на присвоении PORTB.

Сергей Серебряков, попробуйте запустить дебаг (F11) и пошагово выполнить (F10/F11) вашу программу.

И да, проверьте, какие у вас настройки оптимизации и дебага.
У меня с вот такими работает:
Изображение


Вложения:
dd.jpg [60.28 KiB]
Скачиваний: 846
d.jpg [140.4 KiB]
Скачиваний: 177

_________________
ИзображениеИзображение
Изображение
 
Telegram               Лучшая благодарность ->
[+]
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: AVR studio в вопросах и ответах
СообщениеДобавлено: Сб ноя 20, 2021 22:28:11 
Поставщик валерьянки для Кота

Карма: 16
Рейтинг сообщений: 329
Зарегистрирован: Вт ноя 27, 2007 11:32:06
Сообщений: 2222
Откуда: Tashkent
Рейтинг сообщения: 0
В 4 студии была функция Up-Download memory чтобы в процессе отладки можно было прочитать или записать память из файла. В 7-й студии не нашёл. Как это там называется или кто как решает такой вопрос?


Вложения:
up-download memory.jpg [40.25 KiB]
Скачиваний: 126
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: AVR studio в вопросах и ответах
СообщениеДобавлено: Вс фев 20, 2022 21:42:57 
Друг Кота
Аватар пользователя

Карма: 27
Рейтинг сообщений: 33
Зарегистрирован: Пн ноя 22, 2010 00:57:15
Сообщений: 6296
Откуда: Ukraine
Рейтинг сообщения: 0
как в 7 студии, при помощи комбинации клавиш, закоментировать кусок кода ?

_________________
Tell Me The Truth


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: AVR studio в вопросах и ответах
СообщениеДобавлено: Пн фев 21, 2022 01:20:53 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 63
Рейтинг сообщений: 536
Зарегистрирован: Чт июл 28, 2016 07:58:37
Сообщений: 1925
Откуда: Kyiv, UA
Рейтинг сообщения: 0
FreshMan, выделяете текст.
[/] на доп.клавиатуре коментит построчными // комментариями.
[*] на доп. клавиатуре комментит выделенное блочным /* комментарием */
Но если не дунуть текст не выделять - ничего не получится.

_________________
ИзображениеИзображение
Изображение
 
Telegram               Лучшая благодарность ->
[+]


Вернуться наверх
 
Выбираем схему BMS для заряда литий-железофосфатных (LiFePO4) аккумуляторов

Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: AVR studio в вопросах и ответах
СообщениеДобавлено: Пн фев 21, 2022 10:46:21 
Друг Кота
Аватар пользователя

Карма: 27
Рейтинг сообщений: 33
Зарегистрирован: Пн ноя 22, 2010 00:57:15
Сообщений: 6296
Откуда: Ukraine
Рейтинг сообщения: 0
GoldenAndy, да вот не работает
выделил текст, нажал / и текст удалился
в эклипсе эта фича работает через ctrl+/, а здесь выходит ее нет ?

_________________
Tell Me The Truth


Вернуться наверх
 
Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)

Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: AVR studio в вопросах и ответах
СообщениеДобавлено: Пн фев 21, 2022 12:01:47 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 63
Рейтинг сообщений: 536
Зарегистрирован: Чт июл 28, 2016 07:58:37
Сообщений: 1925
Откуда: Kyiv, UA
Рейтинг сообщения: 0
Работает....
Изображение

* и / - на нумпаде!


Вложения:
GIF.gif [96.58 KiB]
Скачиваний: 642

_________________
ИзображениеИзображение
Изображение
 
Telegram               Лучшая благодарность ->
[+]
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: AVR studio в вопросах и ответах
СообщениеДобавлено: Пн фев 21, 2022 15:58:25 
Друг Кота
Аватар пользователя

Карма: 27
Рейтинг сообщений: 33
Зарегистрирован: Пн ноя 22, 2010 00:57:15
Сообщений: 6296
Откуда: Ukraine
Рейтинг сообщения: 0
GoldenAndy, прям сказка какая то
почему же у меня не получается ?
может версии у нас разные или нужно выставить доп. галочки ?
Изображение

_________________
Tell Me The Truth


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: AVR studio в вопросах и ответах
СообщениеДобавлено: Пн фев 21, 2022 16:56:08 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 63
Рейтинг сообщений: 536
Зарегистрирован: Чт июл 28, 2016 07:58:37
Сообщений: 1925
Откуда: Kyiv, UA
Рейтинг сообщения: 0
FreshMan, не знаю.
Я это не настраивал. Просто как то тапнул по нумпаду - а оно надчало комментить. Понравилось.
Атмел Студия 7.0.634

_________________
ИзображениеИзображение
Изображение
 
Telegram               Лучшая благодарность ->
[+]


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: AVR studio в вопросах и ответах
СообщениеДобавлено: Пт мар 11, 2022 00:07:34 
Открыл глаза

Зарегистрирован: Ср янв 04, 2017 14:32:28
Сообщений: 46
Рейтинг сообщения: 0
Котаны, всем привет.

Во время отладки вывожу в окне Output некоторые переменные в прерываниях. Для этого настраиваю Action в точках останова. Но мне также дополнительно требуется выводить, сколько натикало в Cycle Counter в каждом прерывании:

Изображение

Перерыл все - не нашел (а может плохо искал). Единственное, в Visual Studio 2022 для точек останова есть функция $TICK
https://docs.microsoft.com/en-us/visual ... racepoints
Оказывается, она работает и для Microchip Studio, хотя ее нет в списке поддерживаемых функций, но, как я понял, выводит тики процессора машины, а не МК.

Может, есть обходной вариант или костыль?

Спасибо.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: AVR studio в вопросах и ответах
СообщениеДобавлено: Пт апр 29, 2022 22:22:13 
Прорезались зубы

Карма: -5
Рейтинг сообщений: -18
Зарегистрирован: Ср янв 11, 2012 11:55:51
Сообщений: 216
Рейтинг сообщения: 0
Доброго всем. Наверняка такой вопрос задавался, но поиском не нашел. Может ли такое быть, что Студия при оптимизации кода, заменяет 16 битную переменную на 8 битную? И как с этим бороться? переменная объявлена как uint16_t, присвоено значение 1162, декрементом должна добежать до нуля, но в Протеусе четко видно, что добегает до 907 и потом сразу падает в ноль :(


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: AVR studio в вопросах и ответах
СообщениеДобавлено: Пт апр 29, 2022 22:32:44 
Сверлит текстолит когтями

Карма: 20
Рейтинг сообщений: 296
Зарегистрирован: Сб май 05, 2012 20:24:52
Сообщений: 1226
Откуда: KN34PC, Болгария
Рейтинг сообщения: 0
Сомневайтесь в этом утверждении (вполне вероятно, что другое), но поставьте volatile для этого случая и попробуйте.

через переводчик:
Цитата:
Ключевое слово volatile предназначено для предотвращения применения компилятором каких-либо оптимизаций к объектам, которые могут изменяться таким образом, который не может быть определен компилятором.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: AVR studio в вопросах и ответах
СообщениеДобавлено: Пт апр 29, 2022 22:35:34 
Прорезались зубы

Карма: -5
Рейтинг сообщений: -18
Зарегистрирован: Ср янв 11, 2012 11:55:51
Сообщений: 216
Рейтинг сообщения: 0
да volatile она с рождения. не помогает (


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: AVR studio в вопросах и ответах
СообщениеДобавлено: Пт апр 29, 2022 22:38:28 
Сверлит текстолит когтями

Карма: 20
Рейтинг сообщений: 296
Зарегистрирован: Сб май 05, 2012 20:24:52
Сообщений: 1226
Откуда: KN34PC, Болгария
Рейтинг сообщения: 0
Наверное тогда другой случай. Дайте кусок кода (чтоб в темной комнате не гадать ... :) )


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: AVR studio в вопросах и ответах
СообщениеДобавлено: Сб апр 30, 2022 00:07:03 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 63
Рейтинг сообщений: 536
Зарегистрирован: Чт июл 28, 2016 07:58:37
Сообщений: 1925
Откуда: Kyiv, UA
Рейтинг сообщения: 0
Land, запустите на выполнение в симуляторе студии. поставте бряк в проблемном месте и покажите нам сишный код и дизасм этого места.
ЗЫ. Возможно, дизасм вам даже без нас ответ даст, 16 бит там или 8.

_________________
ИзображениеИзображение
Изображение
 
Telegram               Лучшая благодарность ->
[+]


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: AVR studio в вопросах и ответах
СообщениеДобавлено: Сб апр 30, 2022 07:41:22 
Ум, честь и совесть. И скромность.
Аватар пользователя

Карма: 97
Рейтинг сообщений: 2058
Зарегистрирован: Чт дек 28, 2006 08:19:56
Сообщений: 18030
Откуда: Новочеркасск
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
проблема-то явно не в замене 16-бит на 8, 8-битная переменная не сможет до 900 добежать никак, только до 255.

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

Мой уютный бложик... заходите!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: AVR studio в вопросах и ответах
СообщениеДобавлено: Сб апр 30, 2022 12:22:00 
Прорезались зубы

Карма: -5
Рейтинг сообщений: -18
Зарегистрирован: Ср янв 11, 2012 11:55:51
Сообщений: 216
Рейтинг сообщения: 0
проблема-то явно не в замене 16-бит на 8, 8-битная переменная не сможет до 900 добежать никак, только до 255.

счет вниз идет. Декремент.
Вот тот кусок кода:
Код:
if(count_bite > 15)
         {
            TCCR0B = 0x00;
            TIFR0 |= (1<< OCF0A)|(1 << OCF0B);
            TCCR0A &= ~(1 << WGM01);
            OCR0A = 0x00;
            TIMSK0 = 0x00;   
            TCNT0 = 0x00;
            OCR0B = 0x25; // 500Hz 0x25 для тактов   
            TIMSK0 |= (1 << OCIE0B);   
            steps = STEP;   
            if(buffer == COMMAND_OPEN)
               {
                  if(PORTB_RD(RVRS)) PORTB_ON(INA); else PORTB_OFF(INA); // реверс включен или нет
                  PORTB |= 0x02; TCCR0B |= (1 << CS02)|(0<< CS01)|(1<< CS00); // EN1 ON, EN2 OFF
               } else
                  {   
                     if(buffer == COMMAND_CLOSE)
                        {
                           if(PORTB_RD(RVRS)) PORTB_OFF(INA); else PORTB_ON(INA); // реверс включен или нет
                           PORTB |= 0x04; TCCR0B |=(1 << CS02)|(0<< CS01)|(1<< CS00); // EN1 OFF, EN2 ON
                        } else steps = 0; // для перехода к сбросу
                  }
                  
            while (steps){} // висим в цикле пока не отщелкаются все шаги
            TCCR0B = 0x00;
            TIFR0 |= (1<< OCF0A)|(1 << OCF0B);
            TIMSK0 = 0x00;
            PORTB &= ~0x19; // ~(1 << INA)|(1 << EN1)|(1 << EN2)
            flag = RST;
         }

строка while (steps){} . В протеусе слежу за значением steps в окне
переменная steps глобальная volatile uint16_t steps = STEP; Ей присваивается значение STEP = 1162. В прерывании таймера step декрементируется:
Код:
ISR(TIM0_COMPB_vect)
{
   PORTB ^= (1 << EN1)|(1 << EN2);
   if(!i) {PORTB_XOR(INA); i = 2;} else;
   i--;
   --steps;
   TCNT0 = 0;
}

в дизасемблере присвоение значения выглядит так (1162 = 0x048A):
Код:
            steps = STEP;   
000000CD  LDI R20,0x8A      Load immediate
--- D:\FIRMWARE\ATMEL\Jalousie_NEW\Driver\Driver\Debug/.././main.c ----------
000000CE  LDI R21,0x04      Load immediate 
00000143  STS 0x0062,R21      Store direct to data space
00000145  STS 0x0061,R20      Store direct to data space

а декремент в прерывании уже так:
Код:
   --steps;
0000003F  LDS R24,0x0061      Load direct from data space
00000041  LDS R25,0x0062      Load direct from data space
00000043  SBIW R24,0x01      Subtract immediate from word
00000044  STS 0x0062,R25      Store direct to data space
00000046  STS 0x0061,R24      Store direct to data space

и, если я правильно понимаю, как-то так цикл while (steps){}
Код:
00000163  STS 0x0062,R1      Store direct to data space
00000165  STS 0x0061,R1      Store direct to data space
00000167  LDS R24,0x0061      Load direct from data space
00000169  LDS R25,0x0062      Load direct from data space
0000016B  OR R24,R25      Logical OR
0000016C  BRNE PC-0x05      Branch if not equal


вроде как и все правильно :dont_know: Может это глюк протеуса?
Только почему Студия последовательно два значения в один регистр пихает?
00000163 STS 0x0062,R1 Store direct to data space
00000165 STS 0x0061,R1 Store direct to data space
типа 16-ти разрядное значение загрузили:
Синтаксис: Операнды: Счётчик команд:
(i) STS k16, Rr 0 ≤ r ≤ 31, 0 ≤ k ≤ 65535 PC ← PC + 2

Добавлено after 1 hour 23 minutes 58 seconds:
Land, запустите на выполнение в симуляторе студии. поставте бряк в проблемном месте и покажите нам сишный код и дизасм этого места.
ЗЫ. Возможно, дизасм вам даже без нас ответ даст, 16 бит там или 8.

А в Студии все работает :shock: С 950 шагов до 890 прошел нормально. И кому верить? Протеусу или Студии?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: AVR studio в вопросах и ответах
СообщениеДобавлено: Сб апр 30, 2022 13:04:07 
Сверлит текстолит когтями

Карма: 20
Рейтинг сообщений: 296
Зарегистрирован: Сб май 05, 2012 20:24:52
Сообщений: 1226
Откуда: KN34PC, Болгария
Рейтинг сообщения: 0
На "живой конструкции" нельзя попробовать? Напр. светодиод привязан к флагу, или флаг -> к дисплея и т.н. А нет двух свободных пинов для флаг-контроля через модуль rx/tx и UART с визуализации к компу? Так эти туманные вопросы (цитат: "И кому верить? Протеусу или Студии?"), часто граничащие со слухами, легендами и т.п. непроверенные утверждения, то будут устранены. Или код разрабатываться только "на бумаге" (и на симуляторе)?

До сих пор обнаружил несколько несоответствий реакции кода при Proteus, но не против протестировать часть кода с его помощью. Но никогда: весь код, особенно с алгоритмами, связанными с отчетами о времени, прерывания и подобные.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: AVR studio в вопросах и ответах
СообщениеДобавлено: Сб апр 30, 2022 13:41:38 
Прорезались зубы

Карма: -5
Рейтинг сообщений: -18
Зарегистрирован: Ср янв 11, 2012 11:55:51
Сообщений: 216
Рейтинг сообщения: 0
veso74, можно конечно в железе посмотреть. Печаль в том, что собственно этот кусок в железе тестировался и все крутилось. Правда с меньшим числом шагов, может я и не заметил проблемы. А ног свободных нет, это в 13-й тиньке сидит. Ок, значит надо будет опять проводочки паять )


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: AVR studio в вопросах и ответах
СообщениеДобавлено: Сб апр 30, 2022 18:40:43 
Опытный кот
Аватар пользователя

Карма: -2
Рейтинг сообщений: -23
Зарегистрирован: Сб окт 22, 2016 17:33:32
Сообщений: 760
Откуда: кг
Рейтинг сообщения: 0
Код:
ISR(TIM0_COMPB_vect)
...
   --steps;
   TCNT0 = 0;
...

Наверное, так делать не стОит.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: AVR studio в вопросах и ответах
СообщениеДобавлено: Сб апр 30, 2022 19:38:03 
Встал на лапы
Аватар пользователя

Карма: 3
Рейтинг сообщений: 11
Зарегистрирован: Вт фев 21, 2012 20:42:26
Сообщений: 135
Откуда: Санкт-Петербург, Россия, Земля
Рейтинг сообщения: 0
Код:
00000163  STS 0x0062,R1      Store direct to data space
00000165  STS 0x0061,R1      Store direct to data space
00000167  LDS R24,0x0061      Load direct from data space
00000169  LDS R25,0x0062      Load direct from data space
0000016B  OR R24,R25      Logical OR
0000016C  BRNE PC-0x05      Branch if not equal


вроде как и все правильно :dont_know: Может это глюк протеуса?
Только почему Студия последовательно два значения в один регистр пихает?
00000163 STS 0x0062,R1 Store direct to data space
00000165 STS 0x0061,R1 Store direct to data space


В AVR GCC регистр R1 всегда содержит ноль. В функции компилятор не видит измений переменной steps и поэтому присваивает ей ноль, соответственно ваш цикл ожидания не отрабатывает. Добавьте volatile к определению переменной steps, это должно помочь. Другой подводный камень - прерывание может случиться между 00000167 и 00000169 и это тоже может привести к сбоям.


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 3134 ]     ... , , , 152, , , ...  

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 26


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

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y