Необходимо измерить интервал времени между двумя событиями. Переменная t1 - время начала события. Переменная t2 - время окончания события. В переменной i - меняем длительность интервала времени между событиями. Время необходимо измерять в наносекундах. Плата Raspberry Pi Pico RP2040. Программа Arduino IDE.
01 | #include <LiquidCrystal.h> |
02 | LiquidCrystal lcd(12, 11, 10, 9, 8, 7); |
04 | unsigned long t1,t2,t3,i; |
08 | for (i=0; i<=1000000; i++) {} |
11 | lcd.setCursor(6, 0);lcd.print(t1); |
12 | lcd.setCursor(6, 1);lcd.print(t2); |
13 | lcd.setCursor(6, 2);lcd.print(t3); |
от 500р. fridgetester@mail.ru
Охлаждать чем будем, так как надо разгонять прилично, чтобы выйти на тактирующий 1 наносекунда...
И вопрос, позволяет ли это PLL
Да уж. Наносекунда это 1 ГГЦ тактовой. Не припомню я таких таймеров. Да и и к фронтам импульсов на таких скоростях вопросы есть в плане формы и способа доставки до ножки МК.
ТС, после выполнения задачи fridgetester напиши во сколько все-таки уложились. Всё-таки ОТ 500Р понятие растяжимое...
ТС, после выполнения задачи fridgetester напиши во сколько все-таки уложились. Всё-таки ОТ 500Р понятие растяжимое...
задача не выполнима...я разгонял чип только до 350 мегагерц, в IDE можно до 300...хотя подозреваю, что можно и поболее
ТС, после выполнения задачи fridgetester напиши во сколько все-таки уложились. Всё-таки ОТ 500Р понятие растяжимое...
Понятно что растяжимое, как и задание ТСа, поэтому я так и написал. Что касаемо выполнения, то ТС со мной не связывался.
задача не выполнима...я разгонял чип только до 350 мегагерц, в IDE можно до 300...хотя подозреваю, что можно и поболее
А ты в курсе что 10 наносекунд это тоже наносекунды, та же как и 100. Если к фразе "измерять в наносекундах" применить фильтр реальных ттх pico и немного здравого смысла, то задача уже не кажется такой невыполнимой.
тогда и на атмеге можно, там жеж слок по 63 наносекунды щёлкает )))
Ни кто не говорил о том, что надо разогнать процессор выше стандартной частоты. Время выполнения одной операции 32 наносекунды. Сейчас минимальное время отображения равно 1 микросекунда. За это время контроллер делает 31 операцию.
Сейчас при отображении переменной
i=1000000 время t3=32000 мкс.
i=1000031 время t3=32001 мкс.
i=1000062 время t3=32002 мкс.
надо сделать
i=1000000 время t3=32000000 нс.
i=1000001 время t3=32000032 нс.
i=1000002 время t3=32000064 нс.
тогда и на атмеге можно, там жеж слок по 63 наносекунды щёлкает )))
можно всё, но:
1. заказчик хочет на пико
2. пико на порядок быстрее(и соответственно замеры будут на порядок точнее) чем атмега и стоит кстати дешевле
В Атмеге уже достиг предела. Выше уже некуда. И не во всех Атмега стоит на плате кварц. В большинстве стоит пъезофильтр.
А в кого стрелять собираетесь?
Частотой в Радио.