Микроконтроллеры | Частотомер и подсчет импульсов |
|
---|---|---|
Всем привет! "это электронный спидометр, т.е. по сути - частотомер. В расказанном вами случае, он реализован на подсчёте импульсов за единицу времени. Данный способ весьма "инертен". Более "быстрым" является способ измерения времени между импульсами. В/у 628-й МК позволяет это реализовать аппаратно, ибо имеет встроенный модуль CCP, который, будучи включённым в режиме "захвата", как-раз и производит данное действие." Я вот нашел эту реализацию, это на CCS-PICC: #include <16F877.h> int N_overflows; // количество переполнений #int_timer1 // обработка прерывания при переполнении TMR1 #int_CCP1 // обработка прерывания при захвате на входе ... N_start = N_end; // запоминаем позицию текущего замера void main() Так вот помимо этого мне нужно еще посчитывать количество внешних импульсов, попробовал в функции обработки прерывания при захвате на входе переменную каждый раз увеличивать на 1 и отображать это светодиодами в двоичном виде, у меня почему-то светодиоды стали мигать когда внешнего прерывания нет.. вот странно почему так? и еще яхочу код переделать под HI-TECH, подскажите как перевести эту строку: #use delay(clock=10000000) ? |
|
|
если не используете встроенную функцию delay можно просто выкинуть, если используете то тоже выкинуть |
|
|
ок, но подскажите по самому вопросу еще пожалуйста.. |
|
Форум про радио — сайт, посвященный обсуждению электроники, компьютеров и смежных тем. pro-radio.online | Обратная связь |
© 2003—2024 |