Отговори на тема  [ 11 мнения ] 
RQ: Pic16873, PortA, проблем като вход. 
Автор Съобщение
Ранг: Почетен член
Ранг: Почетен член
Аватар

Регистриран на: Съб Сеп 25, 2004 10:32 pm
Мнения: 710
Мнение RQ: Pic16873, PortA, проблем като вход.
RQ: Pic16873, PortA, проблем като вход.

Мисля, че правилно го инициализирам:
Код:
027B   20B1           00508                 call            DisableIntr
027C   0183           00510                 clrf            STATUS              ;// IRP, RP1, RP0 = 0
027D   3000               M                 movlw   0x00
027E   009F               M                 movwf   ADCON0
027F   3000               M                 movlw   B'000000'
0280   0085               M                 movwf   PORTA
028C   1303               M                 bcf     STATUS,RP1
028D   1683               M                 bsf     STATUS,RP0
028E   3007               M                 movlw   0x07
028F   009F               M                 movwf   ADCON1
0290   303F               M                 movlw   B'111111'
0291   0085               M                 movwf   TRISA


Но не работи като вход - прилагам картинка: вижда се, че:
а) TRISA е '111111' (входове)
б) ADCCON0 е 0 (изключено АЦП)
в) ADCCON1 е 7 (всички пинове на Порт А са цифрови)
г) нивата на крачетата на порт А са високи
д) в PORTA има нули.

Къде бъркам?


Прикачени файлове:
PortA.JPG
PortA.JPG [ 143.26 KiB | Прегледано 1826 пъти ]
Пон Апр 25, 2011 11:38 am
Профил ICQ WWW
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Сря Юли 11, 2007 10:16 am
Мнения: 1730
Мнение 
В спецификацията, на стр. 31 е решението на проблемът ти.

Цитат:
EXAMPLE 3-1: INITIALIZING PORTA

Код:
BCF STATUS, RP0 ;
BCF STATUS, RP1 ; Bank0
CLRF PORTA ; Initialize PORTA by
           ; clearing output
           ; data latches
BSF STATUS, RP0 ; Select Bank 1
MOVLW 0x06 ; Configure all pins
MOVWF ADCON1 ; as digital inputs
MOVLW 0xCF ; Value used to
           ; initialize data
           ; direction
MOVWF TRISA ; Set RA<3:0> as inputs
           ; RA<5:4> as outputs
           ; TRISA<7:6>are always
           ; read as ’0’.


Пон Апр 25, 2011 12:19 pm
Профил
Ранг: Почетен член
Ранг: Почетен член
Аватар

Регистриран на: Съб Сеп 25, 2004 10:32 pm
Мнения: 710
Мнение 
Благодаря, но не става (пробвал съм го преди да постна), впрочем, дали е 6 или 7 в ADCON1, в същата спецификация (страница 112) пише, че няма значение (в таблицата за ADCON1, за 011х).
От картинката се вижда, че на точката на прекъсване всички регистри са инициализирани ОК, напрежението на входовете е ОК, но симулатора показва 0 в регистъра на порт А.
Изключено е проблемът да е в симулатора.
Проверил съм всички споменавания на въпросните регистри в програмата - няма проблем (или не го виждам :))


Пон Апр 25, 2011 12:34 pm
Профил ICQ WWW
Ранг: Почетен член
Ранг: Почетен член

Регистриран на: Съб Окт 13, 2007 12:12 pm
Мнения: 712
Мнение 
А компараторите, кой ще ги изключи?! :)


Пон Апр 25, 2011 12:52 pm
Профил
Ранг: Почетен член
Ранг: Почетен член
Аватар

Регистриран на: Съб Сеп 25, 2004 10:32 pm
Мнения: 710
Мнение 
fan написа:
А компараторите, кой ще ги изключи?! :)
Не виждам компаратори :)


Пон Апр 25, 2011 1:04 pm
Профил ICQ WWW
Ранг: Почетен член
Ранг: Почетен член

Регистриран на: Съб Окт 13, 2007 12:12 pm
Мнения: 712
Мнение 
Да, правилно стария без а няма компаратори (а защо го ползващ него не знам). Иначе модела който ползваш в протеуса не се вижда, да не си поставил този с а?


Пон Апр 25, 2011 1:13 pm
Профил
Ранг: Почетен член
Ранг: Почетен член
Аватар

Регистриран на: Съб Сеп 25, 2004 10:32 pm
Мнения: 710
Мнение 
Странното е, че и на минимален проект има същия проблем:

Пак не работи (в първото примерче на това мясноимаше пропуск на еднo BCF STATUS, RP0 ; Select Bank 0)


Прикачени файлове:
Коментар на файл: Нова картинка
PortA1.JPG
PortA1.JPG [ 150.14 KiB | Прегледано 1811 пъти ]
Коментар на файл: Минимален проект: сорс: десетина реда от спецификацията.
PortA.rar [44.95 KiB]
138 пъти
Пон Апр 25, 2011 1:15 pm
Профил ICQ WWW
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Май 01, 2009 4:01 pm
Мнения: 1438
Мнение 
Не го гледай тоя симулатор. Всичко си работи. Заради ADC'то няма как да се анимира всичко. В кода ти състоянието на порт А се записва в работния регистър, където всъщност се вижда реалното състояние на порта. Дори на твоята снимка се вижда.


Прикачени файлове:
portA.jpg
portA.jpg [ 184.33 KiB | Прегледано 1819 пъти ]
Пон Апр 25, 2011 11:43 pm
Профил
Ранг: Почетен член
Ранг: Почетен член
Аватар

Регистриран на: Съб Сеп 25, 2004 10:32 pm
Мнения: 710
Мнение 
Да те поживи бога на всички PIC-ове!

(Не ми е ясно защо не могат да го симулират, но няма значение :) - до сега Протеуса винаги е бил на завидно ниво :))


Вто Апр 26, 2011 8:35 am
Профил ICQ WWW
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Юни 01, 2008 9:54 pm
Мнения: 1503
Местоположение: Пловдив
Мнение 
@NikB, не знам дали има смисъл да го казвам (отново), но - зае*и ги тия "симулатори" за пикове и се хвани за хардуера.


Вто Апр 26, 2011 11:38 am
Профил WWW
Ранг: Почетен член
Ранг: Почетен член
Аватар

Регистриран на: Съб Сеп 25, 2004 10:32 pm
Мнения: 710
Мнение 
head_up написа:
@NikB, не знам дали има смисъл да го казвам (отново), но - зае*и ги тия "симулатори" за пикове и се хвани за хардуера.

:)
Мерси за съвета :)
Ако имах добри развойни средства - така щях да направя :), но в последните 10г с PIC се занимавам инцидентно (както и с много други работи :)).
Жалко, че нямаше симулатори преди много години (преди да си купя първия PicMaster ли, PicStart ли се казваше - 350 марки от Германия - Комет още не бяха чували за Микрочип :)).

ПП Естествено, имаше и моя грешка: при прехвърлянето на функционалността от ПортБ на ПортА не съм променил един xor 0x80 на xor 0x20 (вероятно защото винаги съм ползвал последния бит в байта :) и съм се заблудил - порт А свършва на петия бит :))


Вто Апр 26, 2011 1:24 pm
Профил ICQ WWW
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 11 мнения ] 

Кой е на линия

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


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

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