Микроконтролери и електроника
http://mcu-bg.com/mcu_site/

Проблем с конфигуриране на PORTA при PIC18F4520
http://mcu-bg.com/mcu_site/viewtopic.php?f=7&t=7260
Страница 1 от 1

Автор:  E1 [ Сря Окт 28, 2009 11:48 pm ]
Заглавие:  Проблем с конфигуриране на PORTA при PIC18F4520

В програма използвам PORTA за управление на катодите на седемсегментен индикатор. Но PORTA,2 не реагира-постоянно е с ниско ниво. Когато програмно зададох PORTB да следва стойностите на PORTA, се оказа, че и при него PORTB,2 не се активира. Същевременно, при задаване да се управлява PORTB директно от преместващия регистър, той работи коректно. Не виждам пропуск в конфигурациите, но знам ли... Ето ги и тях:
ADCON1=0x0F;
T0CON=0xC4;
TMR0L=0;
shifter=1;
PORTA=0;
TRISA=0;

Какво пренебрегвам?

Автор:  head_up [ Чет Окт 29, 2009 12:52 am ]
Заглавие: 

виж, не съм от вещите в пиковете, но си спомням една магическа стойност за тяхното АЦП - 0х07 :D погледни картинката, ти правиш PORTA, 2 да ти бъде REF като буташ 0x0F (ADCON1).

EDIT: то би трябвало и PORTA, 3 да ти куца, като гледам, ама от него не се жалваш?

Прикачени файлове:
pic18_AD.JPG
pic18_AD.JPG [ 53.52 KiB | Прегледано 2150 пъти ]

Автор:  plameniv [ Чет Окт 29, 2009 1:03 am ]
Заглавие:  Re: Проблем с конфигуриране на PORTA при PIC18F4520

E1 написа:
В програма използвам PORTA за управление на катодите на седемсегментен индикатор. Но PORTA,2 не реагира-постоянно е с ниско ниво. Когато програмно зададох PORTB да следва стойностите на PORTA, се оказа, че и при него PORTB,2 не се активира. Същевременно, при задаване да се управлява PORTB директно от преместващия регистър, той работи коректно. Не виждам пропуск в конфигурациите, но знам ли... Ето ги и тях:
ADCON1=0x0F;
T0CON=0xC4;
TMR0L=0;
shifter=1;
PORTA=0;
TRISA=0;

Какво пренебрегвам?

Къде мислиш че трябва да е конфигуриращата команда, преди или след нулиране на порта ?
За да извършиш промяна в битовете за конфигурацията също трябва и да си в правилната банка !

ADCON1=0x0F;
T0CON=0xC4;
TMR0L=0;
shifter=1;
TRISA=0;
PORTA=0;

Автор:  E1 [ Чет Окт 29, 2009 1:56 am ]
Заглавие: 

Проблемът е друг, явно. Профилактично послушах и двата съвета. При размяна на местата на PORTA и TRISA нищо не се променя. А при 0x07 програмата отказва напълно. Пуснах запитване до производителя на компилатора, защото примерът е на тяхна база и би трябвало поне основната част да работи. Ако не стане, ще си купя 16F887, с който съм пробвал вече и знам, че ще стане. Натиснало ме е времето и не мога да отделям прекалено много от него за търсене на грешката. Ще се върна на нея след това.

Автор:  rumen65 [ Чет Окт 29, 2009 10:26 am ]
Заглавие: 

Пропуснал си инициализацията на аналоговите компаратори, които са на PORTA. Примера е от Pdf-а на процесора, на асемблер. Трябва да заредиш в CMCON -> 7.

Прикачени файлове:
18f4520_pdf.JPG
18f4520_pdf.JPG [ 21.6 KiB | Прегледано 2151 пъти ]

Автор:  head_up [ Чет Окт 29, 2009 11:48 am ]
Заглавие: 

ей, вярно че това животно имало и компаратори :? съвсем ги бях забравил :oops: Е1, проблема не е в телевизора на микрочеп, нашенски си е бъга - слушай какво казва rumen65 и изключвай компараторите :) трябва да стане... ако ли не значи си опукал нещо по порта...

Автор:  E1 [ Чет Окт 29, 2009 3:47 pm ]
Заглавие: 

Благодаря за съветите. Направих го и това с компараторите снощи, но проблемът остана. И понеже имам възможността да си контактувам лично с авторите на компилатора, занесох се до тях, уверен, че откривам топлата вода. Само дето изадиха същата развойна среда, сложиха процесор, въведоха-същата програма... и всичко тръгна! По-глупаво не съм се чувствал не знам откога, защото лично генералният им директор ми съдейства! Между другото, утре ще отида с моята плоча и моя процесор, за да видя дали няма да се получи нещо интересно. Засега имат две версии по въпроса: конфликт на компилаторите(не съм си свалил FREE, въпреки че имам PRO) или разлика в самите процесори. Ще стане ясно, когато пак се появя там и ще кажа какво е било.

Автор:  plameniv [ Чет Окт 29, 2009 3:55 pm ]
Заглавие: 

E1 написа:
Благодаря за съветите. Направих го и това с компараторите снощи, но проблемът остана. И понеже имам възможността да си контактувам лично с авторите на компилатора, занесох се до тях, уверен, че откривам топлата вода. Само дето изадиха същата развойна среда, сложиха процесор, въведоха-същата програма... и всичко тръгна! По-глупаво не съм се чувствал не знам откога, защото лично генералният им директор ми съдейства! Между другото, утре ще отида с моята плоча и моя процесор, за да видя дали няма да се получи нещо интересно. Засега имат две версии по въпроса: конфликт на компилаторите(не съм си свалил FREE, въпреки че имам PRO) или разлика в самите процесори. Ще стане ясно, когато пак се появя там и ще кажа какво е било.

Че микрочеп си има MPLAB ?
С какъв компилатор го мъчиш ?
Изтегли си MPLAB и не се мъчи с някакви измислени компилатори !!!

Автор:  head_up [ Чет Окт 29, 2009 4:44 pm ]
Заглавие: 

следният съвет може и да ти се стори безсмислен, ама ... защо не огледаш много внимателно хардуера? да не си оставил някой "мустак" към маса или някъде там? ако разбира се си сигурен, че порта ти е здрав - случва се и микрочепско животно да умре все пак, а софта при тях работи (казваш минава всичко) значи мирише на хлебарка между пиновете :D

Автор:  E1 [ Чет Окт 29, 2009 4:49 pm ]
Заглавие: 

Няма проблем с компилатора. Ако се е получил, вината си е моя, защото при инсталация на РRO изискваше да се деинсталират всички предходни версии, което аз не направих, а си създадох папка *_old, та не се знае кой къде бута из системата. Хардуерът е развойната среда. Първо си правя всичко на нея, а после на печатна платка. Не е грешка на пина, защото при задаване на PORTB=PORTA, "умира" и PORTB. Само за спорта ще видя каква е причината, но върви на някоя моя глупост.
...
Така се и оказа... Като проверих настройките на развойната среда и немерих джъмпера за AD конвертора поставен. А този конвертор е свързан точно на PORTA,2. Свалих го и цифрата си заработи... Благодаря на отзовалите се!

Автор:  bently [ Пон Май 31, 2010 4:31 am ]
Заглавие: 

Хм ако искаш да конфигурираш PORTA като вход опитаи с това .

BCF INTCON,GIE ; zabrana za prekysvaniq
CLRF LATA ; nulirane na izhodnite trigeri
BSF TRISA,4 ; RA4 - vhod
Start
btfss PORTA,4 ; Natisnat li e butonyt
goto Start ; ne , go to Start

Автор:  relsys [ Пон Май 31, 2010 9:28 am ]
Заглавие: 

А кой ти е компилатора?

Автор:  E1 [ Пон Май 31, 2010 6:48 pm ]
Заглавие: 

Компилаторът е MikroC PRO. Хардуерен се оказа проблемът, както вече писах.
Иначе, по-голямата част от настройките на процесора се задават от страницата за проекта и не се въвеждат в кода на програмата - компилаторът сам си ги слага после.

Автор:  relsys [ Вто Юни 01, 2010 1:53 pm ]
Заглавие: 

Е ти за това до Белград ли ходи?!?

Автор:  E1 [ Сря Юни 02, 2010 11:44 pm ]
Заглавие: 

Ами по стечение на обстоятелствата имам сътрудничество с въпросната фирма... което не ми пречи да се изложа с подобна наивна грешка.

Страница 1 от 1 Часовете са според зоната UTC + 2 часа [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/