Нужна помощь по частотомеру
|
|
Ethno |
Дата: Ср, 02.01.2013, 03:25 | Сообщение # 1 |
Группа:
Проверенные
Ранг:
Понимаю
Сообщений:
91
Замечания:
±
На сайте с 11.12.2012
Статус:
Offline
|
Сделал небольшой частотомер... (правильно не знаю) но нужна помощь как сделать переход по условию что если VAR1 > 65535 то перейти на loop1 если VAR1 < 65535 то остаться на loop Вот код..
Device = 16F628A Xtal = 20 '--------------------------------------------Íàñòðîéêè ïîäêëþ÷åíèÿ ÆÊÈ------------------------------------------------ Declare LCD_Type ALPHA Declare LCD_DTPin PORTB.0 Declare LCD_ENPin PORTA.1 Declare LCD_RSPin PORTA.0 Declare LCD_Interface 4 Declare LCD_CommandUs 2000 Declare LCD_DataUs 50 Declare LCD_Lines 2 ' --------------------------------------------------- Íàñòðîéêè ïîðòîâ ---------------------------------------------------- TRISB = %00000011 ' ----------------------------------------------- Îáúÿâëåíèÿ ïåðåìåííûõ ------------------------------------------------- Dim VAR1 As Dword Dim VAR2 As Dword Symbol Pin = PORTB.6 ' ---------------------------------------------------- Ãëàâíàÿ ïðîãðàìì --------------------------------------------------- Loop: VAR1 = Counter Pin, 1000 Print At 2, 1, "Fr = ", Dec6 VAR1 If VAR1 > 65535 Then DelayMS 10 : GoTo Loop1 GoTo Loop
Loop1: VAR1 = Counter Pin, 1000 VAR2 = 65535 + VAR1 If VAR1 < 65535 Then DelayMS 10 : GoTo Loop Print At 2, 1, "Fr = ", Dec6 VAR2 GoTo Loop1
|
|
|
|
ivan_fd |
Дата: Ср, 02.01.2013, 11:05 | Сообщение # 2 |
Группа:
Модераторы
Ранг:
Специалист
Сообщений:
894
Замечания:
±
На сайте с 12.01.2009
Статус:
Offline
|
Что бы было точнее, считайте таймером, а не counter.
Тема на этом форуме уже есть.
|
|
|
|
Ethno |
Дата: Ср, 02.01.2013, 22:04 | Сообщение # 3 |
Группа:
Проверенные
Ранг:
Понимаю
Сообщений:
91
Замечания:
±
На сайте с 11.12.2012
Статус:
Offline
|
Мне точность подходит мне хочется понять как перейти на метку если VTR1 >65535 на метку loop1 если VTR1 < 65535 то не переходить.. И соответственно VAR2 > 65535 то не переходить.. VAR2 < 65535 на метку loop Вот это хочу понять как сделать..
|
|
|
|
ivan_fd |
Дата: Ср, 02.01.2013, 22:08 | Сообщение # 4 |
Группа:
Модераторы
Ранг:
Специалист
Сообщений:
894
Замечания:
±
На сайте с 12.01.2009
Статус:
Offline
|
Ну так Вы уже сделали. Что у вас не получается?
|
|
|
|
Ethno |
Дата: Пт, 04.01.2013, 01:40 | Сообщение # 5 |
Группа:
Проверенные
Ранг:
Понимаю
Сообщений:
91
Замечания:
±
На сайте с 11.12.2012
Статус:
Offline
|
Никак не могу сделать переход на метку если кто знает подскажите в моем варианте не работает..
Сообщение отредактировал
Ethno - Сб, 05.01.2013, 15:10
|
|
|
|
shaman |
Дата: Пт, 04.01.2013, 02:13 | Сообщение # 6 |
Группа:
Проверенные
Ранг:
Могу и подсказать
Сообщений:
178
Замечания:
±
На сайте с 07.11.2011
Статус:
Offline
|
http://www.picbasic.ru/publ....1-0-112 http://www.picbasic.ru/publ....1-0-111
|
|
|
|
Ethno |
Дата: Пн, 21.01.2013, 18:03 | Сообщение # 7 |
Группа:
Проверенные
Ранг:
Понимаю
Сообщений:
91
Замечания:
±
На сайте с 11.12.2012
Статус:
Offline
|
Вот вроде смог собрать из всего что было...... работает погрешность -\+2 гц если возможно, поправьте ошибки... можно ли увеличить точность до 0,1 и как..
Добавлено (21.01.2013, 18:03) --------------------------------------------- Может кто то подскажет, в протеусе программа работает нормально но в железе отказывается.. Где грабли на которые наступаю... иногда когда передергиваешь питание появляется что то на долю секунды.. или лучше взять другой контроллер?
Сообщение отредактировал
Ethno - Пн, 21.01.2013, 18:06
|
|
|
|
mikhail09p |
Дата: Ср, 23.01.2013, 00:39 | Сообщение # 8 |
Группа:
Проверенные
Ранг:
Помогаю всем
Сообщений:
481
Замечания:
±
На сайте с 04.05.2010
Статус:
Offline
|
Наверное, у Вас не работает генератор в железе... А почему CMCON = 6 ? Выключить компараторы CMCON = %00000111 - это же не 6?
|
|
|
|
Ethno |
Дата: Вт, 29.01.2013, 22:47 | Сообщение # 9 |
Группа:
Проверенные
Ранг:
Понимаю
Сообщений:
91
Замечания:
±
На сайте с 11.12.2012
Статус:
Offline
|
В железе работает но хотелось подавать два сигнала на вход RB6 и параллельно на RB7 Добавлено (29.01.2013, 22:47) --------------------------------------------- В железе работает но хотелось подавать два сигнала на вход RB6 и параллельно на RB7 и по возможности сравнивать эти сигналы не могу понять как реализовать.. Symbol Pin = PORTB.6 Symbol Pin1 = PORTB.7 VAR1 = Counter Pin, 1000 VAR2 = Counter Pin1, 1000 с counter понятно как сделать а как с таймером нет
|
|
|
|
shaman |
Дата: Вт, 29.01.2013, 22:59 | Сообщение # 10 |
Группа:
Проверенные
Ранг:
Могу и подсказать
Сообщений:
178
Замечания:
±
На сайте с 07.11.2011
Статус:
Offline
|
Добрый ночи,на форуме полно статей про таймеры. http://www.picbasic.ru/search....0%D1%83
Сообщение отредактировал
shaman - Вт, 29.01.2013, 23:03
|
|
|
|
retas |
Дата: Сб, 06.04.2013, 21:40 | Сообщение # 11 |
Группа:
Проверенные
Ранг:
Помогаю всем
Сообщений:
445
Замечания:
±
На сайте с 10.09.2007
Статус:
Offline
|
Мож кому такой приглядится http://ra4nal.qrz.ru/chlcd16.shtml
|
|
|
|