Shedon 0 17 ноября, 2005 Опубликовано 17 ноября, 2005 · Жалоба Есть желание зделать на capture LPC2214 подсчёт импульсов, вопрос до какой максимальной частоты я смогу считать импульсы и с какой точностью ? Fosc = 10MHz(с кварцевого генератора "СОНАТА" класса А), pll будет множить на 6, т.е. частота cclk=60MHz. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Serjio 0 18 ноября, 2005 Опубликовано 18 ноября, 2005 · Жалоба Если имульсы подавать на счетчик - то только его быстродействием (методом досчета). Например на процессоре 1878ВЕ1 был частотомер до 50 Мгц при тактовой частоте в 4 Мгц. Анологичный Appnot есть у Microchip. В описаниии на LPC есть такая строка CCO operates in the range of 156 MHz to 320 MHz На сколько реально - не знаю. Если ошибаюсь - поправьте. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KRS 1 18 ноября, 2005 Опубликовано 18 ноября, 2005 · Жалоба Есть желание зделать на capture LPC2214 подсчёт импульсов, вопрос до какой максимальной частоты я смогу считать импульсы и с какой точностью ? Fosc = 10MHz(с кварцевого генератора "СОНАТА" класса А), pll будет множить на 6, т.е. частота cclk=60MHz. использовать Timer Capture можно для измерения длины импульса если настроить таймер с минимальным прескалером то разрешение будет 1/60E6 секунды но вот считать импульсы с такой частоты не получится нужно время на обработку прерывания или полинга регистров Если имульсы подавать на счетчик - то только его быстродействием (методом досчета). Например на процессоре 1878ВЕ1 был частотомер до 50 Мгц при тактовой частоте в 4 Мгц. Анологичный Appnot есть у Microchip. В описаниии на LPC есть такая строка CCO operates in the range of 156 MHz to 320 MHz На сколько реально - не знаю. Если ошибаюсь - поправьте. CCO относитя только к PLL (после умножения частота должна быть в этом диапазоне) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Shedon 0 18 ноября, 2005 Опубликовано 18 ноября, 2005 · Жалоба если настроить таймер с минимальным прескалером то разрешение будет 1/60E6 секунды но вот считать импульсы с такой частоты не получится нужно время на обработку прерывания или полинга регистров На самом деле мне такая частота и не нужна, надо до 4MHz, в худшем случае до 10MHz(хотя скорее всего не надо). И остаётся открытым вопрос о точности. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KRS 1 18 ноября, 2005 Опубликовано 18 ноября, 2005 (изменено) · Жалоба если настроить таймер с минимальным прескалером то разрешение будет 1/60E6 секунды но вот считать импульсы с такой частоты не получится нужно время на обработку прерывания или полинга регистров На самом деле мне такая частота и не нужна, надо до 4MHz, в худшем случае до 10MHz(хотя скорее всего не надо). И остаётся открытым вопрос о точности. Точности чего? считать количество импульсов - тут на мой взгляд вопрос о точности не стоит их надо или посчитать все или будет не верно. Вот если надо померять частоту это другой вопрос. если работать без прерываний полингом написать все на асм может и можно померять 4 mhz но вот на выовод и обработку результатов времени не останется. Изменено 18 ноября, 2005 пользователем KRS Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Shedon 0 18 ноября, 2005 Опубликовано 18 ноября, 2005 · Жалоба Вот если надо померять частоту это другой вопрос. Именно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KRS 1 18 ноября, 2005 Опубликовано 18 ноября, 2005 · Жалоба Вот если надо померять частоту это другой вопрос. Именно. Тогда для медленной частоты можно измерить время импульса с помощью CAPTURE настроить один канал на возрастающий фронт, другой канал на падающий и по разнице между регистрами определить длину импульса максимальная точность измерения периода 1/60E6 секунды но фот частота она обратна периоду поэтому такой метод хорош если частота не большая. А если большую частоту надо точно померять - тут действительно надо посичтать количество импульсов за время. точность будет определятся временем измерения. Зесечь время можно довольно точно на LPC проблема вот посчитать импульсы, апаратных каунтеров у LPC нет! а софтом 4 MHZ не очень то получится считать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Shedon 0 18 ноября, 2005 Опубликовано 18 ноября, 2005 · Жалоба Зесечь время можно довольно точно на LPC проблема вот посчитать импульсы, апаратных каунтеров у LPC нет! а софтом 4 MHZ не очень то получится считать. куёво :( Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
bombastic 0 18 ноября, 2005 Опубликовано 18 ноября, 2005 · Жалоба 2Shedon Не парься, возми 51, его таймер умеет считать количество импульсов на входе. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Shedon 0 18 ноября, 2005 Опубликовано 18 ноября, 2005 (изменено) · Жалоба Не парься, возми 51, его таймер умеет считать количество импульсов на входе. Чё мелочиться лучше сразу плисину впендюрить. :) Тогда для медленной частоты можно измерить время импульса с помощью CAPTURE настроить один канал на возрастающий фронт, другой канал на падающий и по разнице между регистрами определить длину импульса максимальная точность измерения периода 1/60E6 секунды но фот частота она обратна периоду поэтому такой метод хорош если частота не большая. А для медленной это какой ? Изменено 18 ноября, 2005 пользователем Shedon Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rezident 0 18 ноября, 2005 Опубликовано 18 ноября, 2005 · Жалоба Есть два способа реализации частотомера. Метод "временных ворот" (подсчет количества импульсов за заранее определенное время) и обратный "периодомер" (вычисление частоты путем измерение периода импульса). Первый способ интегральный, т.к. дает интегрирование частоты за определенный период. Второй дает "мгновенное" значение частоты, если взять обратную длительности импульса величину. Кстати, затем "мгновенное" значение частоты тоже можно проинтегрировать, но уже программно. Поскольку у таймера LPC2000 есть функция захвата, то до некоторой разумной величины частоты удобнее использовать второй способ. Для более высоких частот вроде как нужно использовать первый способ, но я пока не знаю как его "в лоб" (аппаратно) реализовать. У нас на LPC2138 сейчас делается устройство сбора данных. Одна из функций это частотомер, восьмиканальный. По второму способу (измерение длительности с помощью регистров захвата) пробовали измерять до 100кГц одновременно по 8 каналам. Работает. Причем там еще дополнительно крутится опрос АЦП и обработка запросов по связи. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Shedon 0 18 ноября, 2005 Опубликовано 18 ноября, 2005 · Жалоба Наверное придётся делить частоту, и мерить период. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
moonrock 0 18 ноября, 2005 Опубликовано 18 ноября, 2005 · Жалоба Даа, касяк.. Не думал что у LPC нету счетного входа. Если позволяет время, можно измерить частоту очень злым способом :maniac: : Настроить интервальный таймер на период измерения, скажем 0,1 с, а затем в цикле опрашивать какой-нить пин, и если происходит его изменение, увеличивать счетчик. Когда таймер отработает, остановить цикл и считать значение. Думаю таким способом 5-7 МГц можно измерить. Точность, как понимаете, зависит от интервала измеерния. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Shedon 0 18 ноября, 2005 Опубликовано 18 ноября, 2005 · Жалоба ну я здесь не вижу преимуществ перед capture, т.е. если настроить его на прерывание скажем по фронту импульса, в обработчике прерываний просто инкрементировать переменную, и запустить таймер на опр. время, и посмотреть сколько импульсов за это время натикает Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
moonrock 0 18 ноября, 2005 Опубликовано 18 ноября, 2005 · Жалоба Ну да..тоже должно получиться. Вам ведь 4 МГц надо померить? Вообще надо подсчитать сколько тактов на все деяния уходит, тогда точно предельную частоту узнаем. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться