реклама на сайте
подробности

 
 
17 страниц V  < 1 2 3 4 > »   
Reply to this topicStart new topic
> Микроконтроллеры для начинающих, AVR, PIC, FUJITSU
DimG
сообщение Sep 5 2006, 03:07
Сообщение #16


Участник
*

Группа: Свой
Сообщений: 70
Регистрация: 4-04-06
Из: г. Омск
Пользователь №: 15 777



Цитата(Kofey Nik @ Aug 22 2005, 01:35) *
ПРостите, а где можно надыбать компилятор с Си для MCS-51? Франклин не советуют, избыточный код мол генерирует, советуют Кейл, а даже дем версии на сайте Кейла я не нашел. Есть кряканый, но на китайском языке тот сайт.
И вообще, насколько рационально переходить на Си?

Работая на Си, практически не зависишь от структуры контроллера. Посмотрел регистры специальных функций и достаточно. Остальное - дело компилятора. Если очень заботит скорость, то прежде чем переходить на ассемблер, лучше глянуть в библиотечные функции. Там обычно есть функции, реализующие особенности контроллера для более быстрого выполнения. Да и структура программы получается гораздо более логичной (для начинающих) при отсутствии оператора goto.
Отсюда вывод - переходить стоит!
Go to the top of the page
 
+Quote Post
Serj78
сообщение Sep 12 2006, 21:16
Сообщение #17


Знающий
****

Группа: Свой
Сообщений: 966
Регистрация: 27-05-06
Из: СПб
Пользователь №: 17 499



Пик и авр- это как ислам с христанством- каждый доказывает то, во что верит...

хотя сам начал с авр, изучал пики, 51 и 430 немного, но авр остается первым и любимым smile.gif

на си - однозначно переходить стоит- если это не тини12 конечно же...
Go to the top of the page
 
+Quote Post
koziy_mf
сообщение Jan 7 2007, 02:43
Сообщение #18


Местный
***

Группа: Свой
Сообщений: 434
Регистрация: 20-10-04
Пользователь №: 921



To SSerge:
Ya nachinal s BASIC programmirovat'...eshe v shkole...Tak chto ya - umstvenno otstaliy ??? Nu ne bilo na UKNCshkah i Poiskah togda drugih kompiliatorov... ABIDNO smile.gif


--------------------
Жизнь не такая долгая, чтобы писать программы на ассемблере...
Go to the top of the page
 
+Quote Post
exSSerge
сообщение Jan 7 2007, 15:20
Сообщение #19


Частый гость
**

Группа: Новичок
Сообщений: 136
Регистрация: 18-08-06
Из: Novosibirsk
Пользователь №: 19 655



Цитата(koziy_mf @ Jan 7 2007, 05:43) *
To SSerge:
Ya nachinal s BASIC programmirovat'...eshe v shkole...Tak chto ya - umstvenno otstaliy ??? Nu ne bilo na UKNCshkah i Poiskah togda drugih kompiliatorov... ABIDNO smile.gif

Ну почему сразу отсталый? Всего лишь оболваненный smile.gif, как и я кстати, если дословно понимать Дейкстру, это из него цитата в том сообщении. Герр проффессор просто немного сгустил краски, вот у него и получилась такая загогулина - гипербола, т.е. художественное преувеличение.

Что же до компиляторов - то их было просто вагон. На PDP под RT-11 были Фортран-4 и Фортран-77, целых два Паскаля, и два С (DECUS-овский и на основе pcc), и даже Кобол был. Вот только дисковых накопителей у УКНЦ не было.
А с SCSI-винчестером да с электронным диском, да ещё со скоростным сетевым интерфейсом - вполне можно было работать.
Go to the top of the page
 
+Quote Post
Alich
сообщение Apr 2 2007, 12:46
Сообщение #20


Частый гость
**

Группа: Свой
Сообщений: 106
Регистрация: 27-01-06
Из: г. Ярославль
Пользователь №: 13 686



Цитата(Alexandr @ Mar 25 2005, 09:52) *
Объясню: у PIC-ов слишком оригинальная архитектура, неудачная регистровая система, банки памяти - все это ИМХО конечно.


честно говоря, мне то же нравится пиковская архитектура. Хотя может просто потому, что начинал с 51. Вернее даже с 31. Но регигтровая система неудачная - первый раз слышу. Банки памяти - потому что память такая. У АВР она то же есть, но всего 32 регистра вроде. Или около того.

Если смотреть 18 серию, там уже попроще с банками. Страниц нет вообще. Кроме того, ечть 24 и dsПики.

Сам я начинал с асма. Потому что 10 лет назад не знал о компиляторах. Инета не было, а были 2 книги - одна по однокристалкам 51, второй толмут от микрочипа. Потом перешел на Си. Первое время делал асм вставки. Потом меньше и меньше. Считаю - что переход нужен.
Go to the top of the page
 
+Quote Post
Andy Mozzhevilov
сообщение Apr 2 2007, 14:16
Сообщение #21


Знающий
****

Группа: Свой
Сообщений: 877
Регистрация: 26-01-05
Из: Екатеринбург
Пользователь №: 2 206



Попахивает очередной священной войной.
Работайте, пофиг на чём. Можно работать на любых uC. Требования к интрегированным
интерфейсным модулям первичны, и энергопотребление - для критичных к этому параметру задач.
При прочих равных применяется то, с чем больше опыта.


--------------------
Пасу котов...
Go to the top of the page
 
+Quote Post
ptolemy
сообщение Mar 27 2008, 10:00
Сообщение #22





Группа: Участник
Сообщений: 10
Регистрация: 25-05-07
Из: SPb
Пользователь №: 27 954



Преподаю программирование для микроконтроллеров уже много лет. Пробовали PIC, Fujitsu, MCS51, ARM. Лучше всего для новичков прижился MCS-51. Литературы и методических материалов - море. Для "продвинутых парней" - ARM7. Язык программирования - немного ассемблера для MCS51, для затравки, дальше C. Для ARM7 - только C.


--------------------
Go to the top of the page
 
+Quote Post
john74
сообщение Apr 17 2008, 07:11
Сообщение #23





Группа: Новичок
Сообщений: 1
Регистрация: 17-04-08
Пользователь №: 36 816



Цитата(ptolemy @ Mar 27 2008, 13:00) *
Преподаю программирование для микроконтроллеров уже много лет


А где преподаете? Что посоветуете совсем начинающим (речь о радиокружке), есть какие-то очень доступные обучалки? Проблема вот в чем, если с обычной логикой все обычно схватывается на лету, то вот когда речь заходит о микроконтроллерах, то проблема начинается практически сразу на этапе объяснения архитектуры. Помнится в институте у нас были "чемоданы" на которых изучался асм, нет ли чего-нибудь подобного для AVR (PIC)


--------------------
Go to the top of the page
 
+Quote Post
rimpocha
сообщение Apr 17 2008, 13:53
Сообщение #24


Частый гость
**

Группа: Свой
Сообщений: 82
Регистрация: 6-03-07
Из: Новосибирск, Seattle
Пользователь №: 25 935



Цитата(Kofey Nik @ Aug 22 2005, 01:35) *
Есть кряканый, но на китайском языке тот сайт.


Я знаю китайский. Давайте ссылку. ^_^


--------------------
НГТУ, Физико-технический факультет, кафедра Лазерных систем
Go to the top of the page
 
+Quote Post
vladi1147
сообщение Apr 22 2008, 16:13
Сообщение #25





Группа: Новичок
Сообщений: 10
Регистрация: 22-04-08
Пользователь №: 36 993



Цитата(john74 @ Apr 17 2008, 11:11) *
...Что посоветуете совсем начинающим (речь о радиокружке)...


Добрый день!

Если позволите, я хотел бы выяснить у Вас в части радиокружка - а какие интересы у радиокружковцев? Я часто советую начинать освоение микроконтроллеров с помощью программ вида FlowCode. Но у меня нет ни опыта преподавания, ни навыков ведения кружков и т.д. То есть я могу ориентироваться только на мнение других.

Если Вас не затруднит, был бы признателен за совет практика.
Go to the top of the page
 
+Quote Post
Guest_opolo8_*
сообщение Apr 26 2008, 19:59
Сообщение #26





Guests






Хотелось бы освоить программирование контроллеров AVR на языке C++, может кто - нибудь знает какую - нибудь литературу по этой теме? Столкнулся с тем что все примеры для C, и книги которые есть посвящены программированию на C. Хотелось бы узнать как компилятор C, распологает программу в памяти контроллера. Заранее благодарю за ответы( если будут).
Go to the top of the page
 
+Quote Post
_Ivan_33
сообщение Apr 27 2008, 07:04
Сообщение #27


fpga designer
****

Группа: Свой
Сообщений: 613
Регистрация: 20-04-08
Из: Зеленоград
Пользователь №: 36 928



будут...
читай ШПАК Ю.А. Программирование микроконтрллеров AVR и PIC на языке С.
Евстифеев Микроконтроллеры AVR семейства tINY и mEGA...(ну или чета такое в этом роде) книга есть 2004 года и 2007 года
программа CodevisionAVR компилятор и загрузчик (чета загрузчик у меня плохо работает загружаю PonyProg)
программа VMLAB - симулятор простецкий типа просто отладчик кода
программа Proteus - крутой симулятор но AVR тама мало ждемс версию 7.3
а вообще отладчиками пользоваться имхо на них не надо надеяться - в них много глюков и недочетов...

Компилятор не располагает саму программу в контроллер есть программы загрузчики PonyProg или компилятор-загрузчик CodevisionAVR...

программа AVRStudio отладчик компилятор загрузчик - вроде не наврал...

нужно сделать тестовую плату например есть например тупо повесить на порт светодиодики (для начала) потом с микросхемами тестовую - знаю ссылку могу сказать


--------------------
Go to the top of the page
 
+Quote Post
Guest_opolo8_*
сообщение Apr 28 2008, 05:31
Сообщение #28





Guests






Спасибо за рекомендацию. Для отладки есть плата STK500, так что с этим проблем нет. Ю.А.Шпака просмотрел, надо будет все таки подробно почитать. Но там примеры все на C, в этом и проблема, знаю C++ и не очень хочется разбираться с особенностями C, но похоже что придется. А про память я немного другое имел ввиду, как программа располагается в пространстве памяти? Раньше программировал на ассемблере контроллеры с архитектурой MCS-51, так там все просто так как полностью сам управляешь расположением всей программы в пространстве памяти, а вот в C что то не совсем ясно.
Go to the top of the page
 
+Quote Post
dxp
сообщение Apr 28 2008, 07:55
Сообщение #29


Adept
******

Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343



Цитата(opolo8 @ Apr 28 2008, 12:31) *
Спасибо за рекомендацию. Для отладки есть плата STK500, так что с этим проблем нет. Ю.А.Шпака просмотрел, надо будет все таки подробно почитать. Но там примеры все на C, в этом и проблема, знаю C++ и не очень хочется разбираться с особенностями C, но похоже что придется.

Если знаете С++, значит, знаете и С, т.к. С является подмножеством С++. Особенностей С, в которых он не совпадает с С++, очень немного - на одной руке пальцев хватит пересчитать. Еще надо обратить внимание на то, какие возможности языка поддерживаются - они, как правило, не все поддерживаются (и это часто оправдано). Например, врядли найдете 8/16-разрядный процессор, компилятор которого поддерживал бы исключения. Но в остальном все вполне пристойно - классы, наследование, полиморфизм, шаблоны, все это на сегодняшний день уже есть.

Цитата(opolo8 @ Apr 28 2008, 12:31) *
А про память я немного другое имел ввиду, как программа располагается в пространстве памяти? Раньше программировал на ассемблере контроллеры с архитектурой MCS-51, так там все просто так как полностью сам управляешь расположением всей программы в пространстве памяти, а вот в C что то не совсем ясно.

Все как обычно. И тоже все управляемо. В библиотеке есть функция startup (ее названия у всех платформ свои, но суть одна), которая выполняет инициализацию регистров процессора (указатель стека и др.), а также статическую и динамическую инициализацию, после чего передает управление функции main путем вызова ее. Эта функция (startup) размещается в памяти программ всегда, и ей передается управление при сбросе процессора - т.е. когда процессор стартует с начального адреса (у разных платформ этот адрес тоже свой в силу аппаратных особенностей). Конкретные детали реализации этого - как что размещается и т.д. - надо смотреть документацию на используемую платформу. Как правило данные и код мапятся на именованные сегменты памяти, а сами сегменты размещаются в памяти в соответствии с директивами линкеру, задаваемыми в линкерном скрипте. Обычно пакет поставляется уже в таком виде, что там все как-то настроено по умолчанию, и уже можно начать сразу что-то писать. При желании можно разобраться, что к чему, и "перезаточить" под свои нужды/вкусы.


--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
Go to the top of the page
 
+Quote Post
Guest_opolo8_*
сообщение Apr 28 2008, 08:27
Сообщение #30





Guests






Болшое спасибо за исчерпывающий ответ. Осталось только разобраться какие классы и функции существуют для работы с контроллерами AVR.
Go to the top of the page
 
+Quote Post

17 страниц V  < 1 2 3 4 > » 
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th April 2024 - 09:23
Рейтинг@Mail.ru


Страница сгенерированна за 0.02833 секунд с 7
ELECTRONIX ©2004-2016