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

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

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

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

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

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

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

 
Опции темы
Непрочитано 24.01.2009, 20:46  
sliam
Частый гость
 
Регистрация: 26.03.2007
Сообщений: 28
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
sliam на пути к лучшему
По умолчанию Atmega32, DS1307 и 20Мгц

Коллеги, приветствую!
Подскажите, пожалуйста.
Решил заняться оверклокингом, т.к. использую LCD дисплей Siemens S65 и хочется чтобы пошустрее все работало. Поставил кварц на 20 мгц. Все вроде работает, но, Перестал работать календарь DS1307. Выводит 165:165:165. Ставлю обратно 16 Мгц все работает.
В чем проблема ?
При переходе с 8 на 16 мгц никаких изменений в коде для календаря не делал.
При переходе с 16 на 20 все "умерло". Чую что нужно изменить что то в настройках шины I2C. Но где, не знаю.
Реклама:
sliam вне форума  
Непрочитано 25.01.2009, 00:03  
Cyber_RAT
Прописка
 
Регистрация: 29.11.2007
Адрес: Могилев. РБ.
Сообщений: 143
Сказал спасибо: 30
Сказали Спасибо 20 раз(а) в 20 сообщении(ях)
Cyber_RAT на пути к лучшему
По умолчанию

гляньте то место где выставляется скорость i2c шины... часики максимум до 100кгц пашут, возможно превысили (второй вариант если пауза после STOP написана в тактах - может не хватает).
а вообще выложите кусок кода в архиве - быстрее будет.
Cyber_RAT вне форума  
Непрочитано 25.01.2009, 00:33  
kison
Почётный гражданин KAZUS.RU
 
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
kison на пути к лучшему
По умолчанию

Скорость шины выставляется в регистрах TWBR + TWSR.
kison вне форума  
Непрочитано 25.01.2009, 11:55  
leonidk
Частый гость
 
Регистрация: 02.11.2006
Сообщений: 33
Сказал спасибо: 1
Сказали Спасибо 14 раз(а) в 5 сообщении(ях)
leonidk на пути к лучшему
По умолчанию

А может все проще. В даташит гарантируется 16 МГц. На 20 МГц работает тактовый генератор, но не факт что работает остальная аппаратная часть микроконтроллера.
И из чистого любопытства. А что должно шустрее работать, часы, календарь?
leonidk вне форума  
Непрочитано 25.01.2009, 12:01  
avr123-nm-ru
Почётный гражданин KAZUS.RU
 
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
avr123-nm-ru на пути к лучшему
По умолчанию Re: Atmega32, DS1307 и 20Мгц

Сообщение от sliam
Чую что нужно изменить что то в настройках шины I2C.
Попробуйте для начала уменьшить подтягивающие резисторы вплоть до 1.5 кОм. Щас у вас какие установлены ?
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
avr123-nm-ru вне форума  
Непрочитано 25.01.2009, 12:55  
sliam
Частый гость
 
Регистрация: 26.03.2007
Сообщений: 28
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
sliam на пути к лучшему
По умолчанию

Всем спасибо за советы и ответы!

Долго курил даташиты и пр.
Понял, что в CVAVR, во встроенных библиотеках используется софтовый I2C. В этом случае регистры TWBR и TWSR не имеют никакой силы.

Сейчас сделаю аппаратный TWI и напишу свою библиотеку. Благо календарь у меня подключен к выводам аппаратного TWI.

По результатам отпишусь.

Резисторы у меня на 4,7к, сейчас попробую поменять на 1,5к.
sliam вне форума  
Непрочитано 28.01.2009, 12:40  
sliam
Частый гость
 
Регистрация: 26.03.2007
Сообщений: 28
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
sliam на пути к лучшему
По умолчанию

Так, все. Я разобрался. Все чудненько работает на аппаратном TWI.

DS1307 даже на 125Кгц шине работает, но это так ради эксперимента. Естественно, я битрейт поставил потом нормальный, чтобы SCL была 100Кгц как этого требует даташит на DS1307.

Выкладываю библиотечки для CodeVision AVR, может кому пригодятся. Библиотека twi.h - 4 процедуры (Старт,Стоп,Чтение,Запись) и библиотека ds1307_twi.h - 5 процедур (Инит,СетДата, СетТайм, гетДата, ГетТайм), все как в стандартной библиотеке от CVAVR.

Инициализация TWI выглядит следующим образом:

// 2 Wire Bus initialization
// Generate Acknowledge Pulse: On
// 2 Wire Bus Slave Address: 68h
// General Call Recognition: Off
// Bit Rate: 100,000 kHz
TWSR=0x00;
TWBR=0x5C; // Для 20Мгц. TWBR=0x48 - Для 16Мгц.
TWAR=0xD0;
TWCR=0x44;

Прикрепленный файл: 7765755.rar
sliam вне форума  
 

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

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Потенциометр AD5245 и ATmega32 ivainc Микроконтроллеры, АЦП, память и т.д 0 19.07.2009 21:07
Проблема с EEPROM в atmega32 tosha81k Микроконтроллеры, АЦП, память и т.д 16 28.04.2007 07:04
ATmega32 NCy Микроконтроллеры, АЦП, память и т.д 20 28.04.2007 00:44
Внутренее АЦП в ATmega32 Ztman Микроконтроллеры, АЦП, память и т.д 0 25.04.2007 22:51
Как в ATmega32 отключить JTAG? dpc1818 Микроконтроллеры, АЦП, память и т.д 2 29.03.2005 14:19


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


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