Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 29.05.2007, 11:42  
vsn
Прохожий
 
Регистрация: 15.09.2004
Сообщений: 8
Сказал спасибо: 0
Сказали Спасибо 2 раз(а) в 1 сообщении
vsn на пути к лучшему
По умолчанию

Добрый день, уважаемые! все не читал, сразу же увидел ошибку топикстартера - при включении пик сбрасывает регистры в значение по умолчанию, т.е выводы становятся аналоговыми входами. Изучая документацию на процессор надо быть внимательным, и читать не только про порты ввода-вывода. Для решения проблемы необходимо прочитать главы АЦП и АС (компаратор), там есть регистры конфигурации выводов ANSEL, кажется. Удачи!
Реклама:
vsn вне форума  
Непрочитано 29.05.2007, 12:08  
vsn
Прохожий
 
Регистрация: 15.09.2004
Сообщений: 8
Сказал спасибо: 0
Сказали Спасибо 2 раз(а) в 1 сообщении
vsn на пути к лучшему
По умолчанию

Да, еще есть особенности реальной работы команд чтение-модификация-запись (это самое больное место начинающих разработчиков). т.к разработчики PICа сэкономили на одном регистре PORT является и выходной защелкой, и с тем же адресом вычитываются состояние линий порта. чем чревато - например, командой
bsf PORTB,0
мы якобы установили в "1" вывод PORTB,0. Следующая наша команда изменить другой бит:
bsf PORTB,2
что происходит: вторая команда вычитывает реальное состояние выводов PORTB устанавливает 2 бит в единицу и записывает байт в регистр PORTB. И мы не можем понять, почему на PORTB,0 логический "0", а не "1". А произошло следующее: первая команда установила "1" на PORTB,0 но емкостная составляющая схемы мгновенно перезарядится не может, поэтому напряжение на выводе растет медленно (относительно), и в этот момент мы следующей командой вычитываем состояние вывода, и оно соответствует лог "0", и этот лог "0" и перезаписывается в выходную защелку PORTB,0 , где якобы должна быть единица.
vsn вне форума  
Непрочитано 29.05.2007, 20:30  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию

Сообщение от Faworit
досикус, с последим (ссылка) програматор-дизасембер так и не разобрался как скачать прогу. Или нужно регистрироваться на сайте? Если можно опишите процесс.
http://www.winpic800.com//descargas/WinPic800.zip
dosikus вне форума  
Непрочитано 29.05.2007, 20:33  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию

Сообщение от vsn
Добрый день, уважаемые! все не читал, сразу же увидел ошибку топикстартера - при включении пик сбрасывает регистры в значение по умолчанию, т.е выводы становятся аналоговыми входами. Изучая документацию на процессор надо быть внимательным, и читать не только про порты ввода-вывода. Для решения проблемы необходимо прочитать главы АЦП и АС (компаратор), там есть регистры конфигурации выводов ANSEL, кажется. Удачи!
Вот именно что кажеться...

Посмотри внимательно на его код.

Код:
list p=12F675 
#include "p12F675.inc" 

__CONFIG _INTRC_OSC_NOCLKOUT & _CPD_OFF & _CP_OFF & _BODEN_ON & _MCLRE_OFF 

cl equ 0x0C 
org 0x00 

reset goto start 
org 0x04 

start bcf STATUS, RP0 ; Выбрать банк 0 
clrf GPIO ; Инициализация защелок GPIO 

movlw 0x07 ;компаратор выключить 
movwf CMCON ;каналы GPIO-цифровые входы/выходы 

bsf STATUS, RP0 ; Выбрать банк 1 
movlw 0x0f ; 

movwf TRISIO ; 
bcf OPTION_REG, NOT_GPPU 
movlw 0x06 ; 
movwf WPU ; 

bcf STATUS, RP0 ; Выбрать банк 0 
bsf GPIO, GP4 
bsf GPIO, GP5 
nop 
nop 
bcf GPIO, GP5 
nop 

end
dosikus вне форума  
Непрочитано 30.05.2007, 12:20  
kikigor
Прохожий
 
Регистрация: 24.01.2007
Сообщений: 2
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
kikigor на пути к лучшему
По умолчанию

В программе не хватает следующих команд инициализации

bsf ststus,rp0
clrf ansel

vsn прав
kikigor вне форума  
Непрочитано 30.05.2007, 16:18  
Faworit
Прописка
 
Регистрация: 28.12.2006
Сообщений: 277
Сказал спасибо: 25
Сказали Спасибо 20 раз(а) в 18 сообщении(ях)
Faworit на пути к лучшему
По умолчанию

Всем добрый день!
VSN: clrf ANSEL сброс регистра: биты 6-4 установка для генератора, а вот 0-3 биты выходов AN‹3:0› В моем случае управление выходами GP4,5. Что будет на 0-3 выходах (компаратор, ADC или еще чо угодно) ведь это уже пока неважно. Я может ошибаюсь но доку про АЦП и компаратор прочитал достаточно (мне так кажется). Теперь чтобы не зацикливаться сообщу что тот кусочек програмки (как ни странно) но почемуто заработал и именно так ка надо. Это всетаки глюк мплаба. Впрочем сегодня я уже накатал еще с десяток строк текста проги и пока все работает ОК! Небольшие трудности сейчас с АЦП и прерыванием, но думаю справлюсь сам, а ежели чо, снова буду просить помощи.
dosikus: спасибо за прогу WinPic800, попробовал и.... не очень, а вот picdisasm - это СУПЕР!!! Ну как раз для чайников. Еще раз большое спасибо всем кто откликнулся на мой зов.

У уважением Геннадий.[/b]
Faworit вне форума  
Непрочитано 01.06.2007, 07:20  
kikigor
Прохожий
 
Регистрация: 24.01.2007
Сообщений: 2
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
kikigor на пути к лучшему
По умолчанию

Faworit, обратите внимание, что 3 аналоговый вход AN3 подключен к выводу GP4. По опыту работы с данным кристаллом вспомнилось, что если настраивать порты на выход, то регистр ANSEL не влияет на состояние портов. Если Вы будете исользовать Выводы на ввод, то регистр ANSEL влияет на работу портов,его нужно корректно настроить.
Удачи.
ЗЫ. Надеюсь Вы нашли документацию на этот кристалл на русском на www.microchip.ru
kikigor вне форума  
Непрочитано 01.06.2007, 17:51  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию

Сообщение от kikigor
В программе не хватает следующих команд инициализации

bsf ststus,rp0
clrf ansel

vsn прав
И ты туда же ...
Блин вы хоть даташиты читаете ?
dosikus вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
PIC12F675 снова вопросы. Faworit Микроконтроллеры, АЦП, память и т.д 34 13.06.2014 18:48
Компилятор Hi-Tech, вычисление, на PIC12F675 3ann Микроконтроллеры, АЦП, память и т.д 27 06.07.2009 12:01
Program memory в PIC12F675 waiting Микроконтроллеры, АЦП, память и т.д 6 01.02.2007 01:21
Помогите идиоту с PIC12F675 waiting Микроконтроллеры, АЦП, память и т.д 6 26.01.2007 22:41
уроки от LABCENTRE(PIC12F675+C) dosikus Микроконтроллеры, АЦП, память и т.д 22 09.10.2006 10:16


Часовой пояс GMT +4, время: 13:41.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot