YS писал(а):
Да не, фузы мы не трогали. Я говорю про само понимание процесса.
Процесса чего... одурманивания???
Я так понял, вы и сами не знаете, что такое CMSIS. Ну так я вам расскажу.
Угу... "Фонарь дэтэктэд!"(С)...
Что там у нас в файлах CMSIS??? О ужас!!! Хедер!!! Срочно писать своё!!! "Только хардкор!"(С)
На ПИК/АВР тоже хедер самому писать нужно???
А пока не надо грузить его вещами, не относящимися к сути.
Грузят всякоразные кухарко-учителя... Особенно если суть сводится только к лэйбе Атмэл...
От которых у начинающего рябит в глазах.
Какое отношение это имеет к ядру??? Никакого!!!
Что там у нас по документации на ПИК24??? Да почти один в один... если не хуже!!!
"Я не даю готовых решений, я заставляю думать!"(С)
Э-э-э, ну это уже и правда холиваром попахивает. Да и топикстартер пропал.
Ну что поделать, бывает, что человек молится только на одну архитектуру и считает, что все остальное - недостойное говно. С опытом разработки это проходит.
Так что ладно, наверное мне стоит пожелать вам успехов. А я продолжу свободно использовать любое из знакомых мне семейств по мере необходимости и осваивать новые. Вот продукцию NXP я еще не пробовал, и Stellaris от TI тоже...
Разница между теорией и практикой на практике гораздо больше, чем в теории.
Не проходит, а ПРИХОДИТ!!!
Сейчас STM самые оптимальные по всем параметрам... для большинства приложений... исключения не в счёт...
Ничего страшного в этих STM32 нет... все эти страшилки надуманные...
А я продолжу свободно использовать любое из знакомых мне семейств по мере необходимости и осваивать новые. Вот продукцию NXP я еще не пробовал, и Stellaris от TI тоже...
У меня уже всё это позади...
Даже с точки освоения NXP или Stellaris от TI... С чего легче будет переходить... с STM32 или Мега16??? То-то!!!
"Я не даю готовых решений, я заставляю думать!"(С)
Именно проходит. Когда-то я тоже считал, что AVR круче всего, как вы сейчас считаете, что STM32 круче всего - это было оттого, что я просто не знал ничего другого. Познакомился еще с пятком семейств - и стал относиться ко всему гораздо спокойнее...
Это все пройдет, когда уровень разработок заставит всерьез задуматься об исключениях, которые сейчас для вас "не в счет".
Ничего страшного в этих STM32 нет... все эти страшилки надуманные...
А я говорил, что они страшные? Я только утверждаю, что они не слишком подходят для старта. Начинать можно и с них, просто если сразу взяться серьезно, начиная с нуля, мозг раскалится гораздо сильнее, чем если начать с MSP430/PIC или подобного.
Даже с точки освоения NXP или Stellaris от TI... С чего легче будет переходить... с STM32 или Мега16??? То-то!!!
На самом деле, если навык уже выработан, разницы нету. Опять же, с опытом приходит понимание, что все МК одинаковые (ну, наверное, за исключением экзотики типа Propeller) - непреодолимые барьеры между семействами мерещатся только пионерам. Неважно, сколько там бит в шине, принципы одни. А существенные трудности в осознании нового семейства после уже имеющегося опыта работы с каким-то другим говорят только о недостатке фундаментальных знаний, которых как раз и не дает освоение "с наскока".
Разница между теорией и практикой на практике гораздо больше, чем в теории.
Вот продукцию NXP я еще не пробовал, и Stellaris от TI тоже
Stellaris теперь называется TIVA, если так много времени пробовать, порекомендую попробовать еще микроконтроллеры Nuvoton Cortex™-M0 http://www.nuvoton.com/NuvotonMOSS/Comm ... 3449500ce7
цена очень гуманная - 0.3$ (в России 0.4$)
YS писал(а):
Именно проходит. Когда-то я тоже считал, что AVR круче всего, как вы сейчас считаете, что STM32 круче всего - это было оттого, что я просто не знал ничего другого. Познакомился еще с пятком семейств - и стал относиться ко всему гораздо спокойнее...
Приходит... приходит... Что весь этот зоопарк МК и компиляторов в большинстве случаев избыточен...
В этом и состоит спокойствие...
Это все пройдет, когда уровень разработок заставит всерьез задуматься об исключениях, которые сейчас для вас "не в счет".
"не в счет" потому что такие задачи типа "иначе никак" редки... а реализация их не составляет труда... Мега, ПИК24 или новые ПИК16... какая разница...
Но если это всё легко реализуется на STM... то к чему все эти извращения???
А я говорил, что они страшные? Я только утверждаю, что они не слишком подходят для старта. Начинать можно и с них, просто если сразу взяться серьезно, начиная с нуля, мозг раскалится гораздо сильнее, чем если начать с MSP430/PIC или подобного.
Для новичка всё страшно... Но судя по инету... освоение STM32 не такая уж сложная задача... как некоторым кажется...
На самом деле, если навык уже выработан, разницы нету.
Нету... Кроме того, что новичку новый компилятор придётся осваивать... к разнице в периферии... и другому даташиту...
А в случае с Cortex всё проще... Кейл или ИАР... и разница в периферии...
"Я не даю готовых решений, я заставляю думать!"(С)
В свободное от работы время пишу тестовые программки, заливаю в МК. Не поглядите в чем дело ? По замыслу при нажатии кнопки ( PORTD.0) светодиоды (PORTB.1-3) горят по очереди с задержкой 4 сек, при отпускании горят с той же задержкой, но в обратном порядке с 3-1. Но в реале, при нажатой кнопке горит крайний диод а два других по замыслу включаются, при отпускании кнопки загорается диод с другого края а два работают как надо ?
Первое - использовать компиляторо-специфичные костыли вроде PORTB.x крайне не рекомендуется. Это плохой стиль. Следует использовать битовые операции и сдвиги.
Сам код
Существует тег code, используйте его.
Не поглядите в чем дело ?
Вам тут нужен конечный автомат. Я написал (под AVR GCC в AVR Studio 4, но портировать не составит труда) для вас этот пример и потестил его в Proteus:
YS писал(а):Первое - использовать компиляторо-специфичные костыли вроде PORTB.x крайне не рекомендуется. Это плохой стиль. Следует использовать битовые операции и сдвиги.
а что же в вашем примере нет этих самых сдвигов? собственно, и конечный автомат немножко притянут за уши... если я верно понял, то нужен "бегущий огонь", меняющий направление в зависимости от состояния кнопки?
Есть, собственно, я и рекомендовал их использовать вместо нестандартных расширений.
если я верно понял, то нужен "бегущий огонь", меняющий направление в зависимости от состояния кнопки?
Не знаю, я так понял, надо чтобы этот огонь бежал одноразово, т.е., кнопку нажали - огонек сделал так:
о--
-о-
--о
и остался в этом состоянии, пока кнопка нажата. Когда кнопку отпустили - обратно
--о
-о-
о--
и остался в таком состоянии, пока кнопку опять не нажмут.
конечный автомат немножко притянут за уши...
Возможно, есть и более простые пути. Но я понял ТЗ именно так, как изложил выше; кроме того, конечный автомат я применил в большой степени в дидактических целях.
Разница между теорией и практикой на практике гораздо больше, чем в теории.
Вечер добрый, хочу задать вопрос, как раз в теме про чайников =)
Вопрос 1. Как грамотно подключить к attiny2313(либо atmega8 не принципиально), автомобильное 12В реле. Набросал вот такую схему...
реле коммутирует цепь управления электробензонасосом.
Вопрос 2. Как наиболее надежно и наименее геморройно дать понять микроконтроллеру о наличии/отсутствии 12В. Проще говоря, необходимо врезаться в 12В проводку автомобиля и стырить оттуда наличие/отсутствие напруги в проводе.
Вопрос 3. Имеется микроконтроллер, считающий некую инфу внутри себя(счетчик). Необходимо вывести значение этого счетчика на LCD или сегментный индикатор не суть. Проблема, что у считающего МК не хватает ног для этого. Можно ли отправить данные с одного МК на другой (например с тина на мега8) по двум проводам например? Что-то типа пакетной передачи данных?
Как наиболее надежно и наименее геморройно дать понять микроконтроллеру о наличии/отсутствии 12В. Проще говоря, необходимо врезаться в 12В проводку автомобиля и стырить оттуда наличие/отсутствие напруги в проводе.
Поставить делитель и на всякий случай защитить ножку МК стабилитроном (поставить стабилитрон параллельно нижнему плечу делителя).
Проблема, что у считающего МК не хватает ног для этого.
В таких случаях ножки наращивают сдвиговыми регистрами. Например, 74HC595.
Разница между теорией и практикой на практике гораздо больше, чем в теории.