Отговори на тема  [ 97 мнения ]  Отиди на страница 1, 2, 3, 4, 5 ... 7  Следваща
Помош за синтаксис или още нещо... 
Автор Съобщение
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Пон Окт 26, 2015 10:14 pm
Мнения: 46
Мнение Помош за синтаксис или още нещо...
Този път съвсем кратък въпрос:

- MPLAB и компилатор CX8;

Този скрипт си върви на симулатора, само че при отворен бутон, вместо затворен, но върти до ELSE и почва отначало.
При затваряне на контактите, програмата спира и изходите D се деактивират.
При отваряне - продължава да си работи, но си върти само първата част, сякаш за "else" го боли оная работа...

Предварителни благодарности за конкретна помощ.


Прикачени файлове:
Proteus.jpg
Proteus.jpg [ 393.62 KiB | Прегледано 4177 пъти ]
Script.txt [866 Байта]
309 пъти
Чет Окт 29, 2015 7:19 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Пет Фев 04, 2005 9:59 pm
Мнения: 6019
Местоположение: София
Мнение Re: Помош за синтаксис или още нещо...
За почни от това, че схемата ти е грешна.
За да разбереш къде ти е грешката в схемата: Сложи само 1 контролер, 1 светодиод, 1 кондензатор и 2 резистора, без нищо друго.
Като се научиш да мигаш светодиода, пак се обади да питаш.

_________________
Warriors of the Night, ASSEMBLER!!!


Чет Окт 29, 2015 7:27 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Пон Окт 26, 2015 10:14 pm
Мнения: 46
Мнение Re: Помош за синтаксис или още нещо...
Светодиода мига без проблем, както и се включва и изключва. Кажи друго, ако имаш или ще си играем на гатанки?


Чет Окт 29, 2015 8:11 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Фев 07, 2012 11:22 pm
Мнения: 3084
Мнение Re: Помош за синтаксис или още нещо...
2 резистора - един заMCLR, друг подпиращ за бутона.


Чет Окт 29, 2015 8:25 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Фев 07, 2012 11:22 pm
Мнения: 3084
Мнение Re: Помош за синтаксис или още нещо...
LCD_clear () е излишна .
Да повторя - delay e почти излишна функция. Използва се при инициализиране на LCD , при подаване на звуков сигнал и подобни ситуации. Специално в случая е излишна (в главния цикъл) и води до гршени навици . Проучи т.нар. systick таймер.


Чет Окт 29, 2015 8:32 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Пон Окт 26, 2015 10:14 pm
Мнения: 46
Мнение Re: Помош за синтаксис или още нещо...
Благодаря. Това с двата резистора вече го направих. Сега махам излишните редове и пробвам, дали ше прескочи.


Чет Окт 29, 2015 8:47 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Пет Фев 04, 2005 9:59 pm
Мнения: 6019
Местоположение: София
Мнение Re: Помош за синтаксис или още нещо...
dimitrov2000 ти въобще разбра ли защо "прескача", когато е само с 1 резистор?

_________________
Warriors of the Night, ASSEMBLER!!!


Чет Окт 29, 2015 8:49 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Пон Окт 26, 2015 10:14 pm
Мнения: 46
Мнение Re: Помош за синтаксис или още нещо...
stefan63 написа:
LCD_clear () е излишна .
Да повторя - delay e почти излишна функция. Използва се при инициализиране на LCD , при подаване на звуков сигнал и подобни ситуации. Специално в случая е излишна (в главния цикъл) и води до гршени навици . Проучи т.нар. systick таймер.


Опростих скрипта по съвета ти, сега текста не прeмигва, но продължава да изписва само първия ред. Не ще да продължи нататък.


Lcd_Init();

while(1)

{ if(RB0 == 0) //If Switch is pressed

{ Lcd_Set_Cursor(2,1);
Lcd_Write_String("SWITCH ON");
__delay_ms(2000);
}

else

{Lcd_Set_Cursor(2,1);
Lcd_Write_String("OFF");
__delay_ms(2000);

}

}

return 0;
}


Чет Окт 29, 2015 8:57 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Пет Фев 04, 2005 9:59 pm
Мнения: 6019
Местоположение: София
Мнение Re: Помош за синтаксис или още нещо...
Продължавай да се мъчиш и някой ден, ще се сетиш къде е заровено кучето.

_________________
Warriors of the Night, ASSEMBLER!!!


Чет Окт 29, 2015 10:41 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Фев 07, 2012 11:22 pm
Мнения: 3084
Мнение Re: Помош за синтаксис или още нещо...
if (RB0 == 0)
сигурен ли си, че така се проверява състоянието на входен порт?
Потърси пример и описание из бумагите на компилатора


Чет Окт 29, 2015 11:24 pm
Профил
Ранг: Почетен член
Ранг: Почетен член

Регистриран на: Съб Ное 29, 2014 10:11 am
Мнения: 774
Мнение Re: Помош за синтаксис или още нещо...
Пусни цялата програма че ми стана интересно


Пет Окт 30, 2015 12:12 am
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Пон Окт 26, 2015 10:14 pm
Мнения: 46
Мнение Re: Помош за синтаксис или още нещо...
stefan63 написа:
if (RB0 == 0)
сигурен ли си, че така се проверява състоянието на входен порт?
Потърси пример и описание из бумагите на компилатора


Това го взех от твоя пример, но е вярно. Навсякъде е така. Т.е. If /нещо/ then /друго нещо/ си работи.
Според мен проблема идва от else. Компилатора го приема, като синтаксис, но не прави нищо след това.
Повтаря си лупа на първата част и държи изписан текста на екрана. Ако има заложено закъснение при стартиране
си го изпълнява и си се стартира наново.
Като промениш състоянието на ключа, екрана замръзва там където е. Ако е на надпис - си остава надписа,
ако е на празно, си остава празно. Т.е. програмата спира, изходните портове на чипа /на симулатора/ стават неактивни /сиви/.
Ако върнеш ключа обратно си тръгва пак.


Пет Окт 30, 2015 12:33 am
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Пон Окт 26, 2015 10:14 pm
Мнения: 46
Мнение Re: Помош за синтаксис или още нещо...
s7ama7 написа:
Пусни цялата програма че ми стана интересно


И на мен ми е интересно брат, но още няма нищо за пускане. На етап експерименти, стъпка по стъпка съм. Идеята ми е да използвам чипа за многофункционална графична индикация на колата. Отворена врата, капак, чек, термометър, и т.н. Засега все аналогови работи, но все отнякъде трябва да се почне.
Миналата седмица се захванах с тая работа, че отваря доста възможности, както за хоби, така и по предназначение. Станах пишман, но съм инат и
ще го изкопая докрай.


Пет Окт 30, 2015 12:39 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Фев 07, 2012 11:22 pm
Мнения: 3084
Мнение Re: Помош за синтаксис или още нещо...
Цитат:
Станах пишман

недей така :D , още е рано.
Пусни новата схема да я видим.
Тука има доста хора ,дето работят на симулатор, и може да дадат идея.
Предполагам,че имаш проблеми ойоло ресет пина и конфигурационните битове.


Пет Окт 30, 2015 8:07 am
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Пон Окт 26, 2015 10:14 pm
Мнения: 46
Мнение Re: Помош за синтаксис или още нещо...
Отначало не тръгваше въобще и проблема се оказа в недоглеждане именно около ресет пина. По закона на Мърфи, след като изгубих около 6 часа в напразно блъскане по кода, забелязах че в конфигурацията на процесора ресет пина е активиран, а на схемата не го бях вързал въобще, та потегли някак си...Затова бях писал постнал в предишния пост двата кода за сравнение. Оказа се недоглеждане.

Тук ситуацията изглежда различна. Парадокса /за мен разбира се/ е, че другата тестова програма, в която чипа си изписва разни текстове, си работи без проблем. Когато смениш кода на програмата се появява настоящия проблем. Не иска да реагира на промяна на входа.
Конфигурационните битове засега са ми мъгла. Качих настройката, която MPLAB ми генерира.


Пет Окт 30, 2015 12:38 pm
Профил
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 97 мнения ]  Отиди на страница 1, 2, 3, 4, 5 ... 7  Следваща

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 4 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни