[an error occurred while processing this directive]
[an error occurred while processing this directive]
|
Ну Вы и наворотили... Весь Ваш квазиспектрометр легко и изящно делается на Cygnal, да и на AVR или PIC не будет особых проблем.
А делать надо так: у Вас есть импульсы с ФЭУ (точнее, с зарядочувствительного усилителя) и самоблокирующийся пик-детектор для запоминания амплитуды последнего импульса (самоблокировка нужна для гарантии неизменности входного напряжения АЦП на время преобразования - пришедший новый импульс просто игнорируется). Теперь - обработка:
- Получаем амплитуду текущего импульса с АЦП (возьмем 8 бит) = N
- Инкрементируем N-ное слово спектрального буфера (всего 256 слов/каналов)
- Сбрасываем/разблокируем пик-детектор
- По завершению периода накопления (в Вашем случае - секунды) пересылаем спектр по каналу связи и обнуляем буфер. Лучше чередовать 2 разных буфера, чтобы не набирать мертвое время на период пересылки.
Это полный спектрометр, многоканальный. Если Вы делаете "оконный" прибор, т.е. должны выдать счет в 6 предопределенных окнах, то это тоже просто - после получения отсчета АЦП инкрементируйте то слово, в окно которого попал этот отсчет. Для 6 каналов Вам хватит 24 байт ОЗУ даже при зеркальной буферизации (см. выше)
Какие, блин, таймеры/счетчики Вы там собирались применять? Ай-я-яй! ВЕСЬ прибор влезет в 3-4 корпуса - МК, операционник, драйвер RS232, плюс высоковольтник для ФЭУ и питалка всего остального.
P.S. Неужели оконные гамма-спектрометры еще кому-нибудь нужны? Давно уже все получили полные спектры и предпочли работать с ними - там и любые окна легко организовывать/комбинировать, и Комптона корректировать, и радон компенсировать, и стабилизацией рулить и т.д и т.п. Назад, в прошлое, что ли?%-(
E-mail: info@telesys.ru