![]() |
|
|
Инструментарий Тестеры, паяльники, осциллографы, программаторы, IDE. |
![]() |
|
Опции темы | Опции просмотра |
![]() |
#26 | |
Senior Member
|
![]() Цитата:
зачем эта строчка в коде? Код:
for(i=0;i<=0x0a;i++) //kontrast {send_com(0xd6);}; Код:
send_com(0xd6); и функцию void lcd_wr можно так написать Код:
void lcd_wr (unsigned short buf){ unsigned short i; for(i=8;i!=0;i--) { PORTA.F0 = buf.f7; PORTA.F1=1; PORTA.F1=0; buf=buf<<1; } }
__________________
Если проблему можно решить за деньги, то это не проблема, это расходы. Еврейская мудрость. Последний раз редактировалось masterzx; 19.02.2009 в 04:47. |
|
![]() |
![]() |
#27 | |
Senior Member
Регистрация: 26.02.2007
Адрес: Челябинск
Возраст: 69
Сообщений: 2,215
Вес репутации: 1898/87 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() Цитата:
Код:
if ((buf & (1 << i))==(1 << i)) {PORTA.F0 = 1;} else {PORTA.F0=0;}; Код:
if (buf & (1 << i)) PORTA.F0 = 1; else PORTA.F0 = 0; ![]() Код:
PORTA.F0 = (buf & (1<<i))? 1 : 0; |
|
![]() |
![]() |
#28 |
Senior Member
Регистрация: 26.02.2007
Адрес: Челябинск
Возраст: 69
Сообщений: 2,215
Вес репутации: 1898/87 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
Вообще, цикл repeat ... until в Паскале (или do ... while в Си) принципиально эффективнее цикла do while begin ...end (while () {...}).
|
![]() |
![]() |
#29 | |
Senior Member
Регистрация: 02.12.2008
Адрес: Где-то между Нижним и Казанью
Возраст: 48
Сообщений: 1,071
Вес репутации: 707/58 ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() Цитата:
для уменьшения контрастности другая команда. |
|
![]() |
![]() |
#30 | |
Senior Member
Регистрация: 02.12.2008
Адрес: Где-то между Нижним и Казанью
Возраст: 48
Сообщений: 1,071
Вес репутации: 707/58 ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() Цитата:
Буду пробовать. Учиться буду. ЗЫ: Все причеденные мной примеры написаны только для сравнения разных компиляторов для выяснения возможностей по уменьшению размера кода. Хотя, я могу согласиться с тем, что приведенные примеры не совсем корректны для выбора компилятора (языка программирования) Один небольшой плюс паскаля - я считаю, что код более нагляден. Писался то паскаль для обучения... Если попытаться расшифровать этот код - Код:
PORTA.F0 = (buf & (1<<i))? 1 : 0; то можно по неопытности голову сломать... Последний раз редактировалось МимоПроходил; 19.02.2009 в 11:49. |
|
![]() |
![]() |
#31 |
Senior Member
|
![]()
Появился новый MikroC PRO http://www.mikroe.com/forum/viewtopic.php?t=18620
__________________
License MikroC, MikroC PRO and EasyPIC5 by mikroElektronika (the dead mikroICD replaced PICKit2 & PICKit3) |
![]() |
![]() |
#32 | |
Super Moderator
Регистрация: 28.02.2007
Возраст: 42
Сообщений: 3,577
Вес репутации: 4386/125 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() Цитата:
![]() Кроме того, симулятор теперь корректно работает со стеком для PIC18. Продолжу портирование OSA на этот компилятор. Последний раз редактировалось tester; 05.03.2009 в 19:49. |
|
![]() |
![]() |
#33 |
Senior Member
|
![]()
__________________
License MikroC, MikroC PRO and EasyPIC5 by mikroElektronika (the dead mikroICD replaced PICKit2 & PICKit3) |
![]() |
![]() |
#34 |
Senior Member
Регистрация: 26.02.2007
Адрес: Челябинск
Возраст: 69
Сообщений: 2,215
Вес репутации: 1898/87 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
выписывать все иногда довольно утомительно. Скажем, гораздо проще написать пару скобок {...}, чем писать каждый раз begin ... end. Си писался-то для программирования. Или нет?
|
![]() |
![]() |
#35 | |
Super Moderator
Регистрация: 28.02.2007
Возраст: 42
Сообщений: 3,577
Вес репутации: 4386/125 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() Цитата:
Потестировал его на простых примерах и нарвался на кучу ошибок: путаница с указателями, с typedef'ами, с вложенными структурами, с локальными переменными. На выходных буду готовить им багрепорт. Проблема в том, что ошибки проявляются по-хитрому: поменяешь местами определения переменных - и все работает; добавишь функцию - все падает. Так что на каждую ошибку нужно будет подготовить конкретную mikro-программу с мегаописанием. Да и по оболочке тоже много претензий: табуляция прыгает как хочет, копи-паст обрезает первый символ и переводы строк и т.д. |
|
![]() |
![]() |
#36 |
Senior Member
|
![]()
Спасибо тебе за твой труд
![]() Будем ждать нормального реализа компилятора от них и от тебя ОСУ под этот компилятор ![]()
__________________
Если проблему можно решить за деньги, то это не проблема, это расходы. Еврейская мудрость. |
![]() |
![]() |
#37 |
Junior Member
Регистрация: 24.06.2008
Сообщений: 21
Вес репутации: 100/43 ![]() ![]() |
![]()
Прошу помощи.
Воспользовался библиотекой Manchester Code в составе MikroC. Проблема с Man_receive. Кусочек кода Код:
temp = Man_Receive(error); if(error !=255) { Man_Send(temp);} На входе: 00000101 ; 00000110 ; 00000111 На выходе: 00010100 ; 00010010 ; 00010000 Это как-то криво работает библиотека, или я ее не правильно использую? Результаты смотрел Logic Tool -ом в составе PicKit2. MCU - PIC16F684. Заранее спасибо за помощь. |
![]() |
![]() |
#38 | |
Senior Member
|
![]() Цитата:
http://www.microchip.su/showpost.php...26&postcount=7
__________________
License MikroC, MikroC PRO and EasyPIC5 by mikroElektronika (the dead mikroICD replaced PICKit2 & PICKit3) |
|
![]() |
![]() |
#39 |
Junior Member
Регистрация: 24.06.2008
Сообщений: 21
Вес репутации: 100/43 ![]() ![]() |
![]()
В том то и дело, что у меня не хочет работать
![]() Значит придется свой декодер писАть... А заодно и генератор... |
![]() |
![]() |
#40 |
Senior Member
|
![]()
Не знаю, что у Вас, а я брал 2 PIC, соединял напрямую и все работало, а через RF была проблема. Использовал MikroC 8.2.0.0.
__________________
License MikroC, MikroC PRO and EasyPIC5 by mikroElektronika (the dead mikroICD replaced PICKit2 & PICKit3) |
![]() |
![]() |
#41 |
Junior Member
Регистрация: 24.06.2008
Сообщений: 21
Вес репутации: 100/43 ![]() ![]() |
![]()
У меня через RF.
На выходе приемника (т.е. на входе PIC) сигнал такой же, как на выходе PIC в передатчике. Не пойму, какая может быть проблема? |
![]() |
![]() |
#42 |
Guest
Сообщений: n/a
|
![]() |
![]() |
#43 | |
Senior Member
Регистрация: 26.02.2007
Адрес: Челябинск
Возраст: 69
Сообщений: 2,215
Вес репутации: 1898/87 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() Цитата:
|
|
![]() |
![]() |
#44 | |
Senior Member
Регистрация: 02.12.2008
Адрес: Где-то между Нижним и Казанью
Возраст: 48
Сообщений: 1,071
Вес репутации: 707/58 ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() Цитата:
Код:
if условие1 then if условие2 then действие; Код:
if условие2 then действие; Код:
if условие1 then begin if условие2 then действие;end; Конструкцию типа: Код:
if (условие1) and (условие2) then действие; В микроСи, к сожалению, подобный код не проверял пока. |
|
![]() |
![]() |
#45 |
Senior Member
|
![]()
__________________
Если проблему можно решить за деньги, то это не проблема, это расходы. Еврейская мудрость. |
![]() |
![]() |
#46 |
Senior Member
Регистрация: 26.02.2007
Адрес: Челябинск
Возраст: 69
Сообщений: 2,215
Вес репутации: 1898/87 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
Причем, все одинаково, что
Код:
if (условие1) if (условие2) действие; Код:
if (условие1 && условие2) действие; |
![]() |
![]() |
#47 |
Senior Member
Регистрация: 12.04.2008
Сообщений: 663
Вес репутации: 907/58 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
В микроси фо дспик нужно частоту выставлять в окошке. Возник вопрос- какую частоту выбрать: после плл или, допустим, фрц, если использую внутренний ген? И еще, в выборе среды между MPLAB+C30 и микроси на чем бы советовали начинающему остановиться, в частности, для дспик30?
Последний раз редактировалось mos; 12.03.2009 в 10:46. |
![]() |
![]() |
#48 |
Senior Member
|
![]()
Основную на которой ядро работает, тоесть после плл
__________________
Если проблему можно решить за деньги, то это не проблема, это расходы. Еврейская мудрость. |
![]() |
![]() |
#49 |
Junior Member
Регистрация: 24.06.2008
Сообщений: 21
Вес репутации: 100/43 ![]() ![]() |
![]() |
![]() |
![]() |
#50 |
Senior Member
|
![]()
А у Вас, что трансивер используется?
__________________
License MikroC, MikroC PRO and EasyPIC5 by mikroElektronika (the dead mikroICD replaced PICKit2 & PICKit3) |
![]() |
![]() |
Здесь присутствуют: 2 (пользователей: 0 , гостей: 2) | |
Опции темы | |
Опции просмотра | |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вопрос по GSM-модемам и _организации_ работы с ними на PIC | Максим2008 | Продукция MICROCHIP | 17 | 21.11.2008 04:02 |
Подскажите, пожалуйста, где толковую литературу на русском языке по dspic33f взять (в основном АСМ интересует) | dr_Sash | Продукция MICROCHIP | 42 | 29.03.2008 16:22 |
Есть вопросы по алгоритму работы устройства на пике. | 40grad | Продукция MICROCHIP | 9 | 27.10.2007 15:55 |
Вопросы по MPLAB C30 | SergeyKN | Продукция MICROCHIP | 4 | 08.10.2007 12:48 |
Пишу руководство по RS485 и есть вопросы | pvl2000 | Cетевые протоколы и технологии | 2 | 16.04.2007 00:57 |