но в тоже время, не нужно заново придумывать велосипед.
Это я о том, что чтобы тот же велосипед можно было разбирать, собирать, чинить, дорабатывать, не нужно это заново придумывать, он уже придуман. Надо понять как он работает, как он устроен.
Собственно, эта тема и должна, я так думаю, помочь разобраться в CodeVisionAVR. Есть вопросы - есть ответы. Может, конечно, вопросы не всегда корректны. Ну так и ответы типа "учи мат. часть", "смотри так где-то с 1-ой по 500-тую страницы, должно быть" мало информативны.
Я, собственно, и залез суда задать вопрос, так умники типа "Arduino 300 рублей", всю охоту общения отбивают.
ARV, "Ваша ирония понятна." Но давайте поговорим, как инженер с инженером. Есть конкретная задача. Есть среда разработки. (Боже упаси считать CodeVisionAVR лучшей средой разработки) Но эта среда есть. Так почему бы не автоматизировать процесс разработки, используя "Визард" ? Что, религия не позволяет? Тем более, чтобы правильно расставить "галочки" в визарде, необходимо не то чтобы просто внимательно читать даташит на конкретный контроллер, а вообще понять его полностью! Так что использование "визарда" не отупляет, а просто облегчает жизнь. Не надо копаться в каждом бите управляющих регистров. А что касается "тупизны" "визарда", то на то и существует голова на плечах, чтобы относиться достаточно критически к тому, что он там родил. Я, например, выкидываю больше половины кода, который рожает "визард". Но выкидывать легче, чем самому писать Так что считаю, что "визард" наоборот, не расхолаживает разработчика, а заставляет его мыслить критически! ---------- "Когда пользуетесь визардом в кодевижене, смотрите внимательно на поля, Вами заполняемые. Иначе такое использование будет пустою забавою..." (с) Козьма Прутков программист
1. мне абсолютно все равно, чем пользуются другие люди: нравится CVAVR - да пожалуйста! я в стороне. 2. есть среда, есть компилятор и есть визарды, способные "решать" некий набор типовых задач, например, работать с часами типа DS1307 или 2-строчным LCD. и создается впечатление, что с их помощью можно быстро что-то сделать. и это действительно так, пока: а)вдруг что-то "автоматическое" не заработает или б)условия задачи станут отличаться от "типовых". по поводу ситуации а - мы все лицезреем в этой теме то, что получается. то есть, ничего не получается - никто ничего не понимает и не знает, что надо делать. по поводу ситуации б - предположим, надо подключить LCD не к одному порту, а к разным выводам двух или даже трех портов (ну, вот так удобнее по трассировке платы) - что будете делать? кто знает, как заставить CVAVR победить эту задачу? если надо работать с двумя или тремя независимыми шинами 1-wire? если вместо часов DS1307 будут какие-то похожие, но с интерфейсом SPI? в общем, из набора зеленых кубиков синий шарик никак не построить 3. лично мне религия действительно не позволяет. во всяком случае, хожу, ем, зарабатываю и т.д. я сам, без помощи костылей, какими бы милыми и удобными они не выглядели. и пока этому рад.
_________________ если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе при взгляде на многих сверху ничего не меняется...
1. некоторых деточек до пенсии мамы/папы за ручку водят и сопельки вытирают. 2. если ложечка с кашей постоянно в нужный момент оказывается у рта - научится это чадо кушать самостоятельно? это я к тому, что возникает ли желание что-то читать у того, кто ждет "по щучьему велению, по моему хотению", т.е. ждет, что кто-то или что-то все сделает само?! 3. это мое частное мнение, не претендующее на истинность и абсолют. пусть каждый сам решает, что ему лучше, а что хуже. 4. я в этой теме ни разу (если не считать намеков) не отослал никого к визардам CVAVR, стараясь указывать на проблемы исходя из языка Си. но не уверен, что кому-то это пошло на пользу...
_________________ если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе при взгляде на многих сверху ничего не меняется...
Заголовок сообщения: Re: CodeVision AVR в вопросах и ответах
Добавлено: Ср июн 30, 2010 13:10:44
Потрогал лапой паяльник
Зарегистрирован: Сб сен 06, 2008 12:56:13 Сообщений: 326
Рейтинг сообщения:0
"Визард" помогает на начальном этапе "вхождения" в практику Си, с теми положениями, которые озвучил Барсик, т. е. как справочник в некоторых случаях. Мнение ARV, наверное связано с тем, что задаются иногда такие вопросы, на которые "вопрошающий", если сочтет за труд почитать и вникнуть - сам быстрее найдет ответ.
Пошло на пользу. Ещё как. Мне, например... А вообще, я хотел обратиться к администрации форума, чтобы эту тему переименовали в "CodeVision AVR в вопросах и ответах ARV"
возникла проблема с мегой 32 и часами ds1307. часы не заводятся никак. на i2c висит еще термометр ds1621, но он работает нормально. возможен ли конфликт между ними? вот инициализация
Есть две перемменные например 0b10010101 и 0b00001110 как правильно заменить в первой переменной младшие четыре бита из второй переменной чтоб старшие остались без изминений, ну тоесть чтоб старшим нули не присваивались?
Есть две перемменные например 0b10010101 и 0b00001110 как правильно заменить в первой переменной младшие четыре бита из второй переменной чтоб старшие остались без изминений, ну тоесть чтоб старшим нули не присваивались?
Заголовок сообщения: Re: CodeVision AVR в вопросах и ответах
Добавлено: Сб июл 03, 2010 22:04:37
Первый раз сказал Мяу!
Зарегистрирован: Сб мар 21, 2009 23:46:25 Сообщений: 36
Рейтинг сообщения:0
Всем привет! подскажите как в Си можна разбить условно переменную типа int на два байта char (старший и младший) к примеру мне нужно передать через УАРТ переменную int, и я сначала должен передать старший байт, потом младший или например int a; char b,c; b=a(старший байт); c=a(младший байт);
Заголовок сообщения: Re: CodeVision AVR в вопросах и ответах
Добавлено: Сб июл 03, 2010 22:21:24
Первый раз сказал Мяу!
Зарегистрирован: Сб мар 21, 2009 23:46:25 Сообщений: 36
Рейтинг сообщения:0
неужели все так сложно? ведь все ячейки в МК АВР 8-ми битные, тоесть если узнать адрес первой ячейки, со старшим байтом, то его можно прочитать и отправить, а младший байт наверное по адресу на 1 болшему чем старший, тоесть в следующей ячейке! Мне кажется эт предусмотрено синтаксисом, только незнаю как пишется В крайнем случае я могу сделать асемблерную вставку, на асемблере итак работаеш с 8-ми битными операндами или регистрами! Поправте меня если я не прав
Возможно ли такое в языке С, и если да, то как создать массив функций?? например имеется три функции - fun1, fun2, и fun3. и массив этих функций mas[fun1,()fun2(),fun3()] (на самом деле он будет двумерный, и с гораздо большим количеством элементов). так вот, как запускать эти функции обращаясь к элементам массива??. например пишу- mas[1]() и запускается функция fun1. или пишу mas[3]() и начнет выполняться функция fun3???
хочу с помощью такого метода построить сложное двумерное меню.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 14
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения