Узнать частоту - Страница 2 - Форум Picbasic.ru
Регистрация | Вход
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 2 из 3«123»
Модератор форума: ivan_fd 
Форум Picbasic.ru » Программирование МК » PicBasicPro » Узнать частоту (Узнать частоту на выходе)
Узнать частоту
xvovanx Дата: Ср, 13.11.2013, 16:00  |                                                                                                                Сообщение # 16
Группа: Проверенные
Ранг:  Помогаю всем
Сообщений: 249
Репутация: 12   ±
Замечания:   ±
На сайте с 02.05.2013

Статус: Offline

Вот прога в PicBasice
Прикрепления: UPS_12D1113.pbp(50Kb)
ЯНДЕКС Дата: 13.11.2013
MiXaS Дата: Ср, 13.11.2013, 16:08  |                                                                                                                Сообщение # 17
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 615
Репутация: 26   ±
Замечания:   ±
На сайте с 02.10.2010

Статус: Offline

А кварц какой стоин?
xvovanx Дата: Ср, 13.11.2013, 16:11  |                                                                                                                Сообщение # 18
Группа: Проверенные
Ранг:  Помогаю всем
Сообщений: 249
Репутация: 12   ±
Замечания:   ±
На сайте с 02.05.2013

Статус: Offline

Кварцы точно на 4 Мгц (пробовал и с кондиками и трехногие). Я б еще понял уменьшение частоты, ну там задержки всякие, но увеличение в 4 раза
  wacko
Уже 3 зарядных устройства собрал и все с тупо Pause 4000 = 1 сек  cool

Сообщение отредактировал xvovanx - Ср, 13.11.2013, 16:14
MiXaS Дата: Ср, 13.11.2013, 16:14  |                                                                                                                Сообщение # 19
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 615
Репутация: 26   ±
Замечания:   ±
На сайте с 02.10.2010

Статус: Offline

Если не трудно скиньте схему! НЕ охота чертить

Добавлено (13.11.2013, 16:14)
---------------------------------------------

Цитата xvovanx ()
пробовал и с кондиками

Это как понимать? Конденсаторы обязательно нужны! Причем для определенной частоты, определенная емкость!!!
xvovanx Дата: Ср, 13.11.2013, 16:16  |                                                                                                                Сообщение # 20
Группа: Проверенные
Ранг:  Помогаю всем
Сообщений: 249
Репутация: 12   ±
Замечания:   ±
На сайте с 02.05.2013

Статус: Offline

Цитата MiXaS13326Конденсаторы обязательно нужны! Причем для определенной частоты, определенная емкость!!!

Не обязательно в трехногих кварцах, у них кондики уже внутри. Да я уже пробовал по всякому. В одном устройстве специально ставил кварц с кондюками 4Мгц+ два 22pF, то же самое

Сообщение отредактировал xvovanx - Ср, 13.11.2013, 16:22
MiXaS Дата: Ср, 13.11.2013, 16:18  |                                                                                                                Сообщение # 21
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 615
Репутация: 26   ±
Замечания:   ±
На сайте с 02.10.2010

Статус: Offline

Схемку протеуса киньте, хотябы часть
xvovanx Дата: Ср, 13.11.2013, 16:42  |                                                                                                                Сообщение # 22
Группа: Проверенные
Ранг:  Помогаю всем
Сообщений: 249
Репутация: 12   ±
Замечания:   ±
На сайте с 02.05.2013

Статус: Offline

Вот схема наладки и dll файл, чтоб LCD по русски (dll переименовать в LCDALPHA.dll)
Прикрепления: UPS_prog_06-11-.dsn(135Kb) · 9605743.dll(106Kb)

Сообщение отредактировал xvovanx - Ср, 13.11.2013, 16:43
MiXaS Дата: Ср, 13.11.2013, 17:02  |                                                                                                                Сообщение # 23
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 615
Репутация: 26   ±
Замечания:   ±
На сайте с 02.10.2010

Статус: Offline

Давно уже забросил picbasic, юзаю протон. Но компилятор остался на всякий. Ваш код не хочет компилироваться. Может у меня компилятор старый.

Для начало попробуйте так:

define osc 4
@ DEVICE pic16F876, HS_OSC
@ DEVICE pic16F876, PWRT_ON

DEFINE ADC_BITS 8 ' çàäàåì 8-ðàçðÿäíóþ (256 ñòóïåíåê) òî÷íîñòü âõîäîâ ÀÖÏ
' 5000mV/255=19.61mV îäíà ñòóïåíüêà
define ADC_CLOCK 1 ' âûáèðàåì òàêòîâûé èñòî÷íèê äëÿ ÀÖÏ 1-Fosc/8(äëÿ 5-20MHz)
define ADC_SAMPLEUS 50 ' çàäàåì âðåìÿ ïðåîáðàçîâàíèÿ â ìèêðîñåêóíäàõ

define LCD_DREG PORTB ' çàäàåì ïîðò B äëÿ ïåðåäà÷è äàííûõ íà LCD èíäèêàòîð
define LCD_DBIT 4 ' çàäàåì RB4 âûâîä, êîòîðûé áóäåò ïîäêëþ÷åí
' ê âûâîäó DB4 LCD
define LCD_RSREG PORTB ' çàäàåì ïîðò B, êîòîðûé áóäåò âûäàâàòü ñèãíàë RS
define LCD_RSBIT 3 ' çàäàåì RB3 âûâîä, êîòîðûé áóäåò âûäàâàòü RS
DEFINE LCD_EREG PORTB ' çàäàåì ïîðò B, êîòîðûé áóäåò âûäàâàòü ñèãíàë E
DEFINE LCD_EBIT 2 ' çàäàåì RB2 âûâîä, êîòîðûé áóäåò âûäàâàòü E

DEFINE LCD_BITS 4 ' çàäàåì 4-áèòíûé ðåæèì ïåðåäà÷è äàííûõ íà LCD
' (ïîäêëþ÷àåì òîëüêî 4 øèíû äàííûõ LCD)
DEFINE LCD_LINES 4 ' çàäàåì âûâîä èíôîðìàöèè â 4 ñòðîêè LCD
DEFINE LCD_COMMANDUS 2000 ' ïàóçà ìåæäó ïåðåäà÷åé êîìàíä íà LCD
DEFINE LCD_DATAUS 50 ' ïàóçà ìåæäó ïåðåäà÷åé äàííûõ íà LCD

Все что я скинул нужно поставить в самом начале кода. потом объявления переменных метки и все остальное.

Сообщение отредактировал MiXaS - Ср, 13.11.2013, 17:06
xvovanx Дата: Ср, 13.11.2013, 17:38  |                                                                                                                Сообщение # 24
Группа: Проверенные
Ранг:  Помогаю всем
Сообщений: 249
Репутация: 12   ±
Замечания:   ±
На сайте с 02.05.2013

Статус: Offline

Поставил вначале проги.Компилятор выкидывает ошибку на строки

@ DEVICE pic16F876, HS_OSC
@ DEVICE pic16F876, PWRT_ON

Без них все по старому. В PSP в папке устройств в 876.INC и 876.INFO файлах в конфигурации по умолчанию выставил  HS_OSC и  PWRT_ON, все по старому
sad
MiXaS Дата: Ср, 13.11.2013, 17:51  |                                                                                                                Сообщение # 25
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 615
Репутация: 26   ±
Замечания:   ±
На сайте с 02.10.2010

Статус: Offline

Очень интересно! Поковыряю чуть позже.
xvovanx Дата: Ср, 13.11.2013, 18:26  |                                                                                                                Сообщение # 26
Группа: Проверенные
Ранг:  Помогаю всем
Сообщений: 249
Репутация: 12   ±
Замечания:   ±
На сайте с 02.05.2013

Статус: Offline

Прописал в программе define OSC 10 и скомпилировал и в модели Протеуса у 16F876 поставил Clock Frequensy 10 MHz. Запусил симулятор Протеус - музыка проиграла нормально и остальное тоже. Получается что установку кварца  (define OSC 10) программа видит и ассемблирует и Протеус правильно симулирует. Но почему частота работы процессора получается в четыре раза выше (Pause 4000 = 1 сек ??? вместо  Pause 1000 = 1 сек )  - убей не пойму.
Сообщение отредактировал xvovanx - Ср, 13.11.2013, 18:30
MiXaS Дата: Ср, 13.11.2013, 19:35  |                                                                                                                Сообщение # 27
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 615
Репутация: 26   ±
Замечания:   ±
На сайте с 02.10.2010

Статус: Offline

Цитата xvovanx ()
убей не пойму.


Я сам понять не могу! Точно сказать не могу, но все же, а что за компилятор?? Есть подозрения... Может скриншот скините basica? У меня 2,5 или рядом не захотел компилировать Ваш код. И в нем никогда таких проблем не замечалось
xvovanx Дата: Ср, 13.11.2013, 22:10  |                                                                                                                Сообщение # 28
Группа: Проверенные
Ранг:  Помогаю всем
Сообщений: 249
Репутация: 12   ±
Замечания:   ±
На сайте с 02.05.2013

Статус: Offline

Вот с чем работаю (скриншоты), все идеально и корректно кроме частоты на паузы, beep, PWM  и т.д. С прерываниями TMR1 все корректно, выставив правильно предделитель и начальное число счета, часы имеют атомную точность sleep .
Прикрепления: 1422687.jpg(347Kb) · 9909182.jpg(346Kb)
anatol Дата: Ср, 13.11.2013, 23:11  |                                                                                                                Сообщение # 29
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 547
Репутация: 14   ±
Замечания:   ±
На сайте с 10.02.2010

Статус: Offline

Нашел в теле программы такую конструкцию и не понял хитрости - 400 циклов по 10 миллисекунд?


Код
for P=1 to 400                    
     pause 10                ' пауза 4000/4Mhz=1sec
next P

В описании на РВР3 сказано  что пауза задается в миллисекундах до 65535 напрямую. Частота по умолчанию 4 мгц. Также по сравнению с РВР2 в РВР3 изменено задание файлов конфигурации
http://www.pbp3.com/downloa....BP3.pdf


Цитата
5.51PAUSE PAUSE Period Pause the program for Period milliseconds. .........
hat the system clock will operate at 4MHz and calibrate the generated codeaccordingly.PAUSE 1000'Delay for 1 second 
MiXaS Дата: Чт, 14.11.2013, 09:10  |                                                                                                                Сообщение # 30
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 615
Репутация: 26   ±
Замечания:   ±
На сайте с 02.10.2010

Статус: Offline

В том-то и гвоздь! Непонятно почему??
xvovanx, мне кажется что-то с компилятором, а именно в расчете таймеров. Я вижу 2 пути:
1. Почитать мануал на Вашу среду программирования, может там есть разгадка данной магии;
2. Поменять компилятор, менее приятная вещь.

Цитата xvovanx ()
Вот с чем работаю (скриншоты), все идеально и корректно кроме частоты на паузы, beep, PWM  и т.д


Все эти команды напрямую зависят от частоты генератора, если компилятор ошибается, то само сабой они будут работать некорректно.
Форум Picbasic.ru » Программирование МК » PicBasicPro » Узнать частоту (Узнать частоту на выходе)
Страница 2 из 3«123»
Поиск: