Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 08.11.2011, 01:37  
alvadep
Почётный гражданин KAZUS.RU
 
Регистрация: 05.05.2011
Адрес: Харьков
Сообщений: 5,049
Сказал спасибо: 592
Сказали Спасибо 3,968 раз(а) в 1,826 сообщении(ях)
alvadep на пути к лучшему
По умолчанию Re: Помогите начинающему по ATmega8515

Сообщение от 7Fantomas7 Посмотреть сообщение
А если серъезно. То что хорошего в асемблере? За исключением специфических моментов. Так и в "С" вставки можно делать.
Сегодня Меги, а завтра ПИКи, после завтра АРМ или еще чего. И что каждый раз в асемблерах копаться. А "С" он и в африке "С". Лучше за день другой написать на "С" чем неделями ковыряться с асемблером, зная чего там камень делает. Лучше на 1-2$ дороже камень взять если уж так памяти или скорости не хватает.
Все Вы правильно говорите, безусловно, в Си проще и быстрей работать, но когда нужно выдержать определенный тайминг и выполнить при этом определенные операции, то на помощь приходит именно ассемблер. Простой пример. Стояла задача сделать цифровой фильтр, а точнее выровнять частотную характеристику датчика с минимальными аппаратными затратами. DSP скажете Вы? Нет, обошлись ATmega48, на которой получился не рекурсивный фильтр 60-го порядка в реальном времени с частотой выборки 2 кГц. На Си вряд ли это удалось бы. Экстрим, но тем не менее. Один раз помучаться, зато ощутимый выигрыш в себестоимости на потоке.
Реклама:
alvadep вне форума  
Сказали "Спасибо" alvadep
pinco (08.11.2011)
Непрочитано 08.11.2011, 05:04  
pinco
Гражданин KAZUS.RU
 
Регистрация: 04.04.2007
Сообщений: 941
Сказал спасибо: 571
Сказали Спасибо 113 раз(а) в 85 сообщении(ях)
pinco на пути к лучшему
По умолчанию Re: Помогите начинающему по ATmega8515

Полностью поддерживаю , к тому же не каждый день меняешь типы фирм и контроллеров как перчатки ,если ты конечно не ламер к примеру и не скачешь как козел "только по верхам" не вдаваясь в суть вещей , так что изученного один раз ассемблера для какой-то понравившейся линейки контроллеров хватает на ооо-о-о-очень долгий срок его использования .И про недельные ковыряния с ассемблером - полнейший бред - потому что это самый простой язык контроллеров - конретно проще чем "C" на порядок , и нет там никаких подводных бяк как в "С",и сделать можно на нем даже то что иногда на "C" невозможно - а все потому что в ассемблере - команда-исполнил- ,команда -исполнил, ... ну и так далее , все очень одношагово и просто , проще прямо некуда .Для изучения контроллеров идеально четко для понимания их работы .В "C" одна и та же команда может исполниться неизвестно как ,во многих вариантах и не факт что правильно именно так как задумал - это еще и зависит от самой среды где было написано, и порой приходится в оттранслированном из "C" уже в промежуточных его ассемблерных файлах выяснять как какая-то загогулина на "C" себя ведет - обращаю внимание : именно по полученному из него ассемблеру выясняются конкретные грабли написанного на "C" !!! Двойная потеря времени и сил , несмотря на "короткость" строчек проги на этом "C" . Так что мучения и непонятки как раз и начинаются при переходе на "C" ,и возможно точняк могут быть поиски багов и залипух и недельные потому что в "C" эти самые баги и залипухи в явном виде совсем не видны явно , по тексту все точно верно ,к примеру ,а есть мелкая логическая ошибочка , - компилятор в свою очередь тоже это не понял и наворочал кучу своего бестолкового ассемблерного кода какое смог (, и такое кстати по тактам конкретно еще и непросто отследить , по сравнению с написанным исходно на ассемблере ) ну так вот и ни хрена не работает , а сам текст-то верный был - а вот в ассемблере сразу явно видно где не ту команду к примеру написал ,по тактам очень четкая отслежка что где происходит и сколько их там не изменяется при том же тексте но при смене версии среды программирования , как в "C" , и лишних ассемблерных команд компилятор не вставляет по собственной инициативе , сам по себе , в исходный текст написанный на ассемблере - вообще никаких!! -то есть как сам ручками написал так это самое в точности и исполнится ,без лишних телодвижений и танцев с бубном ,факт - а все потому что исходный текст для компилятора уже и так сам по себе на ассемблере написан , то есть проще говоря нету искажения компилятором смысла написанного Вами на ассемблере , к тому же язык-то ассемблер ну самый простейший , отсюда - вывод : а зачем такой лишний геморрой обязательно упереться именно в "C" ? Ради африканистости "C" ? Ради текста на одну треть покороче ? На первых порах ваяния прог для контроллеров "C" не советую , зароетесь в разборках по самые уши и время потеряете и результат его работы в контроллерах далеко не очевиден и совсем не однозначен , зависит от конкретной версии среды , тучи используемых библиотек , которые к тому же сами по себе тоже должны быть безглючными , и так далее .Зачем такой геморрой воевания сразу со всем этим большим хозяйством одновременно , и именно на первых порах освоения контроллеров ? Научитесь сначала на простом и четком для понимания ассемблере все делать , если уж не хватит его или писать простой текст лень вконец замучает то перейдете потом на "C" -так к тому времени пока решите переходить на "C" сами контроллеры уже точно успеете изучить и научитесь ими элементарно управлять .А так получается что пытаетесь заполучить все и обязательно сразу - такого как известно не бывает ,либо все но понемногу , либо если все сразу то возможно получится, но на самом деле мало ,или почти ничего - то есть программер ламер в переводе , ну и еще раз спрашиваю оно Вам это надо если собрались именно основательно изучить понравившийся контроллер ? Вот как-то так мое мнение насчет этого дела познавания контроллеров .
__________________
Короче асма кода нет !

Последний раз редактировалось pinco; 08.11.2011 в 06:19.
pinco вне форума  
Непрочитано 08.11.2011, 10:02  
ut1wpr
Почётный гражданин KAZUS.RU
 
Аватар для ut1wpr
 
Регистрация: 19.08.2006
Адрес: Львов
Сообщений: 1,616
Сказал спасибо: 65
Сказали Спасибо 315 раз(а) в 264 сообщении(ях)
ut1wpr на пути к лучшему
По умолчанию Re: Помогите начинающему по ATmega8515

Сообщение от alvadep Посмотреть сообщение
Все Вы правильно говорите, безусловно, в Си проще и быстрей работать, но когда нужно выдержать определенный тайминг и выполнить при этом определенные операции, то на помощь приходит именно ассемблер. Простой пример. Стояла задача сделать цифровой фильтр, а точнее выровнять частотную характеристику датчика с минимальными аппаратными затратами. DSP скажете Вы? Нет, обошлись ATmega48, на которой получился не рекурсивный фильтр 60-го порядка в реальном времени с частотой выборки 2 кГц. На Си вряд ли это удалось бы. Экстрим, но тем не менее. Один раз помучаться, зато ощутимый выигрыш в себестоимости на потоке.
И насколько часто возникают подобные задачи? Ведь в зависимости от их количества можно пересмотреть вопрос о выборе типа МК. Ваш пример показывает "экстремальные" возможности, а речь идет о массовости в сериях не изготовления, а сериях заказов. И тут выигрыш во времени разработки может оказаться решающим. Да вы сами не хуже остальных это понимаете.
ut1wpr вне форума  
Непрочитано 08.11.2011, 10:57  
alvadep
Почётный гражданин KAZUS.RU
 
Регистрация: 05.05.2011
Адрес: Харьков
Сообщений: 5,049
Сказал спасибо: 592
Сказали Спасибо 3,968 раз(а) в 1,826 сообщении(ях)
alvadep на пути к лучшему
По умолчанию Re: Помогите начинающему по ATmega8515

Сообщение от ut1wpr Посмотреть сообщение
И насколько часто возникают подобные задачи? Ведь в зависимости от их количества можно пересмотреть вопрос о выборе типа МК. Ваш пример показывает "экстремальные" возможности, а речь идет о массовости в сериях не изготовления, а сериях заказов. И тут выигрыш во времени разработки может оказаться решающим. Да вы сами не хуже остальных это понимаете.
Не часто, но возникают. Я не предлагаю ”снести винду и работать в DOSе”. Да, пример экстремального использования МК, но для освоения конкретного процессора начинать надо с ассемблера. Опять простой пример, тема “АЦП anmega168”. Если бы человек хоть раз написал программу на ассемблере, то не возникало бы вопросов, почему работает на одном процессоре и не работает на другом. Он бы знал, как получить напряжение, если есть цифровой код с АЦП, а соответственно понимал бы, почему получается ерунда, когда на входе напряжение больше чем опора. А так лучшие умы форума искали, где же он облажался в Си.
По мере освоения ассемблера придет опыт использования МК. В дальнейшем он перейдет на Си, а может и нет, но знание как работает процессор на машинном уровне, ну не как не повредит, а скорее наоборот.
alvadep вне форума  
Непрочитано 08.11.2011, 13:23  
makakus
Почётный гражданин KAZUS.RU
 
Регистрация: 08.10.2007
Сообщений: 2,760
Сказал спасибо: 1,105
Сказали Спасибо 1,037 раз(а) в 569 сообщении(ях)
makakus на пути к лучшему
По умолчанию Re: Помогите начинающему по ATmega8515

Чёта вот только ДОС никак не отомрёт. Винде уже 18 лет считай, а например программы для станков все в ДОСе. Дураки? Нет - ДОС хорош как однозадачная среда где доступны все ресурсы и нет приостановок программы потому что системе вздумалось посвопиться.

Каждому овощу свой фрукт; ассемблер помогает изучить структуру аппаратуры контроллера чтобы да, не было потом дурацких вопросов. Он проще, а точнее аскетичнее. "как вывести число на печать?" - спрашивали мы, студенты, нашего преподавателя. "как хотите!" - отвечал он, имея в виду кучу способов. А мы не знали ни одного, нам бы хоть направление надо было указать. Напишите пресловутый "hello, world" на С и объясните кухарке, зачем проект, почему include и как это относится к регистрам контроллера. Говорят, там ещё без стека (а это кто?!) никак.

Начать лучше с ассемблера, если Вы эмбеддер и говорите "микросхема", а не программер, для которого минимальный объект одноплатный компьютер. И потом освоить С.

По поводу задач. Конечно, на ассемблере парсить меню гиморно. Но если ваш контроллер управляет парой шаговиков, измеряет несколько датчиков, поддерживает 1-ware и modbus, и ещё есть юзер с десятком кнопок и экран, который надо регенерировать, то тут лучше на ассембере. Что? "взять платку с АРМом, драйвер шаговиков с SPI отдельно, модуль монитора отдельно"? А на 32-ой меге слабо?

Последний раз редактировалось makakus; 08.11.2011 в 13:27.
makakus вне форума  
Непрочитано 09.11.2011, 00:21  
7Fantomas7
Почётный гражданин KAZUS.RU
 
Регистрация: 24.09.2007
Сообщений: 1,437
Сказал спасибо: 287
Сказали Спасибо 339 раз(а) в 202 сообщении(ях)
7Fantomas7 на пути к лучшему
По умолчанию Re: Помогите начинающему по ATmega8515

Когдато я стоял на распутье, "С" изучать или асемблер. Благодаря не без известному AVR123 начал изучать "С" и не разу не пожалел. Если кому то на тиньке12 хочется построить межгалактический синхрофазотрон то пущяй и играется асемблером. "С" вообщето наверное придумали юмористы с целью лишения сна и спокойствия асемблерщиков.
ТС рекомендую начинать с "С".
Спорить об преимуществах одного над другим считаю бесперспективным. Война брони и снаряда. На Казусе эта тема пережевана милион раз.
Только вот господа асемблерщики, откройте ТС правду. Правду в том что при переходе на другой камень например на ту же ATMega ему придется начать процес с начала.
7Fantomas7 вне форума  
Непрочитано 09.11.2011, 00:29  
7Fantomas7
Почётный гражданин KAZUS.RU
 
Регистрация: 24.09.2007
Сообщений: 1,437
Сказал спасибо: 287
Сказали Спасибо 339 раз(а) в 202 сообщении(ях)
7Fantomas7 на пути к лучшему
По умолчанию Re: Помогите начинающему по ATmega8515

А вот на сколько тупые инженеры в Siemens и других конторах. Они вообще не знают что есть асемблер и "С", они преступным образом делают програмные коды на LAD и FBD. О ужос. Скоро остановятся все ЧПУ, автоматические линии и т.д.. Они ж не на асемблере. Это произойдет ровно через год, еще Майя предсказали. Нужно срочно позвонить президенту США. Он лично и шаманы индейских племен всех бестолковых програмистов всего мира заставят изучить асемблер.
7Fantomas7 вне форума  
Непрочитано 09.11.2011, 00:44  
jump
Почётный гражданин KAZUS.RU
 
Регистрация: 20.06.2006
Адрес: Украина, Запорожье
Сообщений: 7,983
Сказал спасибо: 0
Сказали Спасибо 4,941 раз(а) в 2,370 сообщении(ях)
jump на пути к лучшему
По умолчанию Re: Помогите начинающему по ATmega8515

Сообщение от 7Fantomas7 Посмотреть сообщение
откройте ТС правду. Правду в том что при переходе на другой камень например на ту же ATMega ему придется начать процес с начала.
открываю правду - врете вы всё
какие усилия нужны при переходе с м8515 на ATMega? ответ - хрен целых, фиг десятых. может добавится АЦП или разнообразный ШИМ
возможно на ATХMega? да, нужно посидеть, но там архитектура другая, ее нужно понять, но ТС пока ATХMega пофиг
LAD и FBD вы смотрели внутри как выглядят? ужос, но не С
jump вне форума  
Непрочитано 09.11.2011, 05:44  
7Fantomas7
Почётный гражданин KAZUS.RU
 
Регистрация: 24.09.2007
Сообщений: 1,437
Сказал спасибо: 287
Сказали Спасибо 339 раз(а) в 202 сообщении(ях)
7Fantomas7 на пути к лучшему
По умолчанию Re: Помогите начинающему по ATmega8515

Ну вру так вру. То что мне нужно я и так знаю и никого переубеждать не собираюсь.
Цитата:
LAD и FBD вы смотрели внутри как выглядят?
Даже в страшном сне не собираюсь. Как то абсолютно фиолетово. Нужно чтоб контролер работал так как мне нужно, он так и работает, а что там в нутри пущяй любопытные и и смотрят.
7Fantomas7 вне форума  
Непрочитано 09.11.2011, 10:26  
jump
Почётный гражданин KAZUS.RU
 
Регистрация: 20.06.2006
Адрес: Украина, Запорожье
Сообщений: 7,983
Сказал спасибо: 0
Сказали Спасибо 4,941 раз(а) в 2,370 сообщении(ях)
jump на пути к лучшему
По умолчанию Re: Помогите начинающему по ATmega8515

7Fantomas7,
так чё сказать-то хотели? пофлудить захотелось?
jump вне форума  
 

Закладки
Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите начинающему (PIC16F84A). Slava-martyn Микроконтроллеры, АЦП, память и т.д 11 09.09.2010 21:55
помогите начинающему по WinAVR umkamaks Микроконтроллеры, АЦП, память и т.д 4 05.05.2010 21:01
Помогите начинающему! kolira Микроконтроллеры, АЦП, память и т.д 6 30.01.2010 15:22
Помогите советом начинающему eler Делимся опытом 64 11.09.2008 17:28
Помогите начинающему!!!! sma-etu Микроконтроллеры, АЦП, память и т.д 2 13.12.2006 18:31


Часовой пояс GMT +4, время: 11:22.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot