Собираю хронограф страйкбольный. Мерять скорость вылета шарика из ствола.
Там у меня есть трубка с двумя датчиками(типа оптопары).
Принцип работы у меня такой:
1) Есть фотодиод, который напрямую подключен ко входу микросхемы.
2) На фотодиод постоянно светит светодиод, и на вход микроконтроллера постоянно идет логическая единица.
3) В момент пролета шарика он заслоняет свет, и на вход микраконтроллера поступает логический ноль - датчик сработал.
Ну и вот моя птопара отлично работает при небольших скоростях 1-2 м/с, но при скоростях порядка 100 м/с не работает.
Хотя если взять диаметр шарика 6 мм и поделить на 100 м/с получим, что поток света перекрыт на 0,00006 c, что в сравнии со скоростью микроконтроллера 16МГц не так мало.
Код написан на Си и выглядит так где-то:
Про прерывания знаю, но учитывая что датчик не ловит очередь в 50 шаров думаю не в этом дело.
Я думаю по какой-то причине напряжение не успевает упасть, но мозг уже закипает.
Вопрос: Почему не работает?
Раздел: Песочница или Вопрос-Ответ
Там у меня есть трубка с двумя датчиками(типа оптопары).
Принцип работы у меня такой:
1) Есть фотодиод, который напрямую подключен ко входу микросхемы.
2) На фотодиод постоянно светит светодиод, и на вход микроконтроллера постоянно идет логическая единица.
3) В момент пролета шарика он заслоняет свет, и на вход микраконтроллера поступает логический ноль - датчик сработал.
Ну и вот моя птопара отлично работает при небольших скоростях 1-2 м/с, но при скоростях порядка 100 м/с не работает.
Хотя если взять диаметр шарика 6 мм и поделить на 100 м/с получим, что поток света перекрыт на 0,00006 c, что в сравнии со скоростью микроконтроллера 16МГц не так мало.
Код написан на Си и выглядит так где-то:
while (PINC & 1) {}
PORTB = 0xFF;
Про прерывания знаю, но учитывая что датчик не ловит очередь в 50 шаров думаю не в этом дело.
Я думаю по какой-то причине напряжение не успевает упасть, но мозг уже закипает.
Вопрос: Почему не работает?
Раздел: Песочница или Вопрос-Ответ