Jump to content

    

hd44780

Свой
  • Content Count

    1231
  • Joined

  • Last visited

Everything posted by hd44780


  1. поставил частоту TWI 100 khz - ничего не изменилось, кварц попробую поменять, есть парочка в запасе. насчет частоты 0-100 это я взял из таблицы на стр. 10 даташита. Там написано: SCL clock frequency: min=0 kHz, max = 100 kHz, typ - не указан. Может я смысла этого не понял?
  2. UART подключен к компу через MAX232 и прекрасно работает. 2 janus: У AVR частота TWI программируется специальным регистром - см. доку на МК. А как я понял DS1307 пашет на любой частоте от 0 до 100 kHz. Я взял 50 как золотую середину :) .
  3. Спасибо, посмотрю.
  4. Привет всем. Не работают часы DS1307, подключенные к аппратному TWI МК ATMega8535. Точнее сказать, я даже не знаю, работают они или нет. При считывании любого регистра получаю какой-то случайный мусор. Впрочем также как и при отсутствующей микросхеме часов (ыдергиваю из колодки). Даю ссылку на архив с полным текстом микрокода (на cvAVR). http://hd44780.narod.ru/DS1307-8535.ZIP МК работает на частоте 4 MHz, внутренний генератор. Схема подключена к COM-порту компа. Параметры связи и протокол обмена - см. файл DS1307.txt в архиве. Регистры DS считываются по командам компьютера. Считанные данные тоже перегоняются в комп. Обе линии TWI имеют pull-up резисторы 10k, согласно доке по микроконтроллеру. Между выходом OUT и +5в подключен светодиод через 1k резистор. Резервная батарейка есть, напряжение на 3 ноге DS1307 - +3.06в. Кварц припаян непосредственно к ногам 1 и 2 микросхемы. Корпус кварца не заземлен. При подаче команды CI часы запускаются (бит CH:=0), в упр. регистр DS вписывается 10h - светодиод должен мигать с частотой 1 Hz. Но он не мигает, как и при включении питания, а просто светится. Инициализация TWI - в конце функции setPeriferals, ds1307.c. Считывание регистра DS - ds1307readRegister, ds1307lib.c запись - ds1307writeRegister, ds1307lib.c TWI на частоте 50 kHz. Может я неправильно с TWI работаю, посмотрите пожалуйста. Спасибо.