Proteus, KiCAD и другие ECAD Разработчик так или иначе сталкивается с системами автоматизированного проектирования. Данный раздел - по САПР. |
24.07.2005, 01:55
|
|
Частый гость
Регистрация: 13.03.2005
Сообщений: 13
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Написание программ для PIC на C
Вопрос всем!!!
Расскажите пожалуйста как вы научились программировать PIC на С. Что для этого нужно, чтобы этим овладеть. Кто и где брал книги чтобы этому научиться. Я просто в этом новичек и не знаю с чего начать. ASM не предлагать, сложновато.
Вверху приделан опрос. Ответьте на него, т.к. от этого будет зависеть то, на чем я буду учиться программировать.
|
|
|
|
24.07.2005, 03:02
|
|
Супер-модератор
Регистрация: 13.03.2004
Адрес: Minsk
Сообщений: 2,381
Сказал спасибо: 1,962
Сказали Спасибо 1,328 раз(а) в 578 сообщении(ях)
|
Re: Написание программ для PIC на C
Сообщение от DrEl
|
Вопрос всем!!!
Вверху приделан опрос. Ответьте на него, т.к. от этого будет зависеть то, на чем я буду учиться программировать.
|
Опрос-то не совсем корректный... Вот я например пишу программы для AVR и на C, и на асме (поддержка старых тем), и на "другом" - то есть Algorithm Builder. И что мне в опросе выбирать?
Если вы хотите научится программировать на С - так С он и в африке, и в микроконтроллерах С. Ну а тонкости касабельно архитектуры микроконтроллера - тут надо в руки даташит на него... Ну и на версию компилятора для этого МК.
|
|
|
|
24.07.2005, 12:27
|
|
Прописка
Регистрация: 27.11.2004
Сообщений: 175
Сказал спасибо: 0
Сказали Спасибо 12 раз(а) в 12 сообщении(ях)
|
Если английский не проблема, то
'C for dummies ' by Dan Gulkin , скачал как-то с edaboard.com ,
'The C programming language ,2nd edition ' by B.Kernighan and D.Ritchie, где-то в Сети лежало, видел где-то на русском.
Это про Си стандартный (ANSI C), компиляторы для мелкоконтроллеров могут иметь свои особенности.
'PICmicro MCU C An introduction to programming The Microchip PIC in CCS C' by Nigel Gardner, например (вроде на сонсиври.ком быдо где-то) Не зная Си в общем, эта книжка не поможет начать имо.
Программировать микроконтроллеры,по-моему, проще начинать с бейсика (сходи на http://www.mikroelektronika.co.yu/en...rs/mikrobasic/ и скачай сам бейсик и ебук по нему и по примерам разберешься по-немногу). Там же дают и Си и Паскаль для Пиков. (все с примерами и мануалами)
Если на каком-либо языке получается помигать светодиодами, остальное дело небольшого времени.
Удачи!
|
|
|
|
25.07.2005, 00:10
|
|
Частый гость
Регистрация: 13.03.2005
Сообщений: 13
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Спасибо таким как pomidor за такие развернутые ответы. Пока решил посмотреть что за зверь microBasic, только вот вопрос к pomidor'у, а имеется ли у него лицензионный ключ на эту программу (текущей версии).
А вопрос все еще остается открытым. Т.к. я так и не пойму как можно считывать именно из нужных мне портов или передавать в них что-то.
Кстати, существуют ли в рунете книжки по программированию микроконтроллеров на C, т.к. я пока только нашел на ASM.
|
|
|
|
25.07.2005, 08:26
|
|
Санек
Гость
|
Програмировать PICи надо начинать с изучения их архитектуры благо даташитов на русском завались и Си конечно тоже по любой нормальной книге, но особое внимание надо обратить на "Структурную разроботку программ на Си" т.е.управление программой при помощи for, ifelse, while, switch. Но учтите что для PIC16(PIC12-тем более и усе остальное) с его непреспособленной архитектурой много на всего хорошего на Си и на Висике(тем более) не напишешь, все зависит от ваших задач и планов на будущее что вы будете делать (самые приспособленные на данный момент к языкам высокого уровня это PIC1 . Это конечно зависит от ваших задач и компилятора (о котором вы вообще ничего не спросили ).
ИМХО Напоследок про компилятор: самый нормальный это HI-TECH компилер он интегрируется с MPLAB. Если вы у вас PIC18 то нужен HI-TECH PICC18.
|
|
|
|
25.07.2005, 08:47
|
|
Санек
Гость
|
Есть небольшой переводик www.ar2.mksat.net в PDF "Осбенности и раборачая среда PICC".
По поводу вопроса "я так и не пойму как можно считывать именно из нужных мне портов или передавать в них что-то".
Ну вообще у каждого регистра специального назначения(порт это тоже регистр) есть свое имя или адрес в крайнем случае. На BASICе я конкретно написать не могу как это будет выгдядеть.
|
|
|
|
25.07.2005, 10:23
|
|
Прописка
Регистрация: 27.11.2004
Сообщений: 175
Сказал спасибо: 0
Сказали Спасибо 12 раз(а) в 12 сообщении(ях)
|
2DrEl
2 кслов hex'а за глаза хватит, пока изучаешь, а потом либо кряк найдется (на сонсиври.ком), либо на что другое перейти можно.
|
|
|
|
26.07.2005, 03:34
|
|
Частый гость
Регистрация: 13.03.2005
Сообщений: 13
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
To pomidor
Скачал MikroBasic. Был в шоке. Лучше еще ничего не видел. Наверное буду на нем программировать, или еще и MikroPascal скачаю (я этот язык знаю). Кстати, нашел кряк для последней версии MikroBasic'а, если нужен, то могу дать.
|
|
|
|
26.07.2005, 08:51
|
|
Почётный гражданин KAZUS.RU
Регистрация: 10.05.2003
Адрес: Москва
Сообщений: 2,531
Сказал спасибо: 737
Сказали Спасибо 1,927 раз(а) в 799 сообщении(ях)
|
если что-то простое, то да, Васик - легко и просто... А мне всегда памяти не хватает в МК Элементарная программа с 3 кнопками, 2 термометрами, часами с будильником и календарем с трудом в 876 влезает...
__________________
Опыт - это школа, в которой человек узнает, каким дураком он был раньше.
|
|
|
|
27.07.2005, 00:06
|
|
Частый гость
Регистрация: 13.03.2005
Сообщений: 13
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Сообщение от DK
|
если что-то простое, то да, Васик - легко и просто... А мне всегда памяти не хватает в МК Элементарная программа с 3 кнопками, 2 термометрами, часами с будильником и календарем с трудом в 876 влезает...
|
Т.е. ты хочешь сказать, что программа написанная на Барсике весит на много больше, чем написанная на АСМе?
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 18:40.
|
|