Хелп плиз! Три года писал для PIC-ов Atmel-ов на ассемблере, нормально получалось. Теперь решили переходить на Cygnal-ы и хочется перейти на С. В школе и институте учили Pascal. Подскажите, пожалуйста где взять нормальную электронную книгу уровня для чайников или обучалку, чтобы выучить С. И вообще, принимаются любые советы!
elserge
May 26 2005, 10:22
s_yakov
May 26 2005, 15:46
Цитата(Хтось @ May 26 2005, 12:33)
Хелп плиз! Три года писал для PIC-ов Atmel-ов на ассемблере, нормально получалось. Теперь решили переходить на Cygnal-ы и хочется перейти на С. В школе и институте учили Pascal. Подскажите, пожалуйста где взять нормальную электронную книгу уровня для чайников или обучалку, чтобы выучить С. И вообще, принимаются любые советы!
Керниган и Ричи. Язык С. можно найти в инете на русском языке.
Еще см. вложенные файлы
yuriyc
May 30 2005, 18:20
[/quote]
Керниган и Ричи. Язык С. можно найти в инете на русском языке.
Еще см. вложенные файлы
[/quote]
Вот ссылка
Керниган, Ричи. Язык C
http://cclib.nsu.ru/projects/gnudocs/texts/kernigan.htmlhttp://lib.ru/CTOTOR/kernigan.txt
Просто изучаете ANSI-С по книжке, затем разбираетесь в архитектуре микроконтроллера (организация памяти), смотрите особенности компилятора под этот микроконтроллер (как оформить прерывание, как поместить массив в память программ, как разместить переменные по определённым адресам и др., проверяете на всякий случай генерит - ли компилятор реентерабельный код функций по умолчанию или нужны специальные ключевые слова).
eternal
Jun 1 2005, 20:38
Я считаю так:
1. достаешь среду разработки кейл (для цыгналов рулит)
2. устанавливаешь
3. берешь в руки кернигана и мануал на компилятор кейл (обязат-но!)
4. пишешь простую программу, напр дрыгаем ножку в цикле.
5. смотришь в симуляторе как она дрыгается
6. постепенно усложняя задачу, пробуешь разные конструкции языка
7. маленько разобравшись с языком, разбирайся с особ-тями компилятора (прерывания, орг-ция памяти, прочие опции)
8. теперь можно начинать решать реальную задачу.
ЗЫ на сигнале надо внимательно разобраться с иниц-цией - она там после пиков может показаться нетривиальной. а если ничего не инитить, то работать не будет.
Совсем недавно на AVR форуме 'заруба' была. Взгляните интереса ради и получите много ответов на свой наболевший вопрос:
http://forum.electronix.ru/index.php?showtopic=8248
Виктория
Oct 7 2005, 08:27
Цитата(BVU @ Oct 7 2005, 13:11)
Совсем недавно на AVR форуме 'заруба' была. ...
Для начала пойдет любая книжка по с (по с++ лучьше не читать - много лишнего). Даже из серии для чайников. Почитать основные моменты операторы там, типы переменных, как программа строится. Качнуть компилер и посмотреть как в нем реализованы некоторые моменты. Это касаемо обработчиков прерываний, типов данных и пр. Кейл - отличный выбор. И пишется удобно и в симуляторе можно посмотреть результат своей работы. Привыкаешь только к нему. После него мне дискомфортно в яре. Ну и практиковаться побольше. Я када ставлю новый компилер первым делом пишу:
void main(void)
{
while(1)
{
}
}
Потом жму кнопку компиляции. Приятно видеть когда все успешно проходит. Значит все ключики правильно установлены и можно начинать проект...
Harbinger
Oct 7 2005, 15:39
Я пошел несколько по другому пути.
Вооружившись книжкой и исходниками, написанными коллегами, разбираюсь, как это работает (с ASM-51, кстати, было то же самое; еще раньше, в прошлом тысячелетии, примерно таким же образом занимался "взломом" программ для "Спектрумов" - тогда было интереснее, ибо исходников не было

). Так вроде бы быстрее получается, хотя - у каждого свой путь.
С Кейлом стал знакомиться, понятное дело, начиная с "Badcode";)
Все немного сложнее.Если вы 3 года занимаетесь программированием
микроконтроллеров и хотите продолжать , то книжка для "чайников"
вам не подойдет.Мощности микроконтроллеров возросли и задачи,
решаемые на них , усложнились.Последние компиляторы уже поддерживают
обьктные коды (С++).Развитие получают WEB-сервера на базе микроконтроллеров(дополнительно Java,Perl и т.д.).
Я считаю, что вам надо серьезно заняться изучением C/C++ и других
языков.Не все компиляторы полность напоминают Си.Например из компиляторов Си для пиков CC5,C2C,C18,Hi-Tech,только Hi-Tech наиболее
близко сравним с Си.Но и он не поддерживает много функций (порой важных)
языка Си.
Успехов.
_Alfred_
Oct 12 2005, 20:21
Из книг могу посоветовать:
Герберт Шилтд "Полный справочник по С++" 4-е издание (Вильямс 2004, 796с ).
Несмотря на то, что книга названа спавочником, в ней довольно подробно и доходчиво описаны все моменты, что б можно было читать "с нуля", и при том нет мусора для чайников.
В книге сначала рассматривается С, потом С++.
Когда я учил С++ этой книги еще не было, но знаю пару человек, учивших по ней, и отзывы наилучшие.
Вобшем, если будете покупать книги по С/С++, стоит обритить на нее внимание (в Харькове она стоит около 7-9$ ).
DukeXar
Oct 13 2005, 10:30
Еще на www.intuit.ru есть курсы по разработке под POSIX, мобильных приложений под POSIX, C++.
Виктория
Oct 13 2005, 11:23
Цитата(DukeXar @ Oct 13 2005, 15:30)
Еще на www.intuit.ru есть курсы по разработке под POSIX, мобильных приложений под POSIX, C++.
Платить наверно много

?
DukeXar
Oct 13 2005, 11:27
На самом деле нет. Там бесплатно - html. Конечно, если хочешь - можно заказать за деньги учебные материалы на CD или бумажные книги.
Но я для себя распечатал про POSIX и доволен, учитывая мое полное незнание этого стандарта. Я не скажу, что это супер-пупер курсы, но для студента, да еще и начинающего (например меня) - в самый раз.
Виктория
Oct 13 2005, 11:31
Разобралась. Идея вроде хорошая.
Charley
Nov 13 2005, 18:59
Привет!
А еще советую заглянуть на специализированный сайт по Cygnal с большим количеством статей по проектированию аппаратуры и программированию на С!!! Сайт
www.silabs.ru
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.