Форум программистов, компьютерный форум, киберфорум
Наши страницы
Микроконтроллеры Atmega AVR
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.65/97: Рейтинг темы: голосов - 97, средняя оценка - 4.65
Pojotit
0 / 0 / 0
Регистрация: 16.03.2012
Сообщений: 461
1

Вопрос к пишущим на asm в AVR Studio 4-5-6

04.08.2012, 13:48. Просмотров 17577. Ответов 22
Метки нет (Все метки)

Собственно хотелось бы услышать какая версия наименее глючная и удобная в этом ключе. Какие глюки при прогонке программы присутствуют в 6 версии?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.08.2012, 13:48
Ответы с готовыми решениями:

Не происходит возврат из подпрограммы (AVR Studio 4, Asm)
Доброго времени суток. Пишу мигающий светодиод на Avr ассемблере под Atmega16, среда AVR Studio 4. ...

Вычитание двухбайтных чисел в AtMega8535 на ASM (AVR Studio 4)
Составить программу вычитания двухбайтных чисел. Уменьшаемое содержится в регистровой паре R3:R2,...

AVR Studio (ASM). Поменять местами тетрады в данных
№16 Задание делается в AVR Studio Помогите, буду очень признателен, задание сделать надо к...

Обращение к регистрам через адреса (ASM, AVR Studio)
Здравствуйте, есть такой вопрос: к примеру у меня в SRAM хранятся реальные адреса регистров общего...

Прерывание по переполнению таймера-счетчика ATmega8535 (ASM, AVR Studio 4)
Система прерываний на примере прерывания по переполнению встроенного таймера-счётчика...

22
tyom
0 / 0 / 0
Регистрация: 21.08.2016
04.08.2012, 18:54 2
Тут как-то четверку называли самой устойчивой и свободной от глюков.
В шестерке 6.1843 сегодня столкнулся с "непониманием" команд sei и cli (из-под Си) и неумением менять по команде значения битов в портах, а я на неё надеялся :( -

... нашел через Гугл:
0
Pojotit
0 / 0 / 0
Регистрация: 16.03.2012
Сообщений: 461
04.08.2012, 20:08 3
Си пока меня не интересует, главно чтоб в асме всё было пучком. А то стояла 4-ая, всё было нормуль, пока AVRISP не приобрёл. Чёт лохонулся и неправильно попытался пристроить к студии его, снёс короче студию и поставил пока 5-ую. Вроде полёт нормальный, но вот думаю, может нет смысла привыкать к 5-ой и поставить уже 6-ую. Потому и интересуюсь, чё там с 6-ой при работе с чистым асмом.
0
ShodS
0 / 0 / 0
Регистрация: 01.02.2010
Сообщений: 2,011
04.08.2012, 23:17 4
А чего именно на асме???
Я вот тоже с асма не слазил лет 20, но сейчас взялся за С, и результаты впечатляют.
Дело пошло..... http://rodyokot.ru/forum/viewtopys.php? ... stort=2040
0
04.08.2012, 23:17
Pojotit
0 / 0 / 0
Регистрация: 16.03.2012
Сообщений: 461
05.08.2012, 00:16 5
Цитата Сообщение от ShodS
А чего именно на асме???
Я вот тоже с асма не слазил лет 20, но сейчас взялся за С, и результаты впечатляют.
Вопросик конечно не по теме, но с удовольствием отвечу...
Ну во первых нравится тотальный контроль над всем - регистрами, процессами, прерываниями и самое главное - временем, зануда наверное по работе, всё должно быть предельно чётко и ясно и всё делалось как я хочу, а не как придумает компилятор. Во вторых, задачи стоят сейчас и намечаются на будущее, где очень важно когда и какое действие делается с точностью до такта - в асме у меня очень не плохо это получается сделать, аж сам довольный как удав:) Ну многие могут возразить, что все это прекрасно делают на каком СИ и быстрее и удобней работать. Но как показала практика в моём случае, время написания кода, когда знаешь, что допустим замерил тут вот, вычислил то то, выдал туда то и т.д. занимает очень маленький процент при изобретении чего то хитренького и не важно пишешь ты на Си или асме. А львиную часть времени как раз занимает процесс изобретения как раз какого то алгоритма девайса, чего и как должно делатся, что главное, что второстепенно и т.д. Вот как то так:)
0
ShodS
0 / 0 / 0
Регистрация: 01.02.2010
Сообщений: 2,011
05.08.2012, 01:08 6
Цитата Сообщение от Pojotit
тотальный контроль над всем - регистрами, процессами, прерываниями и самое главное - временем, зануда наверное по работе, всё должно быть предельно чётко и ясно и всё делалось как я хочу, а не как придумает компилятор.
Согласен во всем! Значит я тоже зануда:)

Я сам балдею с асма, действительно полный контроль над всем. Пишу в 4-й студии. Глюков каких бы то ни было вообще не замечал, даже не представляю как это может выглядеть.....

Но на С посмотреть заставили 2 вещи:
1. Это то что все трендят про него, ну думаю ладно надо освоить. И если с асмом никогда проблем не было, то на С теперь одни вопросы.... (ссылочку наверное смотрели, закидал сишников вопросами).
2. Это легкость восприятия. Если на асме написать сложную программу, то через время надо достаточно долго по ней лазить чтобы сообразить чего и как я там делал. Вот вам примерчик недавней работы [30.48 Кб]

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

Но с другой стороны, у меня есть на асме проекты в которых используются скоростные прерывания от счетчика\таймера, с частотой 10кГц и выше, вот там конечно применение С под вопросом, но тем не менее я планирую совместить эти две несовместимые вещи, писать основную программу на С, а блок прерываний на асме..... Но это пока в планах, не знаю возможно ли это..... А пока вот делаю первые шаги на С.
0
Pojotit
0 / 0 / 0
Регистрация: 16.03.2012
Сообщений: 461
05.08.2012, 01:55 7
Цитата Сообщение от ShodS
Так вот через год, я буду смотреть на нее точно так же как вы сейчас (ну конечно я утрирую малость, но тем не менее.....)
...завидую Вам, я через неделю забываю что сам натворил, память никчемная, зато с логикой всё нормуль похоже:)
..да, есть такое дело, потому протоколирую всё до мельчайших подробностей - что и как получил, откуда взялось это, откудо то, как использовать в другом проекте и т.д. ..очь помогает, потому не ленюсь это делать и обезательно оставляю бумажный вариант хода мысли - спасает не то слово:)
Ну не смотря на такие нюансы, программа получается так как и было задумано - всё разложено, всё считается не мешая друг другу и само главно всё успевается, а скорости у меня в проекте текущем довольно высокие. И ещё, всё как то компактнинько получается- вот текущий проектик поместился в 4к, я больше чем уверен, что на Си он бы занял как минимум в 2 раза больше, что тоже очень радует:)
С Вашим проектиком пока не разбирался, сча просто нет времени, но обезаловкой проштудирую, тема PID меня в дальнейшем очень будет интересовать, спасибо.
Вот пример, как я оформляю, чтоб не забылось и в других проектах мог с лёгкостью использовать. Мой алгоритм обработки кнопок из текущего проекта. Забирает на свои нужды два регистра, легко встраивается, не использует внешние прерывания, может обслуживать 5 кнопок(если больше нужно, придётся добавить еще регистр). Кнопки могут вешатся на любой пин любого порта(не обезательно чтоб все висели на одном порту). Может кому пригодится, получился вродь совсем не плохо:

[59.86 Кб]
0
tyom
0 / 0 / 0
Регистрация: 21.08.2016
05.08.2012, 09:03 8
ShodSу спасибо за ссылку на Кота, почитать про Протеус мне будет полезно ...
0
dosykus
0 / 0 / 0
Регистрация: 22.09.2010
Сообщений: 393
05.08.2012, 11:17 9
Цитата Сообщение от Pojotit
Вот пример, как я оформляю,
А что ассемблер AVR не поддерживает символьные константы ???
Дабы избавится от "нигических чисел" ...

Цитата Сообщение от Tyom
почитать про Протеус мне будет полезно ...
http://kazus.ru/forums/showthread.php?t=13198
0
Pojotit
0 / 0 / 0
Регистрация: 16.03.2012
Сообщений: 461
05.08.2012, 12:03 10
Цитата Сообщение от dosykus
А что ассемблер AVR не поддерживает символьные константы ???
Дабы избавится от "нигических чисел" ...
...ну дык пока не удалось выработать свой понятный принцип их обзывания, чтоб глянул и сразу въехал к чему эта констатнта, толи пин, толи переменная, толи порт и т.д. ..ну потихоньку уже вырабатывается, проекты усложняются ни по дням, а по часам..:)
0
tyom
0 / 0 / 0
Регистрация: 21.08.2016
05.08.2012, 13:09 11
О, dosykus, спасибо, что напомнил, - я все это скачивал года полтора назад, но вылетело напрочь :(
0
Pojotit
0 / 0 / 0
Регистрация: 16.03.2012
Сообщений: 461
05.08.2012, 15:52 12
..вот чего мне в Студии не хватает, так простенького редактора структуры, а ещё лучше было бы, чтоб была такая фишка, чтобы по коду какая-нить приблуда сама показывала структуру кода..
...в 5-ой студии есть возможность открыть в отдельном окне картинку и даже редактировать ее, но как то всё через одно место - открывает её сразу в двух полуокошках сдублировано - видать фишка сырая очь и никчемная получилась..
0
KiysM13
0 / 0 / 0
Регистрация: 15.07.2012
Сообщений: 7
05.08.2012, 22:20 13
В 6 версии, скачанной месяца полтора назад не работал sei на ассемблере это сто процентов. Я спрашивал про эту неполадку здесь на форуме. Долго мучался, пока не спросил и оказалось, что это не я не догоняю а программа не доделана:) Поставил 5-ую версию. Дык там тоже не приятный недодел есть, некоторые флаги регистров после нажатия на них подсвечиваются только в следующем шаге при пошаговом режиме отладки
0
omokost
0 / 0 / 0
Регистрация: 24.12.2011
Сообщений: 2,753
05.08.2012, 22:30 14
Не надо гнаться за новыми версиями, получите головную боль. Я пишу в основном на ассемблере, самая стабильная версия студии на мой взгляд - 4.19.
0
Pojotit
0 / 0 / 0
Регистрация: 16.03.2012
Сообщений: 461
05.08.2012, 22:39 15
Цитата Сообщение от omokost
Не надо гнаться за новыми версиями, получите головную боль. Я пишу в основном на ассемблере, самая стабильная версия студии на мой взгляд - 4.19.
..да я как бы и не гнался, просто по любому нужно было 4-ую мне сносить, ну и воткнул поновее, посмотреть что да как.
Цитата Сообщение от KiysM13
Поставил 5-ую версию. Дык там тоже не приятный недодел есть, некоторые флаги регистров после нажатия на них подсвечиваются только в следующем шаге при пошаговом режиме отладки
...а более конкретно не помните случайно? ..сча попробовал пощёлкать флаги регистров таймеров, портов - ну вродь всё пучком, глюков не видно. Версия у меня 5.0.1223

Завтра думаю воткну 6-ую на другой комп и не спеша месецок какой посравниваю как какая версия работает...
0
KiysM13
0 / 0 / 0
Регистрация: 15.07.2012
Сообщений: 7
06.08.2012, 00:17 16
Цитата Сообщение от Pojotit
Цитата Сообщение от omokost
Не надо гнаться за новыми версиями, получите головную боль. Я пишу в основном на ассемблере, самая стабильная версия студии на мой взгляд - 4.19.
..да я как бы и не гнался, просто по любому нужно было 4-ую мне сносить, ну и воткнул поновее, посмотреть что да как.
Цитата Сообщение от KiysM13
Поставил 5-ую версию. Дык там тоже не приятный недодел есть, некоторые флаги регистров после нажатия на них подсвечиваются только в следующем шаге при пошаговом режиме отладки
...а более конкретно не помните случайно? ..сча попробовал пощёлкать флаги регистров таймеров, портов - ну вродь всё пучком, глюков не видно. Версия у меня 5.0.1223

Завтра думаю воткну 6-ую на другой комп и не спеша месецок какой посравниваю как какая версия работает...
По моему не работал RXC, но могу ошибаться. Посмотрю завтра на работе
0
Ryshom757
0 / 0 / 0
Регистрация: 09.08.2012
Сообщений: 4
12.08.2012, 12:14 17
Здравствуйте. Подскажите, пожалуйста, кто знаком с AVR STUDIO, есть ли у неё подключаемые библиотеки? На <dеlay> - ругается. Lib в папках AVR STUDIO - не нашёл.
0
omokost
0 / 0 / 0
Регистрация: 24.12.2011
Сообщений: 2,753
12.08.2012, 13:15 18
Цитата Сообщение от Ryshom757
Здравствуйте. Подскажите, пожалуйста, кто знаком с AVR STUDIO, есть ли у неё подключаемые библиотеки?
Библиотеки подключаются не к студии, а к языку программирования. Если не находит при наличии библиотеки, не указан путь к ней.
Не то сказал, библиотеки нужно подключить к студии как к IDE, прописав пути.
0
Ryshom757
0 / 0 / 0
Регистрация: 09.08.2012
Сообщений: 4
12.08.2012, 14:36 19
согласен, неверно задан вопрос. #include <delay.h> в cvavr проходит с а-studyo - нет. пытаюсь писать пргограмки не так давно. Прошу не судить сурово.
Спасибо за ответ, сударь!
0
ShodS
0 / 0 / 0
Регистрация: 01.02.2010
Сообщений: 2,011
12.08.2012, 14:51 20
Тут ващето про асм разговор, а ты как я понял про С говориш...

Попробуй так
#include <util/delay.h>
у меня нормально проходит.

использую потом так
_delay_us(xx);
_delay_ms(xx);
0
12.08.2012, 14:51
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.08.2012, 14:51

ATMega16 (AVR Studio, ASM) - Вывести результат на светодиоды по схеме
Ребят, помогите, пожалуйста, с решением задачи, не получается вывести результат на светодиоды по...

Вопрос новичка по AVR studio
Всем привет! Друзья, позвольте пару нубовских вопросов про адресацию памяти в AVR. Простенькая...

Инкрементация числа до переполнения на ASM в AVR Studio
1 задача. Ввести число. В цикле инкрементировать его до переполнения. Вывести в порт вывода...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru