Помогите разобраться
|
|
a_sergeevich |
Дата: Чт, 21.02.2008, 23:48 | Сообщение # 1 |
Группа:
Заблокированные
Ранг:
Начал соображать
Сообщений:
24
Замечания:
±
На сайте с 11.12.2007
Статус:
Offline
|
Вот изучаю тут,значит PIC, и возник вопрос. Стоит ли использовать где возможно прерывания или всё таки если есть возможность их избежать,то не использовать , к примеру обработка нажатия кнопки ? И ещё команда PWM работает в фоновом режиме или нет ?
|
|
|
|
ADMIN |
Дата: Пт, 22.02.2008, 02:30 | Сообщение # 2 |
Администратор
Группа:
Администраторы
Ранг:
Специалист
Сообщений:
1086
Замечания:
±
На сайте с 20.08.2007
Статус:
Offline
|
Есть хардварный PWM, который будет работать в фоновом режиме. А насчет прерываний, там по обстоятельствам нужно смотреть, можно и без них, но где-то лучше с ними.
|
|
|
|
a_sergeevich |
Дата: Сб, 23.02.2008, 12:22 | Сообщение # 3 |
Группа:
Заблокированные
Ранг:
Начал соображать
Сообщений:
24
Замечания:
±
На сайте с 11.12.2007
Статус:
Offline
|
Скажите в чём прикол. На многих форумах PBP гнобят из-за того,что на нём якобы код получается объёмный, а мол надо писать на Си или асме, но вот в чём фишка пишу одну и туже программу на Си используя версии PCC и microC и на PBP-2.46 так в некоторых случаях код на барсике получается меньше. Программа кстати это опрос двух кнопок ,нажатие на одну увеличивает частоту на PORTB.3, а другая уменьшает, писал её(прогу) в разных интерпритациях , но пока преимуществ Си не увидел, а вот минусы есть код чуточку длиннее.
|
|
|
|
Romario |
Дата: Сб, 23.02.2008, 13:29 | Сообщение # 4 |
Группа:
Проверенные
Ранг:
Пытаюсь разобраться
Сообщений:
58
Замечания:
±
На сайте с 14.09.2007
Статус:
Offline
|
Честно говоря, непонятно в чем прикол формирования размера .hex файла в Бейсике и Си. Сам пробовал писать на Си, код то больше, то меньше Бейсика. На Бейсик гонят в основном продвинутые программисты, вскормленные на Си, но, честно говоря, Бейсик намного проще и понятнее. Но код на Асме всегда будет намного меньше, чем в Си и Бейсике.
|
|
|
|
a_sergeevich |
Дата: Сб, 23.02.2008, 15:34 | Сообщение # 5 |
Группа:
Заблокированные
Ранг:
Начал соображать
Сообщений:
24
Замечания:
±
На сайте с 11.12.2007
Статус:
Offline
|
На счёт асма понятно,но его в лом учить,просто решил провести эксперемент,что бы окончательно убедить себя в том,что барсик для меня лучший выбор,а то голову себе уже забил и Си и барсиком. Кстати функция button в microC весит намного больше чем такая же в барсике,короче будем сидеть на барсике :), а нужна будет скорость и оптимизация найдём готовое,что-нибудь на асме:)
|
|
|
|
Aleks_ey |
Дата: Сб, 23.02.2008, 21:06 | Сообщение # 6 |
Группа:
Пользователи
Ранг:
Начал соображать
Сообщений:
31
Замечания:
±
На сайте с 15.11.2007
Статус:
Offline
|
Нет большой разницы на чём писать на Бейсике или на Си так как реализованы они почти одинаково. На ассемблере написаны макросы (посмотрите в PBP файл pbppic14.lib), которые названы как команды на Бейсике или Си и компилятор собирает эти макросы в конечный код. Например команде LCDOUT соответствует такой-то макрос, а I2CREAD другой, и поэтому когда вы пишите на Бейсике эти команды компилятор заменяет их на набор инструкций ассемблера. И если несколько раз вставить в программу команду LCDOUT то компилятор столько раз повторит набор инструкций на ассемблере, поэтому команду LCDOUT лучше поместить в подпрограмму и тогда конечный код будет меньше.
|
|
|
|
a_sergeevich |
Дата: Вс, 24.02.2008, 00:46 | Сообщение # 7 |
Группа:
Заблокированные
Ранг:
Начал соображать
Сообщений:
24
Замечания:
±
На сайте с 11.12.2007
Статус:
Offline
|
Кстати я вот тут спрашивал про команду PWM она действительно не работает в фоне,но у меня в МК есть модуль CCP и т.к я изучаю барсик по книге Ч.Хелибайка то по началу отчаялся не найдя в ней команды для запуска ШИМ аппаратного, но вот полез в переведённый мануал и нашёл там такую команду,которая избавляет от работы с регистрами напрямую и всяких расчётов, это команда HPWM номер канала,режим работы(0-255),частота (зависит от МК и кварца,но не более 32767), с помощью этой команды я решил проблему ШИМ и написал прогу для регулировки мощности нагревателя с динамической индикацией мощности в процентах 30,50,70,90 сто не стал делать т.к нужен третий разряд индикатора, а у меня только два, МК pic16f628a. Если кого интересует могу выложить код и проект для протеуса. Да ешё есть возможность залить к себе Proteus 7.2 SP2 с руссификатором и кряком + краткое руководство по трассировке плат+руководство по макетированию, если есть желающие залью и выложу ссылку.
|
|
|
|
evgenb |
Дата: Вс, 24.02.2008, 13:04 | Сообщение # 8 |
Группа:
Проверенные
Ранг:
Понимаю
Сообщений:
91
Замечания:
±
На сайте с 14.09.2007
Статус:
Offline
|
a_sergeevich, Делитесь всем чем не жалко. И народ Вам будет благодарен. Только лучше в архив данного сайта. На файловом архиве http://zalil.ru/page/ хранится месяц с последней закачки.
|
|
|
|
a_sergeevich |
Дата: Вс, 24.02.2008, 17:47 | Сообщение # 9 |
Группа:
Заблокированные
Ранг:
Начал соображать
Сообщений:
24
Замечания:
±
На сайте с 11.12.2007
Статус:
Offline
|
Вот залил то, что у меня получилось с ШИМ , прошу строго не судить т.к это первый более менее серьёзный проект после мигания светодиодами, но замечания выслушаю.Сразу скажу индикация происходит в процентах и только до 90% т.к для 100% надо трёхразрядный индикатор,а у меня только два по одному,другой нужно заказывать по почте,а это долго,если кто захочет выводить три разряда,то я только за. Вот ссылка: http://slil.ru/25510833
|
|
|
|
ADMIN |
Дата: Вс, 09.03.2008, 06:30 | Сообщение # 10 |
Администратор
Группа:
Администраторы
Ранг:
Специалист
Сообщений:
1086
Замечания:
±
На сайте с 20.08.2007
Статус:
Offline
|
Quote (a_sergeevich) Скажите в чём прикол.На многих форумах PBP гнобят из-за того,что на нём якобы код получается объёмный, а мол надо писать на Си или асме... Тут дело, скорее, в оптимизации. Мне кажется, на си программа проще поддается оптимизации. Я с си знаком поверхностно, поэтому сильно рассуждать не буду на эту тему. Хотя на Basic я программы стараюсь оптимизировать по максимуму. Во-вторых, си, по-моему, язык профессиональный, а Басик - скорее, любительский, хотя и на нем сейчас можно делать практически все.
|
|
|
|
a_sergeevich |
Дата: Вс, 09.03.2008, 22:59 | Сообщение # 11 |
Группа:
Заблокированные
Ранг:
Начал соображать
Сообщений:
24
Замечания:
±
На сайте с 11.12.2007
Статус:
Offline
|
Кстати,хоть сайт и посвящён программированию на барсике, но вот я предлагаю ещё взглянуть на microC, хорошая штука. Вон на микрочиповском форуме уважают только то, что трудно и долго изучается,попробуй спроси,что - нибудь по microС или не дай бог по барсику,сразу первое,что ответят учи асм или пользуйся си,но хайтековским и ещё сильно хвалят мплаб,что в ней такого не пойму,мне например студия для барсика и встроеная иде в микроСи больше нравятся. Кстати если кого заинтересует микроСи то могу выложить сам компилер и очень хороший качественный мануал к нему. Да,почему я начал про микроСи,так вот там встроенная библиотека готовых функций намного больше чем в барсике и применять их не намного сложнее,а мануал скажу я вам очень хороший не в пример преводу мануала по барсику,так , что жду отзывов заливать или не заливать.Достаточно хоть одной просьбы, чтоб не зря так сказать. Да и думаю если расширим немного номенклатуру языков,публики будет по более. По Си могу помочь советом если у кого появятся трудности.Добавлено (10.03.2008, 4:59:48) --------------------------------------------- Просьба к админу переименовать тему, а то название у неё уже не актуальное, а новую заводить я думаю не стоит.
Сообщение отредактировал
a_sergeevich - Вс, 09.03.2008, 22:55
|
|
|
|
Anatel |
Дата: Пн, 10.03.2008, 08:03 | Сообщение # 12 |
Группа:
Пользователи
Ранг:
Новенький
Сообщений:
4
Замечания:
±
На сайте с 29.01.2008
Статус:
Offline
|
На счёт Quote (a_sergeevich) Да ешё есть возможность залить к себе Proteus 7.2 SP2 с руссификатором и кряком + краткое руководство по трассировке плат+руководство по макетированию, если есть желающие залью и выложу ссылку я уже перезалил сюда http://basicpic.moy.su/load/2 в раздел ФАЙЛЫ, так что скачивайте проверяйте, если какой архив битый, перезалью. Только киньте сообщение в личку с номером части.
|
|
|
|
mars_000 |
Дата: Ср, 12.03.2008, 17:06 | Сообщение # 13 |
Группа:
Проверенные
Ранг:
Начал соображать
Сообщений:
26
Замечания:
±
На сайте с 03.01.2008
Статус:
Offline
|
Quote (a_sergeevich) Вот залил то, что у меня получилось с ШИМ , прошу строго не судить т.к это первый более менее серьёзный проект после мигания светодиодами, но замечания выслушаю.Сразу скажу индикация происходит в процентах и только до 90% т.к для 100% надо трёхразрядный индикатор,а у меня только два по одному,другой нужно заказывать по почте,а это долго,если кто захочет выводить три разряда,то я только за. Вот ссылка: http://slil.ru/25510833 Если вас не затруднит дайте рабочую ссылку, а то на http://slil.ru пишет , что файла нету.
|
|
|
|
Aleks_ey |
Дата: Чт, 13.03.2008, 07:29 | Сообщение # 14 |
Группа:
Пользователи
Ранг:
Начал соображать
Сообщений:
31
Замечания:
±
На сайте с 15.11.2007
Статус:
Offline
|
mars_000, если не ошибаюсь то вот этот файл.
|
|
|
|
mars_000 |
Дата: Чт, 13.03.2008, 14:26 | Сообщение # 15 |
Группа:
Проверенные
Ранг:
Начал соображать
Сообщений:
26
Замечания:
±
На сайте с 03.01.2008
Статус:
Offline
|
Aleks_ey, За ссылочку спасибо!!
|
|
|
|