Pic12F675 - Страница 2 - Форум Picbasic.ru
Регистрация | Вход
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 2 из 2«12
Модератор форума: demanik 
Форум Picbasic.ru » Программирование МК » Proton PicBasic » Pic12F675 (Проблема с настройкой портов)
Pic12F675
доцент2 Дата: Вт, 11.02.2014, 21:48  |                                                                                                                Сообщение # 16
Группа: Проверенные
Ранг:  Помогаю всем
Сообщений: 311
Репутация: 1   ±
Замечания:   ±
На сайте с 13.09.2011

Статус: Offline

Цитата Alexandr280480 ()
Ошибка не в коде, а в формуле преобразования АЦП!!!
к тому же в твоем примере отсутствовала конфигурация контроллера.
ЯНДЕКС Дата: 11.02.2014
G2212 Дата: Ср, 16.04.2014, 12:28  |                                                                                                                Сообщение # 17
Группа: Проверенные
Ранг:  Начал соображать
Сообщений: 37
Репутация: 0   ±
Замечания:   ±
На сайте с 06.11.2012

Статус: Offline

Не стал создавать новой темы, т.к. вопрос по 675, 629 камню.
У этих МК нет модуля ССР, а мне нужно сделать 2 непрерывных прямоугольных сигнала с разными но кратными частотами.
И еще необходимо отслеживать питание батареи и в случае уменьшения подавать звуковой сигнал.
С частотой что-то странное, если 1 непрерывный сигнал никаких проблем - хороший меандр, если больше то какие-то чудеса - все сигналы с одинаковой частотой только с разной скважностью.
Вот задание:
1) Непрерывная генерация прямоугольного сигнала 6,5кГц / 13 кГц  (желательно меандр) (выбирается переключателем) GPIO.3.
2) Непрерывная генерация прямоугольного сигнала 52кгц. Синхронизация преобразователя отрицательного напряжения.
3) Контроль напряжения источника питания GPIO.0 с выдачей периодического прерывистого звукового сигнала при достижении заданного порога.

6,5x2=13 кГц
6,5х8= 52кГц.
Мучаюсь вторую неделю. Решение пока не найдено. Подскажите как добиться , если возможно. Может нужно внешний кварц, но тогда не хватит свободных ножек. Читал на форуме что задачу можно решить с помощью прерываний  но образца кода не нашел.
Прикрепления: 675_1.rar(49Kb)

Сообщение отредактировал G2212 - Чт, 17.04.2014, 10:37
holyuser Дата: Чт, 17.04.2014, 10:21  |                                                                                                                Сообщение # 18
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 233
Репутация: 5   ±
Замечания:   ±
На сайте с 12.12.2007

Статус: Offline

Внешний кварц абсолютно необходим, если Вы собираетесь применить сие устройство в металлодетекторе, потому что у внутреннего генератора очень высокий уровень фазовых шумов из-за ФАПЧ.
G2212 Дата: Чт, 17.04.2014, 10:34  |                                                                                                                Сообщение # 19
Группа: Проверенные
Ранг:  Начал соображать
Сообщений: 37
Репутация: 0   ±
Замечания:   ±
На сайте с 06.11.2012

Статус: Offline

Цитата holyuser ()
Вы собираетесь применить сие устройство в металлодетекторе, потому что у внутреннего генератора очень высокий уровень фазовых шумов из-за ФАПЧ.
Спасибо за подсказку,  это у-во действительно планируется в модернизацию металлодетектора. Есть желание убрать генератор и делитель частоты и заменить одним МК. Буду делать с кварцем.
Что можете посоветовать с 2-мя независимыми постоянными прямоугольными сигналами?
holyuser Дата: Чт, 17.04.2014, 10:46  |                                                                                                                Сообщение # 20
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 233
Репутация: 5   ±
Замечания:   ±
На сайте с 12.12.2007

Статус: Offline

Один сигнал, я так понимаю, это накачка, а второй - звук?
А частота звука какая, приблизительно?
G2212 Дата: Чт, 17.04.2014, 12:40  |                                                                                                                Сообщение # 21
Группа: Проверенные
Ранг:  Начал соображать
Сообщений: 37
Репутация: 0   ±
Замечания:   ±
На сайте с 06.11.2012

Статус: Offline

Цитата holyuser ()
Один сигнал, я так понимаю, это накачка, а второй - звук?
Накачка 6.5 кГц или 13 кГц (двух частотный прибор).
52 кГц нужно для преобразователя чтобы получить отрицательное напряжение.  Звук в этом приборе с VCO выдает CD4046.
А обычно звук 400- 500 Гц.

Сообщение отредактировал G2212 - Чт, 17.04.2014, 17:48
holyuser Дата: Чт, 17.04.2014, 17:08  |                                                                                                                Сообщение # 22
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 233
Репутация: 5   ±
Замечания:   ±
На сайте с 12.12.2007

Статус: Offline

Я бы сделал примерно так:
(частота кварца 20 МГц)
В таймер TMR0 загружается 207 (255 - 48 = 207)
48 - эго количество машинных циклов равняющихся полупериоду 52 кГц (точное значение 52,083 кГц).
Потом ожидается в цикле переполнение таймера.
При переполнении снова загружается 207 (минус количество тактов на выполнение самой загрузки).
Потом переключается соотв. выход 52 кГц.
Потом инкрементируетса некая переменная, до 4 или 8 соотв. для ТХ 13 кГц или 6,5 кГц (точные значения 13,020 кГц и 6,51 кГц).
Потом проверка - не пора ли переключить выход ТХ, если да, то делаем что надо и обнуляем переменную.
Потом делаем другое, что нужно (например запуск АЦП, или проверка и чтение, если преобразование уже завершилось).
Потом опять ожидаем переполнение таймера и так далее...
Надо помнить, что на все действия у нас должно хватить 48 машинных цикла с некоторым запасом. С АЦП надо работать "ручками", т.к. оператор бейсика непригоден.
G2212 Дата: Чт, 17.04.2014, 17:47  |                                                                                                                Сообщение # 23
Группа: Проверенные
Ранг:  Начал соображать
Сообщений: 37
Репутация: 0   ±
Замечания:   ±
На сайте с 06.11.2012

Статус: Offline

Спасибо holyuser попробую написать по этому алгоритму.
Форум Picbasic.ru » Программирование МК » Proton PicBasic » Pic12F675 (Проблема с настройкой портов)
Страница 2 из 2«12
Поиск: