| Автор |
Съобщение |
|
NikB
Ранг: Почетен член
Регистриран на: Съб Сеп 25, 2004 10:32 pm Мнения: 710
|
 RQ: Pic16873, PortA, проблем като вход.
RQ: Pic16873, PortA, проблем като вход.
Мисля, че правилно го инициализирам:
Но не работи като вход - прилагам картинка: вижда се, че:
а) TRISA е '111111' (входове)
б) ADCCON0 е 0 (изключено АЦП)
в) ADCCON1 е 7 (всички пинове на Порт А са цифрови)
г) нивата на крачетата на порт А са високи
д) в PORTA има нули.
Къде бъркам?
|
| Пон Апр 25, 2011 11:38 am |
|
 |
|
michev
Ранг: Форумен бог
Регистриран на: Сря Юли 11, 2007 10:16 am Мнения: 1730
|
В спецификацията, на стр. 31 е решението на проблемът ти.
|
| Пон Апр 25, 2011 12:19 pm |
|
 |
|
NikB
Ранг: Почетен член
Регистриран на: Съб Сеп 25, 2004 10:32 pm Мнения: 710
|
Благодаря, но не става (пробвал съм го преди да постна), впрочем, дали е 6 или 7 в ADCON1, в същата спецификация (страница 112) пише, че няма значение (в таблицата за ADCON1, за 011х).
От картинката се вижда, че на точката на прекъсване всички регистри са инициализирани ОК, напрежението на входовете е ОК, но симулатора показва 0 в регистъра на порт А.
Изключено е проблемът да е в симулатора.
Проверил съм всички споменавания на въпросните регистри в програмата - няма проблем (или не го виждам  )
|
| Пон Апр 25, 2011 12:34 pm |
|
 |
|
fan
Ранг: Почетен член
Регистриран на: Съб Окт 13, 2007 12:12 pm Мнения: 712
|
А компараторите, кой ще ги изключи?! 
|
| Пон Апр 25, 2011 12:52 pm |
|
 |
|
NikB
Ранг: Почетен член
Регистриран на: Съб Сеп 25, 2004 10:32 pm Мнения: 710
|
Не виждам компаратори 
|
| Пон Апр 25, 2011 1:04 pm |
|
 |
|
fan
Ранг: Почетен член
Регистриран на: Съб Окт 13, 2007 12:12 pm Мнения: 712
|
Да, правилно стария без а няма компаратори (а защо го ползващ него не знам). Иначе модела който ползваш в протеуса не се вижда, да не си поставил този с а?
|
| Пон Апр 25, 2011 1:13 pm |
|
 |
|
NikB
Ранг: Почетен член
Регистриран на: Съб Сеп 25, 2004 10:32 pm Мнения: 710
|
Странното е, че и на минимален проект има същия проблем:
Пак не работи (в първото примерче на това мясноимаше пропуск на еднo BCF STATUS, RP0 ; Select Bank 0)
|
| Пон Апр 25, 2011 1:15 pm |
|
 |
|
CarBeta
Ранг: Форумен бог
Регистриран на: Пет Май 01, 2009 4:01 pm Мнения: 1438
|
Не го гледай тоя симулатор. Всичко си работи. Заради ADC'то няма как да се анимира всичко. В кода ти състоянието на порт А се записва в работния регистър, където всъщност се вижда реалното състояние на порта. Дори на твоята снимка се вижда.
|
| Пон Апр 25, 2011 11:43 pm |
|
 |
|
NikB
Ранг: Почетен член
Регистриран на: Съб Сеп 25, 2004 10:32 pm Мнения: 710
|
Да те поживи бога на всички PIC-ове!
(Не ми е ясно защо не могат да го симулират, но няма значение  - до сега Протеуса винаги е бил на завидно ниво  )
|
| Вто Апр 26, 2011 8:35 am |
|
 |
|
head_up
Ранг: Форумен бог
Регистриран на: Нед Юни 01, 2008 9:54 pm Мнения: 1503 Местоположение: Пловдив
|
@NikB, не знам дали има смисъл да го казвам (отново), но - зае*и ги тия "симулатори" за пикове и се хвани за хардуера.
|
| Вто Апр 26, 2011 11:38 am |
|
 |
|
NikB
Ранг: Почетен член
Регистриран на: Съб Сеп 25, 2004 10:32 pm Мнения: 710
|
Мерси за съвета
Ако имах добри развойни средства - така щях да направя  , но в последните 10г с PIC се занимавам инцидентно (както и с много други работи  ).
Жалко, че нямаше симулатори преди много години (преди да си купя първия PicMaster ли, PicStart ли се казваше - 350 марки от Германия - Комет още не бяха чували за Микрочип  ).
ПП Естествено, имаше и моя грешка: при прехвърлянето на функционалността от ПортБ на ПортА не съм променил един xor 0x80 на xor 0x20 (вероятно защото винаги съм ползвал последния бит в байта  и съм се заблудил - порт А свършва на петия бит  )
|
| Вто Апр 26, 2011 1:24 pm |
|
|