Если это ваш первый визит, рекомендуем почитать справку по форуму. Для размещения своих сообщений необходимо зарегистрироваться. Для просмотра сообщений выберите раздел. |
PIC контроллеры. Программаторы и первый проект на PIC |
Программирование микроконтролеров,ремонт аудио/видео/бытовой техники,полезные устройства для дома,телефония, обсуждение статей журнала Радио |
|
Опции темы |
13.11.2009, 18:45 | #361 |
Форумец
|
А что, есть и такие? По-моему, среди людей действительно пишущих на Си для МК (ровно как и на других языках высокого уровня) по определению не может быть людей совсем не знающих ассемблер, иначе они могут только говорить, что пишут.
|
14.11.2009, 10:28 | #362 |
Форумец
Сообщений: 58
Регистрация: 02.11.2008
Возраст: 38
Не в сети |
|
20.11.2009, 23:19 | #364 |
Форумец
Сообщений: 3,287
Регистрация: 28.07.2004
Не в сети |
Земляки, в свете присутствия в этой теме обсуждения термостата - хочу спросить, есть ли цифровые датчики с последовательной шиной, рассчитанные на верхний предел температуры +180 ... 200гр. Цельсия? Как то не хочется без боя термопару или диод в печь вставлять...
|
21.11.2009, 12:08 | #365 |
Форумец
Сообщений: 523
Регистрация: 08.02.2007
Возраст: 49
Не в сети |
Я пишу для пиков и не знаю асма - великолепно получается, чего и вам желаю. А умникам асмистам - добро пожаловать на microchip.su - помогать таким же как и вы, они там такие регулярно появляются, помогите зажечь светодиод на асме, третью неделю бьюсь ничего не выходит....
Из плюсов не привязан к камню, хоть 16, хоть 18, хоть 24, 32 и т.д. Не привязан к платформе можно на гадских аврках, на 51, на армах на чем угодно, компилятор только поставить и ФСЁ , портируй проект или пиши заново. Про скорость написания и ОТЛАДКИ я вообще молчу, я дилетант за вечер с НУЛЯ могу выдать работающую нетривиальную программу, что на асме под силу только очень крутому проффи. Далее не существует такой конструкции на асме, в которую нельзя было бы скомпилировать сишный код, ну и последнее, думаю, большинство из вас на асме либо никогда не достигнет уровня хорошего С компилятора с включенной оптимизацией , либо это случиться очень и очень не скоро и то для единиц и только для конкретного контроллера. Так что, если бы совок мог тягаться с экскаваитором, то последних бы просто не было. А пока что наблюдается обратное. Я могу понять людей которые пишут на асме для души, так сказать, их прет от этого - да ради Бога, кто -то пьет пиво, кто-то собирает марки, ловит рыбу. Это их право, причем это гораздо полезнее, чем, например, в подворотне к бутылки с так называемым пивом прикладыватся. Если человеку шашечки важнее чем ехать - это его дело, в свое личное время любой каприз. Но если это производство - где время деньги, и при этом нет супер веских причин писать на асме (милионная партия а в дешевый кристал на С немного не влезает), то все асмисты идут лесом. |
21.11.2009, 14:59 | #366 |
Форумец
Сообщений: 3,287
Регистрация: 28.07.2004
Не в сети |
Милионная партия делается в Китае и на фоне постоянной корректировки ТЗ и прочих административных вещей - полно времени писать на чем угодно, благо не смартфоны и видеокарты последних моделей тут делаются. Самолеты и ракеты не в счет.
Время - деньги: да не, мы простые инженеры на зарплате сидим, так что пох. Короче - языки высокого уровня - это как секс с презервативом, хотя лучше знать и то и другое. Миллион девайсов - вещь совсем не уникальна, значит имеет место попытка демпинга существующих изделий, путем применения дешевой комплектухи и копеечного труда. Хм, значит и программу надо делать в подобном концепте, т.е. на бейсике или сях, за вечер под пивко. Может вобще в попу кодить? ООП рулит! Алгоритм билдер например. |
21.11.2009, 16:40 | #367 | ||||||
Форумец
|
Я тоже пишу на СИ, но подобного тезиса в сторону ассемблера себе ни за что не позволю.
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Те кто пишет компиляторы и оптимизаторы обязаны отлично знать и знают ассемблер (или их Вы тоже называете умниками, которые никак не могут зажечь светодиоды). Кстати без их отличных знаний ассемблера у Вас никогда бы и не возникло повода и мысли написать подобное в адрес ассемблера. Так как в этом случае у Вас никогда бы не было работающего компилятора Си и т.п. А теперь представьте ситуацию, что у Вас имеется ТЗ в котором, четко указан конкретный тип контроллера, а заказчик платит очень хорошие деньги и не желает слышать об изменении ТЗ. Вы пишите код на Си, а он не влазит в память. Вы спокойно и уверенно включаете высший уровень оптимизации, и опа!!, а код-то все равно чуть-чуть не влазит в память программ. И что Вы пойдете к заказчику и скажете, что Вы пишете на Си и то что от Вас требует заказчик сделать невозможно? Вариантов несколько: 1. Отказаться от хороших денег и будьте уверены - заказчик найдет того кто это сделает на Си, на Си + ассемблер или на чистом ассемблере, все будет зависеть от профессионализма разработчика и его предпочтений. 2. Лезть в листинг, а он кстати уже на ассемблере, и искать места где можно соптимизировать уже "отлично" оптимизированное компилятором и уже ручками в код на Си вставлять ассемблерные вставки, но увы Вы же не знаете ассемблера и не хотите знать, Вам же принцыпы не позволяют (а места для оптимизации там 100% будут), а там не хватает всего-то чуть-чуть. Остается вернуться к первому варианту и дальше проповедовать отрицание ассемблера, а в душе проклинать себя и вспоминать маму, которая говорила "сынок, ассемблер не мешало бы хоть немного знать". 3. Самому обратиться к специалисту не гнушающемуся ассемблером, да так чтобы он не знал о Вашей религии антиассемблера (а то если узнает, то пошлет куда подальше) и приверженцы вашей религии чтобы тоже не знали (эти могут обвинить в вероотступничестве). И как тут быть? P.S. И я не говорю, что хорошо знаю ассемблер. |
||||||
21.11.2009, 18:33 | #368 |
Форумец
Сообщений: 523
Регистрация: 08.02.2007
Возраст: 49
Не в сети |
Мне не интересно с вами дискутировать по этому поводу Асм ради асма - это болезнь. Считал и продолжаю считать что старт с пикового асма есть несусветная глупость. Начинать надо с С. До асма надо еще дорасти. 90% это не грозит и только отвернет людей от контроллеров. Про профи в данной теме вообще речь не шла - они програмируют все что может быть прошито на чем угодно с одинаковым успехом.
|
21.11.2009, 20:31 | #369 |
Форумец
|
|
22.11.2009, 11:31 | #370 |
Форумец
Сообщений: 3,287
Регистрация: 28.07.2004
Не в сети |
Krivoy, Скажите, что современный разработчик не обязан уметь собрать часы на жесткой логике? Или не знать по памяти основные схемы включения транзистора? Задать фьюзы вручную, сделать простые вещи (подпрограмму задержки, сдвиговый регистр, прерывания, программный PWM) на асме за пару недель, взяв пик среднего семейства. Вот после этого двигаться дальше. А то как игра на гитаре без знания нот выйдет.
|
23.11.2009, 15:22 | #373 |
Форумец
|
1. Система команд в оригинальных datasheet.
2. Цикл статей в журнале "РАДИО" - А. Долгий. "Разработка и отладка устройств на МК" 2001, № 6-12, 2002, №1. Предостережение! В нете можете наткнуться на господина Корабельникова и его самоучитель, но ссылку не даю и не рекомендую. |
23.11.2009, 15:42 | #374 |
Форумец
Сообщений: 523
Регистрация: 08.02.2007
Возраст: 49
Не в сети |
XPEH_BAM, ваш ник ничем не лучше. И переход на личности вас не красит , я не ставил своей целью никого оскорбить исключительно уберечь начинающих в выборе неправильного пути. Я не отвергаю асм, как может показаться, я просто хорошо представляю большинство аспектов его применения и считаю, что начинающим на этапе старта он не нужен совсем - чем "...на асме за пару недель..." пощупать некоторые аспекты работы контроллера, лучше на С за это время сделать 14 рабочих проектов - пользы будет несравненно больше.
А дискутировать на эту тему мне не интересно по той простой причине, что большинство ответивших не могут или не хотят объективно оценивать реальность (судя по вашим постам), т.е. имеет место предвзятое отношение основаное на субъективых предпочтениях - мне это не интересно, т.к. я не стрмлюсь никого ни чем переубеждать. Как говорится, Бог в помощ в вашем нелегком деле вылавливания логических и концептуальных багов. |
23.11.2009, 15:50 | #375 |
Registered User
Сообщений: 391
Регистрация: 16.11.2008
Не в сети |
наткнулся на "Авторский курс Калашникова Олега Александровича" http://kalashnikoff.ru/Assembler/
Получается что конкретного типа для чайников самоучителя по ассму нет... |
23.11.2009, 16:02 | #376 | |
Форумец
|
Цитата:
|
|
23.11.2009, 18:03 | #378 |
Форумец
Сообщений: 113
Регистрация: 03.09.2009
Не в сети |
Krivoy, можно я тоже скажу пару слов. Пишете на СИ и хорошо, Вам хватает ну и отлично! Это Ваше сугубо личное дело и никого не касается, только вот по моему ИМХО, некорректно делать заявления типа:...Да, если совсем сголовой не дружится то можно и так, копать котлован совочком (асм), не лучше ли взять лопату (Си)...
Все можно, но скорее Вы еще не дошли до задач, где востребован асм, а когда дойдете и прочувствуете весь кайф авторского программирования, когда будут только Ваши (и больше никого) отличные, я бы сказал суперкоды, а не неизвестного дяди, который неизвестно как слепил библиотеки, и Вам будет стыдно за подобные высказывания. |
23.11.2009, 18:15 | #379 | |
Registered User
Сообщений: 391
Регистрация: 16.11.2008
Не в сети |
Krivoy, хорошо, Вы предлагаете
Цитата:
|
|
23.11.2009, 18:17 | #380 |
Форумец
Сообщений: 113
Регистрация: 03.09.2009
Не в сети |
romchik77,
Литературы просто завались в инете, посмотрите например на torrents.ru, что Вас конкретно интересует? Какая серия мк? Могу дать конкретные советы по mcs51 и avr, а к ПИКу у меня непреодолимая антипатия, да простит меня Krivoy. |
23.11.2009, 18:58 | #381 |
Инженер
|
Krivoy, пишу для ПЛК - не микроконтроллер, но архитектура чем-то похожа. Да, написание программы на ассемблероподобном языке занимает(у меня) в полтора раза больше времени. Вот только отладка длится в разы меньше. А отладка на производстве - дело нервное и дорогостоящее.
|
23.11.2009, 20:01 | #382 |
Форумец
|
Первое - господин Krivoy , Вы так и не ответили на мой вопрос, не хотите здесь можете в личку.
Второе - господин romchik77, не поленитесь найдите журналы "Радио" и уверен, что Ваше любопытство по поводу ассемблера будет удовлетворено надолго, а может и навсегда. И главное. Господа, хватит спорить. Этой войне конца не будет - уже проходили и не один раз и не только мы с вами, однако, флагов победы не видел ни на одной из баррикад, хотя со зрением нормально. То что сейчас происходит в этом топике - чистый флуд. А вот по делу чтой-то никто не засветился. Что? Кругом одни профи свято оберегающие свои супералгоритмы и желающие на них вырваться вперед Билла Гейтса, смею заверить, что у тех кто здесь отметился это вряд ли получится. Предлагаю замутить совместный проектик (так сказать проект свободного времени), вот в нем и можно будет пофлудить, но уже в тему. И видно будет, кто и чего стоит. После этих слов, наверное, все или попрячутся или подумают, что у них нет свободного времени и, вообще,что это не барское это дело - ковыряться в тараканьих задницах.... |
23.11.2009, 22:42 | #383 | |
Форумец
Сообщений: 113
Регистрация: 03.09.2009
Не в сети |
Согласен.
Цитата:
Дык начинайте. |
|
24.11.2009, 15:49 | #384 |
Форумец
Сообщений: 523
Регистрация: 08.02.2007
Возраст: 49
Не в сети |
romchik77, да вы правильно меня поняли. Думается я вам дал хороший совет. Я действительно начали с Си, делаю проекты и совершенно не касаетесь ассемблера. Я не только не знаю его, но честно говоря, и не хочу знать этого уродца. После асма для PDP11, все последующие кажутся уродцами . В его знаниипока нет никакой насущной необходимости лично для вас. Им стоит начинать заниматься только когда вы четко и конкретно сможете сформулировать зачем он вам нужен, не вообще, а предельно конкретно. Задача такая-то не может быть решена на С (или любом другом высокого уровня, паскале, бейсике) по тому-то и тому-то, причина этого в этом-то и том-то. Обойти это можно попытаться на асме так-то и такто. Писать программы на асме - это не причина, так отговорка. Ведь те кто хочет понять работу транзистора не начинают с распределения Бозе-Эйнштена(как бы не соврать, забывать уже начал) носителей на энергетических уровнях полупроводников из которых этот транзистор сделан. Это совершенно разные уровни восприятия, это, вообще, разные вселенные, если хотите. Да такое знание не будет лишни, оно может быть не помешает, но и не поможет, скорее всего, в нем нет необходимости для того, чтобы собрать, скажем усилитель, милтивибратор или ключ. Асмисты переползающие на С в начале выглядять просто смешно. Знание асма им мешает. С С на асм легко, на асме стиль предопределен самой структурой команд и програмировать по другому на нем нельзя. Да есть трюки приемы, но они есть везде. Однако за систему команд не выпрыгнешь. Нет разных стилей асемблера - есть только система команд в рамках котрой ты и крутишся, все... - полный детерминизм. Да ты бог, но только в рамках определенной, не тобой определенной! системы команд. Какой асм ты будешь учить, наверняка для 16пиков. По отзывам специалистов он кривой как моя жизнь. У 18 он уже другой. К тому времени как ты его выучишь, 16 пики канут в лету и начинай все с начала - новый камень новый асм. Сейчас уже 32 пики и дсп пики идут. Но ты же небудешь с них начинать. Я начал свое програмирование пиков с конкретной прикладной задачи. Мне остро потребовался точный цфровой тахометр на авто. Самым простым оказался вариант от нашего соседа, тов. Заяца( Вейделевка Белгородской обл). Довольно известная личность в узких кругах читающих журнал Радио. Один контроллер с мин обвязкой и индикаторы. Все. Все остальные варианты имели по десятку корпусов микросхем. Таким образом моя лень победила. Развел плату, спаял устройство и програматор, залил прошивку и болт - ничего не работает. Лезу в исходник. 5 листов китайской грамоты (асма) неплохо сдобреных коментариями. Несколько вечеров на осмысления идеи и оторопь. Когда дошло, взяла оторопь. Ремесленник. Ленивый ремесленик. Как надо реализовать непросто, надо хорошо и много поработать (на асме), а поэтому упростим себе жизнь искромсав алгоритм, чтобы пбыло проще и удолбнее писать . Осознав это больше разбираться с асмом не стал, поставил С компилятор и за пару вечеров освоил и пик и коппилятор до уровня написания своей рабочей программы. На асме времени бы ушло минимум месяц, вероятнее два. В общем думай сам, решай сам. Твое время это твое время.
IM1, я почти никогда не пользуюсь библиотеками, тем более скомпилироваными, все коды у меня открытые. Изобретать велосипед считаю вредным, потому охотно пользуюсь чужими наработками и идеями (правильными). От авторских вещей в програмировании меня в основном тошнит, т.к. чаще всего, когда их видишь хочется плакать от "автарских идей". Хотя бывают и приятные исключения. XPEH_BAM, могу ошибаться, но сдаетсся мне что для ПЛК существовали С подобные vhdl, verilog. Если это так, то настоятельно рекомендую посмотреть в их сторону . Жить станет гораздо приятнее. Говорю, совершенно ответственно, т.к. когда-то писал на vhdl для плисин. По поводу времени отладки, похоже вы даже не представляете, насколько глубоко вы ошибаетесь. petrd, не совсем понял о каком вопросе вы говорите. Почему мне не интересно спорить - вроде-бы написал. Если речь идет о том, что у меня великолепно получается писать на С - то, я согласен, что это моя субъективная оценка моего же кода, основанная на том, что мой код мне нравится. Я не буду возражать, что такая моя оценка поспешна и безосновательна. Насколько я знаю, кроме случая автоматного програмирования, программу даже протестировать гарантированно на работоспособность не представляется возможным, что уж тут говорить про оценку кода. Совместный проект можно мутить если он 1. интересен всем, 2. Практически полезен 3. достаточно сложен для реализации, т.е. есть где развернуться и над чем работать. Лично мне были бы интересны 1. Ампервольтметр постоянного тока 0-30В 0-3...5А в авто или для лаброторного БП на PIC16F676 c минимумом обвязки, т.е. пик индикатор, стабилитрон, три резистра и пару конденсаторов, т.е. предельно бютжетный функциональный и с открымым исходником на С . 2. Автомобильнй стробоскоп на ярких светодиодах с тахометром, аналог профессионального 3. ЭБУ для авто. 4. Бортовой компьютер. 5. Блок управления газовым инжектором для авто. Может, что еще нетривиальное. Постые вещи делать смысла не вижу. |
24.11.2009, 17:37 | #385 | |
Инженер
|
Цитата:
|
|
24.11.2009, 20:32 | #386 | |
Форумец
|
Цитата:
Вот Krivoy предлагает варианты, давайте их и обсудим. Согласен с предложением вольтметра, тахометр как-то не по душе, а вот частотомер - самое то, а остальное думаю не для свободного времени. |
|
25.11.2009, 01:10 | #387 | |
Registered User
Сообщений: 391
Регистрация: 16.11.2008
Не в сети |
Цитата:
З.Ы. Кстати в тему термостата, жаль что на Attiny26.http://arv.radioliga.com/index.php?o...ac=0&Itemid=44всего одна кнопочка! (... пошел стирать пеленки ... млин) Да вот еще вопрос ЖКИ WH1602A-YYH-CTK есть ли на нем подсветка? Последний раз редактировалось romchik77; 25.11.2009 в 01:47. |
|
25.11.2009, 02:21 | #388 |
Форумец
Сообщений: 822
Регистрация: 10.01.2008
Не в сети |
у нас в продаже без подсветок не видел,
P.S. кто нить может сцыль кинуть на адекватную описаловку дисплеев ? а то никак не получается выпросить то что хочется......... ни в хите ни у чайника не могут сказать какой дисп негативный и с каким цветом подсветки.......а менять подсветку малость геморно |
25.11.2009, 09:42 | #389 |
Форумец
Сообщений: 523
Регистрация: 08.02.2007
Возраст: 49
Не в сети |
Думаается МЕЛТ простейший без подсветки, но он суть 7 ЖК семесигментник без контроллера команд. ИМХО, вообще смотреть надо на дисплеи от сотовых телефонов нокия 3310, 2100(кажется). Цена 50-70р. Строк 5!!! Один раз освоил и лепи куда угодно, графика есть графика. А на вольтметр, думается только 7 сегментник, цена и габариты знаете-ли.
|
25.11.2009, 10:40 | #390 |
Форумец
Сообщений: 113
Регистрация: 03.09.2009
Не в сети |
petrd, и остальные господа, не хотел никого обидеть, уж не знаю, что меня понесло на замер п..., наверное не в духе был.
Много чего разработанного продается и отлично работает круглосуточно и всепогодно, много чего в разработке. Термостат, это была срочная необходимость, в журнале (кто читал) об этом сказано. Заодно и отвадился от журнала "Радио" навсегда. |