Раз уж пошел разговор об отладке AVR Studio, то стоит упомянуть про ряд примочек для нее. Одной из самых интересных примочек является небольшая программка — HAPSim. Программка почти не известна, по крайней мере я лишь пару раз слышал упоминание о ней на форуме. Прога не слишком стабильна, иногда работает не так как надо, а еще ей не хватает многих эргономических моментов, но, надеюсь, в следующий версиях это будет исправлено.
Итак, что делает Hapsim. Он всего лишь подцепляется к студии и в момент выполнения эмуляции программы может симулировать работу разных устройств, прицепленных на порты. Из доступных устройств есть:
- Кнопки. Как обычные, прижимающие к земле, так и трехвыводные, которые могут поставить как высокий, так и низкий уровень в зависимости от состояния
- LCD на базе HD44780
- Терминал (USART или I2C) с возможностью осуществить трансфер на комповый COM порт (сам не проверял, но заявлено в мануале)
- Клавиатурная матрица 4х4
- Блок светодиодов
![]() |
Как работать с Hapsim?
А тут все гораздо проще чем кажется:
- Распаковать Hapsim куда-нибудь рядом с студией. Я прям в ее каталог сунул, в папочку.
- Запустить AVR Studio с нужным проектом.
- Запустить программку.
- Выбрать МК, не в пример протеусам всяким, тут поддерживается вся линейка AVR.
- Добавить в окно Hapsim нужные тебе девайсы (File -> New Control), а затем настроить их. Каждый появившийся в рабочем поле девайс получает кнопку на панели инструментов. Тыкнул на нее — вот тебе и настройка. Если блоков несколько, то настройка открывается для активного окна. Настройки тоже не мудреные — указать бит порта, да активный режим. Например, для светодиодов можно указать цвет, название, порт и бит порта, а также галочкой сделать его инверсным (например, как я люблю, зажигать нулем)
- Запустить в студии эмуляцию отладки и можно клацать по виртуальным кнопочкам и смотреть как ведет себя студия.
На
Как вовремя — мне нужно будет цепляться к COM-порту и отлаживать код, а схему еще не спаял. Спасибо!
когда avrstudio вживую будет работать в никсах, наступит щастье )
Хехехе пользуйтесь промышленным стандартом, а не поделками финского программиста :)
Ну, программист, допустим, не финский, а уже давно как международный. А тема с никсами — достаточно интересная. Если бы были порты авр студии и пикада под линухи, я бы винду со своей машины снёс бы, не задумываясь. И это при том, что сам совершенно не фанат линуха, и даже не особо в нём разбираюсь. Вот заодно бы разобрался, и новую технологию бы освоил. А машинка бы освоила свои 4 гига оперативки, а не 3.25, как сейчас. Да и работает оно… по-другому. на работе несколько серверов с линухом имеют аптайм по нескольку месяцев; отключаются только когда питание совсем кончится, и бесперебойник разрядится, или когда из них пыль выдуть надо.
А промышленный стандарт — это что? QNX? или DOS (рассказывали, что на спутниках летает)? А, вот ещё вспомнил: ISA (industrial standart architecture)
Да я бы тоже. Но этого нету и не придвидится (и сильно сомневаюсь что когда либо будет). Тут все дело в принципах организации линухов. Потому что коммерческие кады стоят дорого и выпускать их в сорцах западло. А в бинариках — так не на каждом линухе запустить их можно будет — вон их какой зоопарк развелся. Каждый красноглазик грезит свой дистрибутив поднять. Что сильно сужает целевую аудиторию.
Промышленный стандарт это винда :) Причем уже давно.
Кстати, у жены аптайм на ХП уже тоже несколько месяцев и это не сервер а обычный десктоп за которым она ежедневно сидит. Там даже антивируса нет. Было бы больше, но не получается. То свет отключат, то железку какую воткнуть надо.
всё же настоящий промышленный стандарт — qnx.
а винду юзают только потому, что «это бесплатно».
даже в моём космическом инсте на 2к народу.
мы же qnx пользуем исключительно по собственной инициативе ибо уж слишком много плюсов у него.
но если сильно прижмёт лицуха или придётся выходить на уровень великого буржуинства, то придётся.
адд. кстати, про мифы про «красноглазиков», «тысячь несовместимых дистрибутивов», «несовместимости библиотек» и, о-ужас!, «необходимости иметь исходные коды (будто для компиляции в винде они не нужны», живут не только в умах инженеров, которые лет пятнадцать назад слышали про первые попытки сообщества, но и у многих начальников, которые вообще «ни разу ногой и рылом» )
посмотри на примеры платных никсов, фрях, солярисов, хп. вспомни эпопею с опенофисом. при желании атмел смог бы, не раскрывая своих таинственных секретных исходных кодов, охватить весьма обширную аудиторию. и не надо говорить о том, что это принципиально невозможно — примеры эклипса и даже борланда свидетельствуют об обратном.
ну и напоследок забавное. на днях болтал по асе со знакомым нашим, но там, в америках. зашёл разговор про фотошопы и прочее. ну я и говорю — на работе юзают CS3, взял дистриб у местных админов. знакомый аж прослезился «какая у вас богатая фирма, вот мы сидим в линухах и юзаем gimp». как мне челу объяснить, что для нашей фырмы фотошоп не стоит по 2тыщи баксофф на каждое место, а скачан крякнутый бесплатно с торрентсов за обед?
Много ты видел станков на QNX? Или рабочих мест с кадами? Я вот ни разу. На досе видел, но это был антиквариат, на RT11 тоже видел, но это уже ископаемое. А вот все новые станки идут в связке ХП+ПЛК.
QNX это круто, конечно, но уж больно дорого стоит. Кстати, есть мысль поднять его на минимамке и пощупать. Какую версию лучше ставить?
Может это и возможно под линух гнать закрытое ПО в промышленных масштабах, но в любом случае стоит немалых трудов а еще хелпдеск потом накроется от шквала вопросов. Проще и дешевле вообще забить на этот сегмент как на нишевый.
много, но к сожалению больше за границей. у нас больше осрв2000 (
бесплатные версии кунухов или тестовые на месяц от swd — вполне юзабельные.
не считал, но думаю, что платные версии виндов со всеми необходимыми средами, будут не сильно дороже кунуха.
если уж очень жалко денег или «все всё понимают и юзают кряки», то ломаные qnx тоже имеются.
возьми какой-нить старый «нейтрино», мы их даже бесплатно заказывали на http://www.swd.ru/ когда-то.
плюс дам бизнес-установку — не бывает у них «ниш, на которые забивают». так у буржуинов дела не ведутся. даже «мелкопрог» в том направлении работает.
я частенько бывал на разных международных мероприятиях-конференциях. смотрел их презентации, как оно сделано, разговаривал с народом. и мне французы и немцы совершенно серьёзно говорили «ни одно из их нормальных фирм никогда не поставит виндовс себе. максимум — у секретарш на ресепшене. остальное — те же кунухи на стендах, фряхи-солярисы-линухи на десктопах, спецниксы для админов». народ приезжает с поверпоинтской презентахой, сделаной в опенофисе, и реально не знает аналогов в виндовсе, которыми надо её запускать.
это всё по фырмам, которые делают гироскопические приборы, системы и комплексы, вроде сажема и прочих.
не бывает у них “ниш, на которые забивают”.
Ок, ждем любимый автокад под линух.
Вот можно посмотреть сюда:
На странице www-atmel-com\dyn\products\tools.asp?family_id=682
написано вот такое:
AVR32 Studio 2.1.0 AVR32 Studio is a free Integrated Development Environment (IDE) for AVR32 that enables you to write, build, deploy and debug your C/C++ and assembler code. AVR32 Studio integrates with the AVR32 GNU Toolchain including GCC for building applications for AVR32. AVR32 Studio is Built On Eclipse™ and supports Microsoft® Windows® 2000, XP and Vista, and Linux®.
Но, к сожалению, под восьмибитные нету :(
Поставь для системного винта Мобиль Рак. Когда захочешь повыделываться — сунь туда винт с Линухом. Захотел поработать с нормальными программами — сунул винт с Виндами и всем остальным. Постепенно станешь совать Линуха все реже и реже, а потом и совсем выбросишь. Так постепенно, незаметно и безболезненно и вернешься в мир нормальных людей… Вот оно где, Щастье — то!!!
К вопросу cad софта под Linux, есть дивный эмулятор wine специально для запуска windows приложений под никсами, лично пробовал zemax 2006, pcad2002, ewb512, strong DC++, желающие try -)
AVR Studio под винищем не пашет, а это основной отладочный софт аврщика.
Устанавливается, проекты открывает, собирает, кривовато режим отладки идет ( на портах биты кликом вроде не ставятся ), проекты не создает -( ну это можно файлы в папке создать в принципе самому (или скопировать из имеющегося -) )- это 4.17, — более ранние возможно пойдут лучше… Proteus 7.5 SP3 установился корректно, открывает проекты, эмулирует корректно. Uniproof COMпорт с контроллером не видит -( Система PC BSD 7.0 Fibonacci. В общем видимо перспективно, но надо как следует повозиться -)
P.S. Все что касается отладки идет кривовато. В отладке не ставятся руками значения в портах, при создании нового проекта, при указании эмулятора — виснет -(, а так все работает… Вероятно дело в wine, надо попробовать пересобрать с поддержкой HAL -)
Для этих целей есть виртуалка с виндой. :)
Любая виртуалка будет более тормозной и заведомо неполноценной, из за невозможности полностью предусмотреть и реализовать все нюансы эмулируемой системы. Гораздо проще иметь отдельный винт на каждую систему. А заменить и перезагрузиться — пара минут. Зато системы полностью независимые. Системы семейства UNIX — чисто серверные, для дома мало пригодные, даже если им приделать костыли и подпорки. Единственный смысл работы с ними — изучение с целью заняться в дальнейшем системным администрированием. Но серверов с UNIX уже не так уж и много, в серьезных организациях предпочитают SOLARIS, который работает в основном с SUN, который дома не поставишь, или серверные версии Виндов (для INTEL).
Думаю, что спорить смысла не имеет :)
Многоуважаемый SWG, позвольте спросить, когда Вы последний раз устанавливали и пользовались *nix-like операционную систему?????
Дело в том, что установка и дальнейшее использование современных дистрибутивов, намного проще, чем в 90-х. Год назад я продал laptop DELL Latitude 600. Продал одному парню, который до того за компом даже и не сидел. …спустя месяц Он так шустро работал за ноутом с SUSE 9…
Можете попробовать UBUNTU, она хороша для повседневного пользования, и программ, созданных сообществом OPEN SOURSE, хватит всем, для любых целей, тем более все бесплатно. Пример, линь со всей графикой (64-х битная ОС), посравнению с ОС от МайкроСофт работает реально шустрее.
ВЫШЕСКАЗАННОЕ НЕ ОЗНАЧАЕТ:
— что я являюсь ярым противником Windows
— начало HOLYWARа
М А Н И Ф Е С Т
— Я благодарен МайкроСофт за своевременное создание системы, понятной рядовому человеку….
— Я благодарен APPLE (и лично С. Джобсу) за их вклад в развитие шрифтов, за отличный вид и стабильность
— Я благодарен старине Линусу за появление простой НиксЛайк системы…
— Я благодарен сообществу Опен Сурс за развитие и движение некоммерческих программ
— Я благодарен Пиратам… За возможность использования коммерческого ПО. Просто иногда невозможно стать легальным владельцем(см. ст. К.Касперского о-поПЫТКЕ-купить-некое-программное-решение, и-что-из-этого-вышло)
В С Е
А что Крис попытался купить? И что из этого вышло?
Примеры реальных взломов
(фрагмент книги «Техника и философия хакерских атак»)
Компилятор Intel C++ 5.0.1
Автор: (c)Крис Касперски
В настоящей книге все атаки рассматривались исключительно на примерах, специально написанных для демонстрации того или иного алгоритма программ «CrackMe». При этом многие из них были слишком искусственными и далекими от реальных защитных механизмов. Это было удобно для изложения материала, но не отражало реальных существующих защит.
Поэтому я решил включить в приложения некоторые примеры реальных взломов. Все эти программы широко распространены и отражают средний уровень защиты условно-бесплатных программ. Заметим, что он существенно ниже, чем многие из предложенных в книге реализаций.
Напоминаю, что взлом в той или иной мере конфликтует с российским и международным законодательством. Поэтому необходимо помнить, что взлом не освобождает от регистрации и может быть использован только в образовательных целях, но никак не для получения какой-либо выгоды. В этом случае конфликтов с законодательсвом не возникнет.
Рисунок 1. Логотип компилятора Intel C++.
Прежде чем приступать к обсуждению аспектов стойкости защиты компилятора Intel C++ 5.0.1, считаю своим долгом заявить, что я глубоко восхищен этим великолепным программным продуктом и ломать его, на мой взгляд, по меньшей мере кощунственно. Впрочем, сегодня только ленивый не найдет в Сети кряк (один только Google по запросу «Intel C++ crack» выдает свыше 12 тысячи ссылок!), так что никакого вреда от данной публикации не будет.
Немного грустных новостей для начала. Приобрести легальную версию данного компилятора для жителей России оказывается чрезвычайно затруднительно. И вопрос упирается даже не в то «сколько он стоит» (а стоит он, если мне не изменяет память, что-то в районе тысячи долларов) — компания Intel просто игнорирует данный сегмент рынка. Обращения в российское представительство компании с просьбой предоставить (за деньги!) данный компилятор для его же описания (читай — рекламы и продвижения) в книге «Техника оптимизации программ» положительных результатов не дали. Даже после того, как к этому вопросу подключились, прямо-таки скажем, не мелкие отечественные издательства BHV и Солон — Р. Ладно, не хотят продавать — ну и не надо! Благо, хоть с сервера компании можно свободно утянуть 30-дневный триал. Не густо, конечно, но для сравнительного тестирования вполне достаточно (а для других целей мне этот компилятор и не нужен!).
Впрочем, все оказалось не так просто! С Web-сервера компилятор запросто так не отдался, а после заполнения регистрационной формы меня вежливо поблагодарили и сообщили, что сейчас ко мне на «мыло» упадет письмо с триальной лицензией и инструкцией по ее установке. Это «сейчас» заняло у севера аж несколько дней (такое впечатление, что анкеты просматриваются вручную). Ок! Лицензия получена! Начинаем скачивать файл… Как это так — докачка не поддерживается?! А вот не поддерживается и все! Учитывая, что у меня лишь хлипкий Dial-Up по каналу в 19.200 (да и тот — по межгороду), скачать полста мегабайт без единого разрыва просто нереально. К тому же, работа над книгой уже близится к завершению и вносить в нее еще один компилятор (а значит, переписывать кучу текста заново) мне становится просто «влом». Да и Intel C++ — это далеко не самый популярный в кругах российских программистов компилятор и книга без него как-нибудь переживет (хотя, посмотреть, как Intel оптимизирует код под свои процессоры, очень хотелось, да и документация по компилятору вдохновляла). Самое смешное, что когда я все-таки скачал компилятор через своих московских знакомых (ну, для Москвы 45 мегабайт — это вообще ничто), он наотрез отказался работать, мотивируя свое поведение тем, что срок демонстрационной лицензии уже истек…
Разозлившись на весь свет (и на парней из Intel в частности), я отправился на ftp-сервер компании, откуда наскоро, всего за каких-то три дня, слил полнофункциональную (хотя и шибко несвежую) версию компилятора, находящуюся по следующему адресу: ftp://download.intel.com/software/products/downloads/C5.0.1-15.exe. (приятно, что ftp докачку исправно поддерживал и многократные разрывы никаких проблем не вызывали). Польстившись на размер, я скачал именно пятую версию компилятора, которая была в полтора раза легче шестой (под которую у меня имелась неиспользованная триальная лицензия) и аж в два раза компактнее седьмой — новейшей на момент написания этих строк версии, ломать которую из «политических» соображений, я все равно бы не рискнул, так зачем же ее зря качать?
Теперь, собственно, мы и подходим к известному философскому вопросу: этично ли ломать программный продукт уважаемой тобой компании или без этого можно обойтись? Да, если бы без этого было возможно обойтись, я бы, честное слово, без тени сожаления выложил за этот замечательный продукт пачку вечнозеленых, но, увы… компания не проявляет ко мне, как к покупателю, никакого интереса и, кроме как ломать, ничего другого просто не остается!
……………………………………………………………..
конец цитаты
полная версия статьи находится по адресу ИНСАЙДПРО.КОМ( http://www.insidepro.com/kk/007/007r.shtml )
Просто для информации:
Solaris прекрасно работает на десктопе, высылался фирмой Sun бесплатно, скйчас это Oracle. Посмотрите у них на сайте. Ubuntu прекрасно работает, подхватывает все железо, только wifi требует пару кликов и драйвера для Винды.
Про утыкать программу брейкпоинтами — это вы хорошо пошутили. Возможно в режиме симуляции их и можно много поставить, но вот я отлаживаю через JTAGICE уже готовое железо на ATMega128, и там можно одновременно только 3 точки поставить по всей программе.
JTAG и Hapsim это несколько разные вещи и совершенно разные подходы в отладке.
А кто нибудь юзал симуляцию LCD в Hapsim? У меня не получилось, хотя взял работающую программу включил симуляцию, а он цобака какие-то ироглифы пишет. пытаюсь вывести латинские буковки и циферки
В хапсиме есть пример работы с LCD может ты подключил что неправильно. В живую проверял?
Всякая фигня лезет когда дисплей нормально не инициализируется. Т.е. работает в 4 битном режиме, а думает что в восьмибитном. Инициализация отличается от дисплея к дисплею и не зная этих граблей может быть геморрой.
тут все про оффтоп пишут, а у меня HAPSim Hook пишет: «AVR Simulator not loaded».
и — действительно! — текст «AVR Simulator» внизу в строке статуса студии серый, типа, неактивный. а вот как этот самый симулятор настроить?
У меня хапсим такое пишет когда студия не в режими симуляции.
эмм… а как её туда ввести?
Скомплиировать код и нажать режим эмуляции. Стрелочка зеленая такая.
оу… почувствовал себя идиотом))
А у меня не прокатывает. Поставил AVR Studio 4.17 + HapSim 216. Создал проект под ATtiny13, выбрал AVR Simulator. Собрал проект, запустил отладку. Метка AVR Simulator из серой стала чёрной. Запускаю HapSim, а он выкидывает окно с матами:
«проверь наличие файла …/AVR Tools/Partdesciptionfiles/simulatorparts.cac»
Проверяю, а нет такого файла.
Что делать? Как быть?
У меня есть. Надо?
Наверное оно должно само создаваться?
Да фиг знает. Может студия криво встала или хапсим.
у меня так же просит этот файл
У меня та же трабла… Выложи плиз на сайт))
Fixed! У кого пишет что нет файла, поищите его на диске C в папке своих документов :)
Точнее в Documents and settinds\All users\Application data\atmel\avrstudio4
я люблю этот мир
хапсим пишет(скачал посл. версию с автора): я незнаю этой версии студии..
ну дак впринципе понятно студяя новее.. блин.. качать старую версию студии.. нонсанс — давнгрейт! блина..
+1
Чорд ;(
Даунгрейд — форшмачен! А есть аналоги hapsim’а?
протеус поюзай.. ну далекоооо не аналог… мож понравиться
(талкаеш прошивку и эмулируешь) для отладки — непомогает самособой
В протеусе можно и отлаживать. Прям по исходному коду, но надо поковыряться с его компилятором там весьма все запущено. Ну и работает глючно.
AVR Studio 4.18 + Hapsim 2.17 = «AVR Simulator not loaded», хотя пробовал подцепляться в разных режимах АВРки. Никаких файлов никто не просит, просто кидает окошко с ошибкой и всё.
Кстати, АВР Студия голая, без сервиспака №3, потому что пришлось Студию с сервиспаком переустанавливать — после остановки симуляции (клик по кнопке стоп), Студия молча вываливалась вообще. Сейчас, переустановленная, не вываливается.
Видать, не судьба.
Что-то студия последняя из 4-й версии с тремя сервис паками также при остановки отладки вываливается без предупреждения. До переустановки XP стояла она же и такого замечено не было. А сейчаст на новой XP вот такое поведение. Никто не знает как это лечить? Может действительно переустановить без сервиспаков?
Что-то студия последняя из 4-й версии с тремя сервис паками также при остановки отладки вываливается без предупреждения. До переустановки XP стояла она же и такого замечено не было. А сейчаст на новой XP вот такое поведение. Никто не знает как это лечить? Может действительно переустановить без сервиспаков?
Она у меня, правда, без дополнительных эмуляторов.
а мне рисует следующую фигню «DDevice List not found» ну и где этот листок с устройствами найти?
а мне рисует следующую фигню «Device List not found» ну и где этот листок с устройствами найти? версия у меня студии 4.18, и нашел я в старом форуме: http://easyelectronics.ru/links/oldforum/mcu-avr/hapsim, но файла там нет по ссылке.
Файл этот тут теперь лежит:
c:\Documents and Settings\All Users\Application Data\Atmel\AvrStudio4\
Последовал Вашим советам: распаковал Hapsim в одноименную папку, папку закинул в Tools (от AVR Studio). Запускаю и получаю уже известное сообщение «Device List not found». Ладно… иду по указанному пути, нахожу там два файла: «cache.cac» и «simulatorparts.cac»… А дальше что?
Скопировал эти файлы в папку Hapsim, запускаю программу и то же самое сообщение :-(.
В папке Hapsim имеется файл !readme.htm. Выполняю пункты раздела «Quickstart with Demo-Application ‘LCDTest'» (для того, чтобы Hapsim увидел запущенную Студию). По фигу! :-( Снова сообщение про «Device List…»
Какое имя файла/расширение у этого списка??
На сайте Hapsim нашел ответ на последний свой вопрос: файл этого злополучного списка — simulatorparts.cac
Но никакой инфы — как с этим воевать :-(
Воевать с этим просто — скачать с сайта Hapsim новую версию (http://www.helmix.at/hapsim/#hapsimdownload), в которой проблема с «Device List» исправлена.
Запускаем симуляцию в Студии, а потом запускаем Hapsim.
Увы! Радость длилась недолго :-(
Мало того, что после запуска программки на ее дисплее так и оставалась приветственная запись «LCD — HD44780U Simulator!» — вне зависимости от ее настроек, или выбора имеющихся предустановок, или прохождения симуляции (работа с LCD с сайта) в Студии.
После перезагрузки Студии программка перестала видеть запущенную симуляцию: «AVR Simulator not loaded!»
Куда копать?
Ну вот вроде решился вопрос скачал новую версию вроде работает, не сильно корректно но все же запускается http://translate.googleusercontent.com/translate_c?hl=ru&ie=UTF-8&sl=en&tl=ru&u=http://www.helmix.at/hapsim/&rurl=translate.google.ru&usg=ALkJrhhYPFtMtsxTM82XTLhRJSuDRo-dOg#hapsimdownload
Ну он особо корректно никогда не работал. Это хороший такой костыль за неимением лучшего. Вообще AVR Studio с недавних пор интегрируется в протеус и получается вполне терпимо. Точнее должно получаться, но у меня не вышло. Видать изза того, что протеус был крякнутый. Он тупо вылетал с ошибкой при попытки завязать его со студией.