Регистрация | Вход

[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: demanik, ivan_fd  
Работа с низкочастотным кварцем
dimitriy-bc Дата: Вт, 21.01.2014, 22:48  |                                                                                                                Сообщение # 1
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 150
Репутация: 1   ±
Замечания:   ±
На сайте с 19.03.2012

Статус: Offline

Всем доброго времени суток. Подскажите пожалуйста как в протоне указать, что будет использоваться кварц с частотой 32768 Гц.
ЯНДЕКС Дата: 21.01.2014
mikhail09p Дата: Вт, 21.01.2014, 23:09  |                                                                                                                Сообщение # 2
Группа: Проверенные
Ранг:  Помогаю всем
Сообщений: 481
Репутация: 14   ±
Замечания:   ±
На сайте с 04.05.2010

Статус: Offline

Кварц на данную частоту нету смысла ставить на тактирование ПИКа. Если Вам нужно отсчитывать время, то подключайте его на таймер1, а ПИК тактируйте от внутреннего генератора.
Например :

Device = 16F628A
Xtal = 4
Config INTOSC_OSC_NOCLKOUT , MCLRE_Off,  WDT_OFF ,  PWRTE_ON , BODEN_OFF , LVP_Off ,  CP_OFF

Выводы 15 и 16 этого ПИКа  (это выход-вход для внешнего кварца)  используйте как Вам угодно, а на 12-13 вешайте 32768 Гц кварц.
Проэкт часов, идущих, когда ПИК спит, скинуть?

Сообщение отредактировал mikhail09p - Вт, 21.01.2014, 23:24
dimitriy-bc Дата: Ср, 22.01.2014, 01:00  |                                                                                                                Сообщение # 3
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 150
Репутация: 1   ±
Замечания:   ±
На сайте с 19.03.2012

Статус: Offline

mikhail09p, здравствуйте. Дело в том, что один мой знакомый скачал программу часов на пик16ф84а. Кварц стоит 32768 Гц. При пропадании сети, часы работают от собственного источника питания и потребляют порядка 24 мкА. На радостях он купил какое-то количество пик16ф54, но программа туда не помещается и стек коротковат. Заниматься коррекцией программы на асме, после протона, ну совсем нет желания. Вот и возник вопрос о совместимости протона с низкочастотными кварцами. Да и мало ли какие задачи еще придется решать.  wacko
DAlexV Дата: Ср, 22.01.2014, 10:27  |                                                                                                                Сообщение # 4
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 657
Репутация: 27   ±
Замечания:   ±
На сайте с 13.05.2008

Статус: Offline

Цитата dimitriy-bc ()
стек коротковат
Переполнение стека в 70% случаев возникает при множественных перехода типа Gosub и Goto, особенно внутри друг друга.
Цитата dimitriy-bc ()
Заниматься коррекцией программы на асме, после протона, ну совсем нет желания.
Любой код можно укоротить. Вот пример http://www.picbasic.ru/forum/5-1484-1.
Цитата dimitriy-bc ()
Вот и возник вопрос о совместимости протона с низкочастотными кварцами.
Если уметь работать с регистрами без разницы что за язык Протон, Си или Паскаль. Регистры они и в Африке регистры smile


Будьте оригинальны-не повторяйте чужих ошибок ! Рыба сдохла. Теперь STM32(TS)+C#(VS).Старею :)
dimitriy-bc Дата: Ср, 22.01.2014, 20:32  |                                                                                                                Сообщение # 5
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 150
Репутация: 1   ±
Замечания:   ±
На сайте с 19.03.2012

Статус: Offline

Цитата DAlexV ()
Регистры они и в Африке регистры
Я догадывался, что трубка, она и в Африке трубка. Но хотелось бы узнать можно ли в протоне задать частоту кварца ниже одного МГц.
И еще, может я ошибаюсь, но команда GOTO стек не использует. Ну во сяком случае в амсе и протоне.

Сообщение отредактировал dimitriy-bc - Ср, 22.01.2014, 20:42
DAlexV Дата: Ср, 22.01.2014, 23:47  |                                                                                                                Сообщение # 6
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 657
Репутация: 27   ±
Замечания:   ±
На сайте с 13.05.2008

Статус: Offline

Цитата dimitriy-bc ()
И еще, может я ошибаюсь, но команда GOTO стек не использует.
Сорри, зарапортовался. Про Goto неправ. Попробую исправиться smile
Цитата dimitriy-bc ()
протоне задать частоту кварца ниже одного МГц
Думал что нет, и .... опять ошибся :). Можно. Режил LP кварца.
http://www.protonbasic.co.uk/showthread.php/57292-16f676-Lp-Osc-Mode (2 пост)
Проверил Шпротом, действительно работает. И данные о такте верны wacko

Надеюсь прощен ??????? cry
Прикрепления: 5572528.jpg (27.9 Kb) · 32kOSC.dsn (60.8 Kb) · 32kOSC.bas (0.1 Kb)


Будьте оригинальны-не повторяйте чужих ошибок ! Рыба сдохла. Теперь STM32(TS)+C#(VS).Старею :)
Сообщение отредактировал DAlexV - Ср, 22.01.2014, 23:48
dimitriy-bc Дата: Чт, 23.01.2014, 01:39  |                                                                                                                Сообщение # 7
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 150
Репутация: 1   ±
Замечания:   ±
На сайте с 19.03.2012

Статус: Offline

DAlexV, еще раз добрый вечер. Сейчас посмотрю Ваши прикрепления.
Цитата DAlexV ()
Надеюсь прощен ???????
Я человек пидстаркуватый, поэтому относительно мирный. Так что мир, дружба, жвачка!!!
Заранее спасибо за помощь.
DAlexV Дата: Чт, 23.01.2014, 21:38  |                                                                                                                Сообщение # 8
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 657
Репутация: 27   ±
Замечания:   ±
На сайте с 13.05.2008

Статус: Offline

Цитата dimitriy-bc ()
Так что мир, дружба, жвачка!!!
Да нет проблем. Насчет прощения это шутка такой smile .
Теперь по делу. Провел эксперименты(виртуальные: Шпротэус, Асма, Рыба). То же работает в режиме LP.
Единственно но. Оператор DelayUs(1000) дает почти 109.86ms вместо 100. Предполагаю это из за не целого значения частоты кварцевого резонатора. В протоне не удалось выставить точно 32768, но рыба дала такую возможность
Код
Device=18f452

Clock =0.032768
'Clock =4

Config osc=lp

PORTB.0=0
TRISB.0=0

loop:

PORTB.0=1
DelayUS(1000)
PORTB.0=0
DelayUS(1000)

GoTo loop
Правда Шрот так и показвыает 109.86ms. Асма показывает что кварц выбран точно " #DEFINE _CLOCK 32768 ". Библиотеки подключать не пробовал. Интересно как себы будет вести Протон. Предполагаю что так же. Поэтому не советую использовать DELAY для точного отсчета времени(таймер надежнее).
Удачи wink


Будьте оригинальны-не повторяйте чужих ошибок ! Рыба сдохла. Теперь STM32(TS)+C#(VS).Старею :)
dimitriy-bc Дата: Пт, 24.01.2014, 02:38  |                                                                                                                Сообщение # 9
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 150
Репутация: 1   ±
Замечания:   ±
На сайте с 19.03.2012

Статус: Offline

Цитата DAlexV ()
Да нет проблем. Насчет прощения это шутка такой .
Эт понятно.  biggrin
Цитата DAlexV ()
для точного отсчета времени(таймер надежнее).
Я с Вами абсолютно согласен. У меня именно и были такие мысли. Отсчет времени осуществлять прерыванием таймера.
Спасибо за пожелания.  hello

Сообщение отредактировал dimitriy-bc - Пт, 24.01.2014, 02:40
  • Страница 1 из 1
  • 1
Поиск: