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

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

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

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

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

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

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

 
Опции темы
Непрочитано 08.04.2012, 15:32  
serjgorel
Частый гость
 
Регистрация: 19.03.2012
Сообщений: 12
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
serjgorel на пути к лучшему
Сообщение Проблема в организации I2C между ds1307 и pic16f1826

Добрый день, проблема в организации I2C c ds1307. Не устанавливается стартовый бит SEN, не могу понять отчего, вроде все правильно делаю. Кто сможет помогите)
КОД.
Код:
list p=16F1826
#include "p16F1826.inc"

__config _CONFIG1, 01864h
__config _CONFIG2, 03DFFh
org 0
goto start

start
; ++++++++++++++++ устанавливаем необходимые значения специальных регистров +++++++++++++++++++++++
movlw 0ffh
movwf PORTB
movlb 1h
movlw b'00100010'
movwf TRISB 
movlb 4h
movlw b'00001000'
movwf SSP1CON1
clrf SSP1CON2
movlw b'00100000'
movwf SSP1CON3
bsf SSP1CON1, SSPEN
bsf SSP1CON2, SEN
clrf BSR
ddd btfss PIR1, SSP1IF
goto ddd
bcf PIR1, SSP1IF
movlb 4h
movlw 0d0h
movwf SSP1BUF
clrf BSR
ttt btfss PIR1, SSP1IF
goto ttt
bcf PIR1, SSP1IF
; далее последующая передача данных на ds1307

end
Реклама:

Последний раз редактировалось dosikus; 08.04.2012 в 16:01.
serjgorel вне форума  
Непрочитано 08.04.2012, 21:04  
Bumbarra
Вид на жительство
 
Регистрация: 16.09.2011
Сообщений: 343
Сказал спасибо: 10
Сказали Спасибо 171 раз(а) в 104 сообщении(ях)
Bumbarra на пути к лучшему
По умолчанию Re: проблема в организации I2C между ds1307 и pic16f1826

Очевидно, у тебя возникает конфликт шины и устанавливается бит BCL1IF в регистре PIR2, из-за того, что на порту RB1/SDA присутствует низкий уровень.
Bumbarra вне форума  
Непрочитано 08.04.2012, 21:32  
serjgorel
Частый гость
 
Регистрация: 19.03.2012
Сообщений: 12
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
serjgorel на пути к лучшему
По умолчанию Re: проблема в организации I2C между ds1307 и pic16f1826

Так спасибо, а можно рассказать как это исправить? я в целом все правильно делаю или нет?
serjgorel вне форума  
Непрочитано 08.04.2012, 21:51  
Bumbarra
Вид на жительство
 
Регистрация: 16.09.2011
Сообщений: 343
Сказал спасибо: 10
Сказали Спасибо 171 раз(а) в 104 сообщении(ях)
Bumbarra на пути к лучшему
По умолчанию Re: проблема в организации I2C между ds1307 и pic16f1826

Подтянуть к плюсу питания линию SDA, поскольку на ds1307 она с открытым коллектором, а на контроллере вначале перед передачей проверяется наличие высокого лог.уровня.
Bumbarra вне форума  
Непрочитано 08.04.2012, 22:08  
serjgorel
Частый гость
 
Регистрация: 19.03.2012
Сообщений: 12
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
serjgorel на пути к лучшему
По умолчанию Re: проблема в организации I2C между ds1307 и pic16f1826

movlw 0ffh
movwf PORTB
так я проде установил на всех выводах порта Б высокий уровень
serjgorel вне форума  
Непрочитано 08.04.2012, 22:35  
Bumbarra
Вид на жительство
 
Регистрация: 16.09.2011
Сообщений: 343
Сказал спасибо: 10
Сказали Спасибо 171 раз(а) в 104 сообщении(ях)
Bumbarra на пути к лучшему
По умолчанию Re: проблема в организации I2C между ds1307 и pic16f1826

Да неее, внешняя подтяжка, внешняя, резистором вне контроллера. В протеусе есть цифровой резистор Pullup даже. Внутренняя на контроллере отключается. Ну даташит контроллера то посмотри, схему I2C. Там нигде нет внутренней подтяжки.
Высокий уровень на выходе - это не то. В режиме I2C на линиях SDA, SCL это не имеет никакого значения, они работаеют под управлением модуля MSSP.

Вообще, я бы рекомендовал для тренировки гораздо более простой контроллер с модулем MSSP, например, PIC16F677. Меньше побочной "мишуры", компактнее организация памяти, легче разобраться.

Последний раз редактировалось Bumbarra; 08.04.2012 в 22:43.
Bumbarra вне форума  
Непрочитано 08.04.2012, 23:29  
russo_turisto
Прописка
 
Регистрация: 16.01.2007
Адрес: Astana KZ
Сообщений: 243
Сказал спасибо: 48
Сказали Спасибо 38 раз(а) в 32 сообщении(ях)
russo_turisto на пути к лучшему
По умолчанию Re: проблема в организации I2C между ds1307 и pic16f1826

Вопрос решили перестановкой конфигурации портов
[HTML]start
; ++++++++++++++++ устанавливаем необходимые значения специальных регистров +++++++++++++++++++++++
movlb 1h
movlw b'00100010'
movwf TRISB
clrf BSR
movlw 0ffh
movwf PORTB[/HTML]

http://forum.cxem.net/index.php?showtopic=106364
russo_turisto вне форума  
Непрочитано 09.04.2012, 00:03  
serjgorel
Частый гость
 
Регистрация: 19.03.2012
Сообщений: 12
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
serjgorel на пути к лучшему
По умолчанию Re: проблема в организации I2C между ds1307 и pic16f1826

да да да, спасибо, совсем забыл про резисторы( а каких номиналов они должны быть?
serjgorel вне форума  
Непрочитано 09.04.2012, 00:15  
Bumbarra
Вид на жительство
 
Регистрация: 16.09.2011
Сообщений: 343
Сказал спасибо: 10
Сказали Спасибо 171 раз(а) в 104 сообщении(ях)
Bumbarra на пути к лучшему
По умолчанию Re: проблема в организации I2C между ds1307 и pic16f1826

Цитата:
Вопрос решили перестановкой конфигурации портов
Ха-ха. Не угадал ты, однако.
Линия должна поддерживаться в лог.1 внешними резисторами. У обоих микросхем входы высокоомные, а в реал-тайм-часах выход с открытым коллектором - просто не откуда взяться высокому лог.уровню.
Какого номинала? Если для моделирования в протеусе, то есть PULLUP резистор (так и называется в библиотеке.
Bumbarra вне форума  
Непрочитано 09.04.2012, 00:16  
russo_turisto
Прописка
 
Регистрация: 16.01.2007
Адрес: Astana KZ
Сообщений: 243
Сказал спасибо: 48
Сказали Спасибо 38 раз(а) в 32 сообщении(ях)
russo_turisto на пути к лучшему
По умолчанию Re: проблема в организации I2C между ds1307 и pic16f1826

4.7кОм - 10 кОм
russo_turisto вне форума  
 

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

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
DS1307 запутался SerGO_83 Микроконтроллеры, АЦП, память и т.д 11 12.09.2012 10:54
Информационная система организации Demagogg Микроконтроллеры, АЦП, память и т.д 9 21.03.2011 00:28
Проблема с передачей данных между avr по uart code-by Proteus 2 21.01.2011 12:24
Проблема с 24C16->I2C->PIC16F630 need help! tolyanv8 Микроконтроллеры, АЦП, память и т.д 25 08.05.2009 20:49
Проблема с I2C HaZaR Микроконтроллеры, АЦП, память и т.д 3 04.07.2005 17:10


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


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