Перейти к содержанию

Различается Работа В Симуляторе И В Реальной Схеме. Attiny2313A


Tokes

Рекомендуемые сообщения

Вот нет бы самому посмотреть! Ладно, вот кусок примера из ихней справки

boot_page_write (page); // Store buffer in flash page.

ну вот. а вот как написана эта или аналогичная функция. тупо вставка.

#define __boot_page_erase_normal(address)
(__extension__({
__asm__ __volatile__
(
"sts %0, %1\n\t"
"spm\n\t"
:
: "i" (_SFR_MEM_ADDR(__SPM_REG)),
"r" ((uint8_t)__BOOT_PAGE_ERASE),
"z" ((uint16_t)address)
);
}))

Изменено пользователем __alexander
Ссылка на комментарий
Поделиться на другие сайты

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

Ой загадят мне сейчас личку... :-D

ну вот. а вот как написана эта функция. тупо вставка.
Какая разница на каком языке реализована библиотечная функция, хоть на бейсике! Главное, что в пользовательском коде использовать ассемблерные вставки не обязательно.

Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз.

Часть моих наработок.

Ссылка на комментарий
Поделиться на другие сайты

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

ну вот. а вот как написана эта функция. тупо вставка.
Какая разница на каком языке реализована библиотечная функция, хоть на бейсике! Главное, что в пользовательском коде использовать ассемблерные вставки не обязательно.

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

зы. о, гляжу вы на изи зерегились. )

Изменено пользователем __alexander
Ссылка на комментарий
Поделиться на другие сайты

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

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

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Вот именно - написать можно. Как это реализовано внутри библиотеки - никого не волнует, как и подробности реализации. Вообще-то там половина функций - макросы или ассемблерные вставки, те же cli()/sei(). Или Вы считаете, что на Си и с прерываниями работать нельзя?

А на изи много полезных статей, хотя форум менее живой, чем этот.

Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз.

Часть моих наработок.

Ссылка на комментарий
Поделиться на другие сайты

Вот именно - написать можно. Как это реализовано внутри библиотеки - никого не волнует, как и подробности реализации. Вообще-то там половина функций - макросы или ассемблерные вставки, те же cli()/sei(). Или Вы считаете, что на Си и с прерываниями работать нельзя?

"Там" это где? Я ничего не считаю, я говорю о том, что если отбросить ставку на быстродействие и прочие плюсы асма, то нет такой программы, которую нельзя написать на голых сях, кроме бута.

Ссылка на комментарий
Поделиться на другие сайты

"Там" - в библиотеках Атмела. Почему Вы разворачиваете функцию boot_page_write (page); но не разворачиваете cli()?

Поэтому я и говорю, что бут тоже можно написать на Си.

Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз.

Часть моих наработок.

Ссылка на комментарий
Поделиться на другие сайты

а я и не пишу cli(), я пишу __disable_interrupt и мне ее компилятор в листинге заменяет просто на асмовскую CLI.

понятно, если создать функцию и напихать туда асм.вставок и выполнить, то можно с гордостью заявить, что асм не использовался! )

Ссылка на комментарий
Поделиться на другие сайты

Какая разница как назвать функцию, посмотрите ее код! Наверняка ведь либо вшита в компилятор, либо asm("cli");

Если покажете в приведенном мной коде ассемблерную вставку, соглашусь. Потому что, повторяю еще раз, не важно на чем написаны библиотечные функции. Фраза "нет такой программы, которую нельзя написать на голых сях, кроме бута." подразумевает, что тот, кто пишет конечную прошивку (не разработчик стандартных библиотек или там компилятора, а, например, Вы или я) обязан использовать ассемблерные вставки.

Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз.

Часть моих наработок.

Ссылка на комментарий
Поделиться на другие сайты

Из асма не знаю ни одной команды!

При этом все у меня пишется и работает - что я делаю не так?

Очень стыдно за человека, который преподаёт уроки по программированию и пишет подобные фразы...

kobraz, Вас же читают начинающие и учащиеся. Нельзя им говорить подобные вещи :)

Всегда нужно знать свой компилятор и во что он разворачивает код.

Компилятор для того и нужен что бы написанное рукой перевести в понятный для машины код! Человеку знать во что он его перевел не нужно!

На данный момент я вижу только что знания асма влияет только на дину мерения письками на форуме.

В практическом программировани микроконтроллеров на С - необходимости знания асма я не вижу! Это моя окончательная точка зрения!

По поводу что 6 студия тормозит....

У меня современный компьютер - у меня не тормозит! Опять же - что я делаю не так? Иду в ногу со временем? Использую современную технику и более продуктивные языки программирования?

В этом моя ошибка?

Я должен выкинуть свой комп поставить себе какоето 10-ти летнее говно с виндовс ХП - взять слабый камень и красноглазить на асме в 3-тьей студии потому что у меня тормозит и я потеряю половину быстродействия и ресурсов камня если буду писать код на Сях?

От таких заявлений господа пропадает желание вобще что либо делать... Сидите тут - умничаете о высоких моральных традициях - нужно ли знать асм или нет! А я вот не сижу - а делаю! Кроме того помогаю тем же новичкам войти в мир МК. ДА - я не знаю асма и даже не собираюсь его никогда учить... Но тем не менее мои устройства работают, задачи выполняются, процесс идет.

За сим низко кланяюсь отцам русской демократии владеющих тайной силой Асма!

коплю на мечту - Днепр К750

Ссылка на комментарий
Поделиться на другие сайты

Тю.. нервный какой-то. Никто вам ничего не указывал, кроме одного - не спорте там где "плывете"!

Изменено пользователем korsaj
Ссылка на комментарий
Поделиться на другие сайты

У меня современный компьютер - у меня не тормозит! Опять же - что я делаю не так? Иду в ногу со временем? Использую современную технику и более продуктивные языки программирования?
Во-во, решение всех проблем. Купить железо помощнее и плевать на оптимизацию. Вы уверены, что новая Студия "более продуктивна"?
Но тем не менее мои устройства работают, задачи выполняются, процесс идет.
Я там чуть раньше привел два куска кода. Может, гуру соизволит на них взглянуть?
что я делаю не так?
Да тут этому уже вторая страница посвящена.
Компилятор для того и нужен что бы написанное рукой перевести в понятный для машины код! Человеку знать во что он его перевел не нужно!
Конечно! А когда кончится память контроллера - взять более мощный. Лучше сразу STM! Или x86! И пофигу, что в корпус не влезает, жрет сотни тока и стоит вдвое дороже. Главное, что господину разработчику перенапрягаться не пришлось.

korsaj где же Ваша версия ошибок? Я тут жду, когда в личку отпишетесь, или хотя бы в эту тему. Стыдно должно быть! :-D

Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз.

Часть моих наработок.

Ссылка на комментарий
Поделиться на другие сайты

korsaj где же Ваша версия ошибок? Я тут жду, когда в личку отпишетесь, или хотя бы в эту тему. Стыдно должно быть! :-D

Дак мне вроде не нужно было их расписывать, хотя я себя на 100% считаю новичком.

Ссылка на комментарий
Поделиться на другие сайты

Чего ж тогда спрашивали можно ли отвечать, если отвечать и не собирались?!

Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз.

Часть моих наработок.

Ссылка на комментарий
Поделиться на другие сайты

ну за принтф я говорить не буду, так как таким фуфлом не пользуюсь. а вот на первый вопрос хотел бы ответ услышать... если там, конечно, не про оптимизации всякие речь будет идти.

Изменено пользователем __alexander
Ссылка на комментарий
Поделиться на другие сайты

Нет, там не с оптимизацией проблема, там именно что ошибка, причем труднообнаружимая, так как шанс ее возникновения где-то 1 к 1000000, а то и меньше. Вот второе и правда ближе к оптимизации. Ну и насчет "фуфла" зря Вы так, иногда может оказаться полезным. Хотя в большинстве случаев лучше свою реализацию написать.

korsaj кстати правильно ответил.

Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз.

Часть моих наработок.

Ссылка на комментарий
Поделиться на другие сайты

Тоже удалено. Ответ на 1 вопрос был правильный

Изменено пользователем COKPOWEHEU

Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз.

Часть моих наработок.

Ссылка на комментарий
Поделиться на другие сайты

Нет, это простенькие примеры. Согласитесь, в "классическом" Си таких проблем не возникает, а вот ассемблерщики или другие более-менее опытные разработчики с ними вполне знакомы.

Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз.

Часть моих наработок.

Ссылка на комментарий
Поделиться на другие сайты

Так может соберем коллекцию, чтобы потом задавать фанатам ЯВУ интересные вопросы?)

Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз.

Часть моих наработок.

Ссылка на комментарий
Поделиться на другие сайты

kobraz, не ожидал от Вас такой реакции :mellow: Никто с Вами, кстати, пиписьками мериться и не собирался. Не стоит так реагировать на критику, показывая, что Ваше мнение единственно правильное.

Я свой пост оставлял без всяких личностей. И если Вы в нём это увидели, то мне грустно за Вас.

Извините, если что не так...

Так может соберем коллекцию, чтобы потом задавать фанатам ЯВУ интересные вопросы?)

Неплохая идея, создавайте тему...
Ссылка на комментарий
Поделиться на другие сайты

И вот из-за этого весь сыр-бор. :)

main:
sbic PINB,4
rjmp green
red:
sbi PORTB,3
cbi PORTB,2
rjmp main
green:
cbi PORTB,3
sbi PORTB,2
rjmp main

А можно еще короче. Но это не для ЛЕГО-строителей.

Ссылка на комментарий
Поделиться на другие сайты

Неее ! Никаких личностей. То я ваши слова взял просто как удачный пример не более! :)

В целом - мне глубоко всеравно кто там и что обо мне думает и как считает. Я выссказал свою точку зрения относительно данного вопроса.

Если она кого-то не устраивает - это не мои проблемы.

Понимание АСМА безусловно будет плюсом - но знать его что бы работать с МК не обязательно. Я пока не встречал ситуаций которые не решаются на сях.

А если найду значит код на сях был не верен.

Я езжу на автомобиле - но при етом нифига не разбираюсь в подкапотной. И что ? Уметь разбираться = будет плюсом. Но я и без етого езжу туда куда мне надо не испытывая проблем. И много еще можно привести примеров - но они до одного места! Ибо если уж кто выучил асм - всех остальных щитает недоучками.

Точно такая же ситуация например в линуксах - все гентушники поголовно щитают остальных линуксоидов ламерами.... Все юниксоиды ламерами щитают всех линуксоидов....

Но практика показывает что есть задача требующая реализации - и если того не требует ТЗ то ты сделаешь ее по максимально простым способом что бы быстрее сдать проект и перейти к следующему. Вот и вся логика.

кроме того я попросил уже трижды показать мне пример когда С не решает вопрос в сегменте средней сложности устройства и требуется АСМ! Овета не увидел и не увижу наверное...

Изменено пользователем kobraz

коплю на мечту - Днепр К750

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Сообщения

    • @Gomerchik а вы контролировали как меняется уровень сигнала на А1 ардуины?
    • Спасибо за совет. Автором данного проекта я не являюсь, мне нужно было воссоздать уличный датчик для метеостанции взамен пропавшего(( Из разного найденного в интернете этот проект работает с моей станцией Орегон (спасибо автору). В понедельник попробую последовать Вашему совету. Но все равно куча непоняток  как блин это работает)) Если дело в неправильной отправки команды, то как на это влияет подключение датчика температуры? Если совсем не подключать таймер, то передача идет один раз (как и прописано в программе), станция принимает и отображает, но минут через сколько-то естественно станция уже ни чего не показывает, но с таймером питание полностью не пропадает с ардуинки, но передача сигнала каким-то образом работает по таймеру.  В моем понимании данная команда подается один раз потому, что таймер должен отключать питание МК после передачи сигнала и каждые 43 сек снова подавать питание (так того требует станция).  Ардуино передает показания температуры отключается полностью и 43 секунды мк не работает.  Сейчас у меня питание пока сделано на подпитке от солнечной батареи, но пару пасмурных дней и аккумулятор съедается до отключения(
    • thickman Так и сделаю. Вытащу из бу БП.  Буду знать, как отличить. Благодарю. Заменил транзисторы на IRFB20N50K. Картина стала, совсем другой.  Похоже трудность не в драйвере, на момент подвозбуда, переходные процессы, в нем, завершены. Увеличил затворные резисторы до 50ом, стало немного лучше.  Не понятно, почему верхний ключ греется несколько сильнее. Возможно, стоит посмотреть ток в коллекторе.  Снабберные емкости временно удалил, изменений не произошло.  Замена ТГР на другой, на кольце MSTN-16A-TH, так же, результата не принесла.   irfb20n50k.pdf
    • А что нить из ассортимента активных щупов производства СССР..))
    • Типа такого: https://aliexpress.ru/item/2044864227.html?sku_id=58855020183
    • поняли неправильно. У ТЛ494 никакой защиты нет, усилители ошибки не защита, они не должны приводить к ложным импульсам. Причем тут "микруха" ?  надо нагружать ВСЁ. До сих пор вообще непонятно о каком ИИП идет речь и сколько у него каналов. Бесполезно схему рисовать? - Помогать так бесполезно. Картина кривая по самое "немогу" продолжаются картинки, снятые через ногу и без цены деления.
×
×
  • Создать...