Работа с низкочастотным кварцем
|
|
dimitriy-bc |
Дата: Вт, 21.01.2014, 22:48 | Сообщение # 1 |
Группа:
Проверенные
Ранг:
Могу и подсказать
Сообщений:
150
Замечания:
±
На сайте с 19.03.2012
Статус:
Offline
|
Всем доброго времени суток. Подскажите пожалуйста как в протоне указать, что будет использоваться кварц с частотой 32768 Гц.
|
|
|
|
mikhail09p |
Дата: Вт, 21.01.2014, 23:09 | Сообщение # 2 |
Группа:
Проверенные
Ранг:
Помогаю всем
Сообщений:
481
Замечания:
±
На сайте с 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
Замечания:
±
На сайте с 19.03.2012
Статус:
Offline
|
mikhail09p, здравствуйте. Дело в том, что один мой знакомый скачал программу часов на пик16ф84а. Кварц стоит 32768 Гц. При пропадании сети, часы работают от собственного источника питания и потребляют порядка 24 мкА. На радостях он купил какое-то количество пик16ф54, но программа туда не помещается и стек коротковат. Заниматься коррекцией программы на асме, после протона, ну совсем нет желания. Вот и возник вопрос о совместимости протона с низкочастотными кварцами. Да и мало ли какие задачи еще придется решать.
|
|
|
|
DAlexV |
Дата: Ср, 22.01.2014, 10:27 | Сообщение # 4 |
Группа:
Проверенные
Ранг:
Разобрался
Сообщений:
657
Замечания:
±
На сайте с 13.05.2008
Статус:
Offline
|
Цитата dimitriy-bc ( ) стек коротковат Переполнение стека в 70% случаев возникает при множественных перехода типа Gosub и Goto, особенно внутри друг друга. Цитата dimitriy-bc ( ) Заниматься коррекцией программы на асме, после протона, ну совсем нет желания. Любой код можно укоротить. Вот пример http://www.picbasic.ru/forum/5-1484-1. Цитата dimitriy-bc ( ) Вот и возник вопрос о совместимости протона с низкочастотными кварцами. Если уметь работать с регистрами без разницы что за язык Протон, Си или Паскаль. Регистры они и в Африке регистры
Будьте оригинальны-не повторяйте чужих ошибок ! Рыба сдохла. Теперь STM32(TS)+C#(VS).Старею :)
|
|
|
|
dimitriy-bc |
Дата: Ср, 22.01.2014, 20:32 | Сообщение # 5 |
Группа:
Проверенные
Ранг:
Могу и подсказать
Сообщений:
150
Замечания:
±
На сайте с 19.03.2012
Статус:
Offline
|
Цитата DAlexV ( ) Регистры они и в Африке регистры Я догадывался, что трубка, она и в Африке трубка. Но хотелось бы узнать можно ли в протоне задать частоту кварца ниже одного МГц. И еще, может я ошибаюсь, но команда GOTO стек не использует. Ну во сяком случае в амсе и протоне.
Сообщение отредактировал
dimitriy-bc - Ср, 22.01.2014, 20:42
|
|
|
|
DAlexV |
Дата: Ср, 22.01.2014, 23:47 | Сообщение # 6 |
Группа:
Проверенные
Ранг:
Разобрался
Сообщений:
657
Замечания:
±
На сайте с 13.05.2008
Статус:
Offline
|
Цитата dimitriy-bc ( ) И еще, может я ошибаюсь, но команда GOTO стек не использует. Сорри, зарапортовался. Про Goto неправ. Попробую исправиться Цитата dimitriy-bc ( ) протоне задать частоту кварца ниже одного МГц Думал что нет, и .... опять ошибся :). Можно. Режил LP кварца. http://www.protonbasic.co.uk/showthread.php/57292-16f676-Lp-Osc-Mode (2 пост) Проверил Шпротом, действительно работает. И данные о такте верны Надеюсь прощен ???????
Будьте оригинальны-не повторяйте чужих ошибок ! Рыба сдохла. Теперь STM32(TS)+C#(VS).Старею :)
Сообщение отредактировал
DAlexV - Ср, 22.01.2014, 23:48
|
|
|
|
dimitriy-bc |
Дата: Чт, 23.01.2014, 01:39 | Сообщение # 7 |
Группа:
Проверенные
Ранг:
Могу и подсказать
Сообщений:
150
Замечания:
±
На сайте с 19.03.2012
Статус:
Offline
|
DAlexV, еще раз добрый вечер. Сейчас посмотрю Ваши прикрепления. Цитата DAlexV ( ) Надеюсь прощен ??????? Я человек пидстаркуватый, поэтому относительно мирный. Так что мир, дружба, жвачка!!! Заранее спасибо за помощь.
|
|
|
|
DAlexV |
Дата: Чт, 23.01.2014, 21:38 | Сообщение # 8 |
Группа:
Проверенные
Ранг:
Разобрался
Сообщений:
657
Замечания:
±
На сайте с 13.05.2008
Статус:
Offline
|
Цитата dimitriy-bc ( ) Так что мир, дружба, жвачка!!! Да нет проблем. Насчет прощения это шутка такой . Теперь по делу. Провел эксперименты(виртуальные: Шпротэус, Асма, Рыба). То же работает в режиме 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 для точного отсчета времени(таймер надежнее). Удачи
Будьте оригинальны-не повторяйте чужих ошибок ! Рыба сдохла. Теперь STM32(TS)+C#(VS).Старею :)
|
|
|
|
dimitriy-bc |
Дата: Пт, 24.01.2014, 02:38 | Сообщение # 9 |
Группа:
Проверенные
Ранг:
Могу и подсказать
Сообщений:
150
Замечания:
±
На сайте с 19.03.2012
Статус:
Offline
|
Цитата DAlexV ( ) Да нет проблем. Насчет прощения это шутка такой . Эт понятно. Цитата DAlexV ( ) для точного отсчета времени(таймер надежнее). Я с Вами абсолютно согласен. У меня именно и были такие мысли. Отсчет времени осуществлять прерыванием таймера. Спасибо за пожелания.
Сообщение отредактировал
dimitriy-bc - Пт, 24.01.2014, 02:40
|
|
|
|