| Микроконтролери и електроника http://mcu-bg.com/mcu_site/ |
|
| Бъгове или грешка ... почвам хардуерно http://mcu-bg.com/mcu_site/viewtopic.php?f=7&t=4624 |
Страница 1 от 1 |
| Автор: | m.g.a [ Съб Авг 11, 2007 8:06 pm ] |
| Заглавие: | Бъгове или грешка ... почвам хардуерно |
Здравейте на всички ..занимавам се от скоро с микроконтролери и едно нещо ме озадачава ,ето тука едно малко кодче което компилирам през протон Device 16F628A XTAL 4 Dim T1 As BYTE MAIN: CMCON = 7 TRISA = 1 TRISB = 0 Inc T1 If T1 > 0 Then PORTB.3 = 1 DelayMS 10 PORTB.3 = 0 DelayMS 10 T1 = 0 GoTo MAIN End. въпросът ми е защо след като променливата Т1 очевидно нараства с еденица и Ифа трябва да сработи това не става.Изкам да направя брояч и когато трябва да сравня стойноста му със константа и да сработи някакъв ИФ нищо не се получава нямам опит със програмите и се чудя дали нее някакъв бъг или нещо не съм настроил,тествам със Протеус 7.1 Знам че въпроса изглежда като за някой гадател но незнам как да попитам друго яче ... изчето маса документация и би трябвало всичко да работи но вече не знам какво да чета или гледам |
|
| Автор: | elektronchika [ Съб Авг 11, 2007 11:22 pm ] |
| Заглавие: | |
аз съм моя скромен опит в програмирането бих казал: 1. GoTo MAIN - няма смисъл пак да изключаш АЦП-то и да инициализираш потровете. Просто е безмислено. Трябва да отиваш директно на IF-a. 2. Защо мислеш че Т1 се увеличава всеки цикъл? Т1=0? Не трябва да ли бъде нещо от сорта на Т1=Т1+1? ПС - и преди IF-а кажи Т1=1 или в IF-a Т1>=0. Според мен трябва да е така: ... Inc T1 T1=1 IF1: If T1 > 0 Then PORTB.3 = 1 DelayMS 10 PORTB.3 = 0 DelayMS 10 T1 = T1+1 GoTo IF1 ... |
|
| Автор: | m.g.a [ Съб Авг 11, 2007 11:30 pm ] |
| Заглавие: | |
elektronchik прав си но и така би трябвало да работи според мен.... може и да греша сега ще пробвам и твойто кодче... има ли някакви шашми за вътрешния генератор да се прави като се връзва контролера ... горния проблем е от захранващото напрежение , вързах му един акомулатор и сега няма проблем |
|
| Автор: | elektronchika [ Нед Авг 12, 2007 1:12 pm ] |
| Заглавие: | |
не съм се занимавал с Протон и не знам как се настройва осцилатора какъв тип да е. Прочети help-a. |
|
| Автор: | Cekins [ Нед Авг 12, 2007 5:59 pm ] |
| Заглавие: | |
Пробвай да сложиш endif там където искаш да ти свърше if-a. Така както е написано иф-а ще направи само портб.3=1. Освен това за напред да знаеш, че този компилатор не нулира "физически" клетката която си дефинирал към променливата. Трябва да се направи ръчно. Примерно преди Main трябва да има T1=0. И все пак не знам защо но така както е написан кода при мен си работи. |
|
| Автор: | m.g.a [ Пон Авг 13, 2007 10:57 am ] | |||||||||
| Заглавие: | ||||||||||
Пробвах по всякакви начини но щом сложа някакъв израз от сорта на а>б и умира ... и ако наистина не нулира променливите ... това може и да е проблема.Ще пробвам като се върна от работа .. съмнява ме че кракнатия компилатор изпуска по някоя инструкция както пишат някои хора по форумите .Например на микроелектроника бейсика като го пачна и после като дебъгвам кодче със един цикъл и гледам че почва да цикли малко след loop-a там където няма ни условие ни дявол което си е |
||||||||||
| Автор: | milenjs [ Пон Авг 13, 2007 6:56 pm ] | ||
| Заглавие: | |||
Как да не работи??? Ами кажи нещо повече де - с какъв симулатор го пробваш, какво точно не работи. Лично аз го пробвах от чисто любопитство и сантиментални спомени - копи - пасте от твоя пост в Протона - компилиране и тест в Протеуса и ... работи Ето ти и резултата от компилацията ако се съмняваш в компилатора!
|
|||
| Автор: | m.g.a [ Пон Авг 13, 2007 7:58 pm ] |
| Заглавие: | |
написах го на proton 3 свалих го от sonsivri тествам с протеус 7.1 ...би трябвало да мига но при мене не помръдва от към код трябва да работи но от към настройка на протеуса или от скапан компилатор това ще установя ... сега с твоя фаил ще се види дали компилатора е зле... а мога ли да сравня асемблерския файл за разлики , дали ще си проличи ако има проблеми ... П.П. Пробвах го файла и работи .. значи скапания компилатор е бъгав ... може ли някой да даде работещ протон... |
|
| Автор: | milenjs [ Пон Авг 13, 2007 9:39 pm ] |
| Заглавие: | |
Няма да е от компилатор, няма да е от симулатора, по-добре чети добре описанието на симулатора и как се работи с него. Зареждаш ли въобще файла в процесора при симулацията? Осцилатор задал ли си? ASM-то може да го ползваш за сравнение да видиш какво е надробило, пуснал съм компилация без оптимизации, така че трябва да е като твоя асм... |
|
| Автор: | m.g.a [ Пон Авг 13, 2007 9:43 pm ] | ||
| Заглавие: | |||
milenjs прочетох как да го симулирам и от два дена ми ври главата от разни документи но ето че твоя файл работи , сега ще поразгледам асемблера да видя какво липсва. Благодарско за съдействието.. Ето и сравнението и разбирасе разликите са очевидни ...един ред е преди друг ,липсват някои нещица въобще мазало
|
|||
| Страница 1 от 1 | Часовете са според зоната UTC + 2 часа [ DST ] |
| Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |
|