Обсуждаем контроллеры компании Atmel.
Ответить

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

Пн май 29, 2017 09:52:37

Доброго дня всем! Ну умоляю уж очень хочу учиться кодить avr на Си. И следующая проблема пишу, программу, рандомное мигание портами. В протеусе работает, а вот в железе молчит. Плата wave share. Openm128. Скажите что не так...
download/file.php?mode=view&id=286244
Вложения
pixlr_20170529070600499_20170529110135832.jpg
(120.26 KiB) Скачиваний: 829

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

Сб июн 17, 2017 08:11:56

появилась проблема. Никогда раньше не пользовался плавающей точкой, но настал момент, когда избежать этого не удается. Итак, код примерно такой:

.
.
.

double magn_angle;
char str_buff[90];
.
.
.

int main(void)
{
.
.
.
magn_angle = atan(mag_hx/mag_hy);
sprintf(str_buff, " %f %d", magn_angle, -23);
ili9341_draw_string(176, 210, WHITE, NAVY, str_buff, &CourierNew16x20[0][0], 16, 20);
.
.
.
}

в результате на дисплее получаю результат:

? -23

то есть в десятичном формате выводится правильно, а вместо вещественного числа получаю знак вопроса. Что ж за бабуйня такая?
Может кто-нибудь подскажет, в чем проблема?

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

Сб июн 17, 2017 09:08:57

Since the full implementation of all the mentioned features becomes fairly large, three different flavours of vfprintf() can be selected using linker options. The default vfprintf() implements all the mentioned functionality except floating point conversions. A minimized version of vfprintf() is available that only implements the very basic integer and string conversion facilities, but only the # additional option can be specified using conversion flags (these flags are parsed correctly from the format specification, but then simply ignored). This version can be requested using the following compiler options:
Код:
   -Wl,-u,vfprintf -lprintf_min

If the full functionality including the floating point conversions is required, the following options should be used:
Код:
   -Wl,-u,vfprintf -lprintf_flt -lm
из документации по avr-libc. Вы учитываете что дефолтная реализация stdio не поддерживает дробные числа?

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

Сб июн 17, 2017 16:00:02

Вы учитываете что дефолтная реализация stdio не поддерживает дробные числа?

разумеется не учитываю, иначе, откуда бы у меня возник вопрос? Хотя, я подозревал, что либо подобное.

итак, проект у меня в атмел студио 6.2 Как мне победить эту бабуйню?

нашел, куда эти опции вставить, все заработало. Огромное спасибо COKPOWEHEU :)

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

Ср июн 21, 2017 13:43:30

Господа, помогите правильно установить (или настроить) Atmel Studio 7

Компьютер: Windows 8.1 Корпоративная (с полными правами), Core i3 2,10 Ghz, 8 Gb RAM

Исходник Atmel Studio 7 (as-installer-7.0.1417-web) скачал с оф сайта
При установке просит установить обновление Windows KB2978092, но скачав данное обновление мой Windows говорит: "Обновление не применимо к Вашему компьютеру" (если я правильно понимаю, то оно для Windows 7)
ОК
Продолжить установку. Studio дает возможность (фото прикрепляю - Фото1
Фото1.jpg
(173.22 KiB) Скачиваний: 529

Устанавливается без ошибок
Запускаем
Создаем новый проект (GCC C Executable Project) далее выбираем ATtiny 2313
Studio создала пустой проект
Нажимаем Build GccApplication2
И получаем следующий error: recipe for target 'main.o' failed (Фото2
Фото2.jpg
(219.16 KiB) Скачиваний: 604


Перерыл уже весь интернет, сбился с ног...
Подскажите, что я делаю не так?!

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

Вс июл 02, 2017 20:54:58

Здравствуйте.
Чтобы отладчик Atmel Studio 4.18 начал реагировать на прерывания что надо?
Предложенные аналогичные варианты для 5-6 студии мне не помогли, "interrupts while" или аналогичное пока не нашел.
(программка откомпелированна и в камне работает, как-бы ошибки исключаю)

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

Вс июл 02, 2017 21:09:28

Vaha писал(а):как-бы ошибки исключаю
Это зря конечно :)

На счет 4ого уже не помню, собственно я там и проблем не помню. В 6 ом у меня реагирует на прерывания, если симуляция запущена в "RUN", а вот когда выполняешь по шагам, то игнорирует.

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

Пн июл 03, 2017 04:31:36

...ошибки исключаю)

Программу в студию.

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

Пн июл 03, 2017 11:34:41

Простенькая программка - крутим энкодер - считает счетчик: - влево на отнимание, в право на прибавление (или на оборот :), и это все безобразие отражается на ЛСД. (в камне работает) Хочу облегчить обработчик по "переполнению Т0" (encoder.asm)., вставил строки 86-88 - для возврата по "reti" в нужное место... и тут понеслось... (как обычно), - при отладке без возможности захода в прерывания - будет трудно отыскать "где собака была". У меня "Atmel Studio 4.18" - при отладке счетчик считает, флаги устанвливаются, а ухода в обработчик - нет. Может надо где-то пИтичку поставить?, как в предложенных вариантах для 5,6 версии.
Вложения
shim_&_LCD_3_s.rar
(21.89 KiB) Скачиваний: 262

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

Пн июл 03, 2017 12:08:07

Энкодер лучше опрашивать не по таймеру а по внешнему прерыванию от ноги.

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

Пн июл 03, 2017 12:50:55

Спасибо. Учту. А как на счет птички?

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

Пн июл 03, 2017 18:55:42

В моей 4.13 SP2 заходит.
Спасибо. Учту.

Красивый посыл. :) Браво.

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

Ср июл 05, 2017 19:37:50

Всем здрасьте.
Вопрос по "... Atmel Studio 4.18 начал реагировать на прерывания..." снимается.
После "издиавтельств" над студией, перед ее переустановкой (которую пока отложил), случилось чудо - начала отрабатывать прерывания. Что конкретно повлияло - сказать не могу, много разного было нажато, отжато, поставлено, снято., возможно испугалась переустановки :-).
Всем спасибо за участие.

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

Пн июл 24, 2017 21:12:37

Здравствуйте.
Помогите разобраться с кодом.
Написал программу в АВР - читаю из порта строки и пишу назад в порт. функция вывода строки работает Ок.
Функчия чтения тоже работает ок. Только одно НО: я ей в качестве аргумента передаю указатель на строку.
Предварительно указателю присваиваю адрес строки.
Внутри функции вывожу данные которые записал по адресу из этого указателя (проверяю себя) все ок.
Потом вывожу после чтения строку - в ней мусор. Второй вечер туплю. Помогите найти ошибку. Коды:

/*******************************************************************/
#define F_CPU 16000000UL
#include <avr/delay.h>
#include "USART_lib_atm328.h"

int main(void)
{
char str[255];
char *pstr[255];
SerialIni ();
SerialSendStringLn("Hi, it's a test of new serial library. Is it looks Ok?");
SerialSendString("input>>");

pstr[0]=&str[0];
while (1){
SerialReadString(pstr);
SerialSendString(str);
}
return 0;
}

/*******************************************************************/


void SerialReadString (char *ppstr[255]) {

char str[255];
int numOfDataR=0;
char tmpCh =' ';


while(tmpCh!=0x0D)
//Принемаем данные пока не придет возврат коретки.
{
tmpCh=SerialReadChar();
if (numOfDataR==255) {numOfDataR=0;};
str[numOfDataR++]=tmpCh;
}
*ppstr=str;
SerialSendStringLn(*ppstr); // проверка вывода. зесь все ок.
numOfDataR=0;
}

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

Вт июл 25, 2017 06:42:47

если вы думаете, что char *pstr[255] у вас является указателем на массив из 255 char-ов, то вы ошибаетесь: это массив из 255 указателей на char.

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

Чт июл 27, 2017 21:00:36

спасибо.

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

Пн авг 28, 2017 14:26:14

Авр студия 5. Пошаговая отладки. Иметься код:

Код:
#define F_CPU 8000000
#include <avr/io.h>
#include <util/delay.h>

int main(void)
{
   DDRD = 0xFF;
   PORTD = 0b00000000;
   while(1)
   {
      PORTD |= (1<<(PORTD0));
      _delay_ms(500);
      PORTD &= ~(1<<(PORTD0));
      _delay_ms(500);
   }
}


Я только начинающий, поэтому хочу в пошаговой отладке наблюдать состояние регистров D, но когда я дохожу до функции _delay_ms(500); то я в нее захожу и не могу выйти, как мне ее перепрыгнуть, или что бы не заходить во внутрь ее ? Спасибо.

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

Пн авг 28, 2017 15:22:52

Симуляция не в реальном времени, поэтому 500мс по факту значительно дольше.

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

Пн авг 28, 2017 16:38:40

Всех приветствую! Хочу собрать устройство http://radioded.ru/skhema-na-mikrokontr ... e-attiny85, там дан исходник (прикреплю снизу), установил студию, ну ничего не понимаю в ней, после CVavr, хотел бы попросить кого-нибудь о помощи скомпилировать с изменениями (рандомным воспроизведением файлов). Буду очень благодарен, можно в личку. Спасибо за внимание!
Вложения
src.zip
(112.62 KiB) Скачиваний: 313

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

Вс сен 24, 2017 14:45:51

Всем привет! При запуске Отладки в Atmel Studio 6.1 вылазит окно "Memory 1". Что это такое? Я так понимаю это структура памяти какая то?

Изображение
Ответить