KAlex 0 27 сентября, 2007 Опубликовано 27 сентября, 2007 · Жалоба // Инициализация TC1 AT91C_BASE_TCB->TCB_BMR = 0; AT91C_BASE_PMC -> PMC_PCER = (1 << AT91C_ID_TC1); AT91C_BASE_TC1 -> TC_CCR = 1 << 1;//Disable clock [TC_CCR\CLKDIS {p366}] =1 AT91C_BASE_TC1 -> TC_IDR = 0x000000FF;//Disable all interrupts[TC_IDR {p379}] dummy = AT91C_BASE_TC1->TC_SR; //Clear all status by read [TC_SR] dummy = dummy;//Suppress warning variable "dummy" was set but never used AT91C_BASE_TC1->TC_CMR = AT91C_TC_CLKS_XC1; AT91C_BASE_TC1 -> TC_CCR = AT91C_TC_CLKEN | AT91C_TC_SWTRG;//Enable clock & Start timer // Далее раз в секунду считываю количество импульсов и обнуляю счетчик. С меандром все нормально работает, но как только подается синус начинается всякая дребедень. Что я не учел и как с этим бороться? Сделать из синуса->меандр не предлагать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Николай Анатольевич 0 27 сентября, 2007 Опубликовано 27 сентября, 2007 · Жалоба Поставь триггер Шмитта. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 68 27 сентября, 2007 Опубликовано 27 сентября, 2007 · Жалоба Что я не учел и как с этим бороться? При подаче синусоиды возникают многократные переходы на медленном фронте. Сделать из синуса->меандр не предлагать. Тем не менее, это единственный выход. Поставьте триггер Шмитта на входе. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KAlex 0 27 сентября, 2007 Опубликовано 27 сентября, 2007 · Жалоба Тем не менее, это единственный выход. Поставьте триггер Шмитта на входе. Этого я и ожидал. Дело в том, что платы уже готовы и городить что-то навесным монтажем не очень хочется. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexBoy 0 27 сентября, 2007 Опубликовано 27 сентября, 2007 · Жалоба Этого я и ожидал. Дело в том, что платы уже готовы и городить что-то навесным монтажем не очень хочется. Попробуйте включить фильтр на входе (PIO_IFER). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 68 27 сентября, 2007 Опубликовано 27 сентября, 2007 · Жалоба Фильтр на входе не распространяется на периферию, только на PIO. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexBoy 0 27 сентября, 2007 Опубликовано 27 сентября, 2007 · Жалоба Фильтр на входе не распространяется на периферию, только на PIO. Точно. Можно считать импульсы без таймера, через edge detector, смотря какая частота. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться