Если еще актуально могу выложить 3 варианта измерения импульса.
1 ) с использованием модуля захвата.
2) с использованием таймера TMR0
3) с использованием таймера TMR1
Хотя в той теме что дали ссылку в конце ее я выкладывал некоторые варианты.
Да, еще актуально! Было бы неплохо)
Первой будет реализация через захват ССР.
Так что не будет работать в конроллерах где этого нет.
Из 8 ногих он есть в 12F683.
Есть один минус этой реализации и он в том что мы привязаны к определенному порту.
То есть мы не можем свободно выбирать на какой порт нам подавать импульсы.
Обратите внимания что прерывание написано в ручную , так как в самой проге его нету.
Ну и работа с регистрами так же сделано вставками С кода.
Позже другие варианты дам.
Там 2 варианта под встроенный генератор, на 4Мгц и на 8Мгц.
И да пользуйте Протеус для симуляции без него будет сложно отладить.
Файлы для фловкоде 5.5.2.1
Протеус 7.10
Вот вариант на TMR0.
Плюсы такого измерения, в том что измеряемый импульс мы можем подавать на любую ногу которую на это дело настроим.
Минус такого измерения, в том , что если у вас будут еще прерывания , то могут возникнуть моменты где прерывания наложатся друг на друга и измерение будет не точным и показания будут прыгать.(в варианте с ССР такого недостатка нет)
Но по опыту у меня значения не прыгали больше
=- 20 микросекунд, что в принципе не особо и напрягает.
Вот добрались и до TMR1.
Имеет достоинства и недостатки как и у TMR0.
И да изучайте работу с регистрами и прочем, так же и С.
Фловкоде удобна как оболочка, но много чего в нем нет и надо писать в ручную , и нужны будут С вставки.
Лично я выбрал эту оболочку только из за удобства, восприятия кода.
Так как трудно воспринимаю написание С особенно таких как if и все с ними связанное.
В архиве прикрепляю немного даташитов на русском языке для некоторых пик контроллеров.
Сюда не лезет. положил на гугл диск drive.google.com/folderview?id=0B14HT-atXypBWXVDYn…
{"assets_hash":"a8b26fa7f6e768b07a72c8c9aadb9422","page_data":{"users":{"3e7587103df95500777968ac":{"_id":"3e7587103df95500777968ac","hid":1461,"name":"ubd","nick":"ubd","avatar_id":null,"css":""},"47727bac3df955007777ef7b":{"_id":"47727bac3df955007777ef7b","hid":30205,"name":"Enigm","nick":"Enigm","avatar_id":null,"css":""},"486745843df95500777798a0":{"_id":"486745843df95500777798a0","hid":35959,"name":"sashok17","nick":"sashok17","avatar_id":null,"css":""}},"settings":{"can_see_ip":false,"can_report_abuse":false,"can_see_hellbanned":false,"forum_can_view":true,"forum_can_reply":false,"forum_edit_max_time":30,"forum_can_close_topic":false,"forum_show_ignored":false,"forum_mod_can_delete_topics":false,"forum_mod_can_hard_delete_topics":false,"forum_mod_can_see_hard_deleted_topics":false,"forum_mod_can_edit_posts":false,"forum_mod_can_pin_topic":false,"forum_mod_can_edit_titles":false,"forum_mod_can_close_topic":false,"can_vote":false,"forum_mod_can_add_infractions":false,"forum_topic_title_min_length":10,"forum_reply_old_post_threshold":30,"votes_add_max_time":168,"forum_show_post_interval":7,"can_see_deleted_users":false},"section":{"_id":"61c9a54c3df9550077bb50ba","hid":8,"title":"Самодельная электроника, компьютерные программы","parent":"61c9a54c3df9550077bb50f3","description":"Софт для моделирования и черчения, самодельные электронные устройства.","is_category":false,"is_votable":true,"is_writable":true,"cache":{"topic_count":2667,"post_count":48274,"last_post":"6757f71af9bb00ab89de832d","last_topic":"6757f71af9bb00ab89de832c","last_topic_hid":572572,"last_topic_title":"DVB-T2 для FPV видео","last_ts":"2024-12-10T08:08:58.227Z","last_user":"5b0062d13df95500776fe377"}},"topic":{"_id":"53a433d83df955007704cb8b","hid":368889,"title":"Flowcode - считывание длины импульса с канала","views_count":4751,"last_post_counter":10,"cache":{"post_count":10,"first_post":"53a433d83df955007704d020","first_ts":"2014-06-20T13:15:04.000Z","first_user":"486745843df95500777798a0","last_post":"542918e13df955007704d032","last_post_hid":10,"last_ts":"2014-09-29T08:31:29.000Z","last_user":"47727bac3df955007777ef7b"},"st":1,"section":"61c9a54c3df9550077bb50ba"},"subscription":null,"pagination":{"total":10,"per_page":25,"chunk_offset":3},"posts_list_before_post":["paginator","datediff"]},"locale":"en-US","user_id":"000000000000000000000000","user_hid":0,"user_name":"","user_nick":"","user_avatar":null,"is_member":false,"settings":{"can_access_acp":false,"can_use_dialogs":false,"hide_heavy_content":false},"unread_dialogs":false,"footer":{"rules":{"to":"common.rules"},"contacts":{"to":"rco-nodeca.contacts"}},"navbar":{"tracker":{"to":"users.tracker","autoselect":false,"priority":10},"forum":{"to":"forum.index"},"blogs":{"to":"blogs.index"},"clubs":{"to":"clubs.index"},"market":{"to":"market.index.buy"}},"recaptcha":{"public_key":"6LcyTs0dAAAAADW_1wxPfl0IHuXxBG7vMSSX26Z4"},"layout":"common.layout"}