Как задержать один такт в STM32?

Вопрос такой же простой, как и тема. Как задержать ровно один такт в STM32? Если контроллер работает на частоте 168 МГц, равен ли один тактовый цикл 1/168 МГц, что составляет 5,95 нс?


person richieqianle    schedule 26.05.2014    source источник
comment
Похоже, что это может дать ответ: stackoverflow.com/ вопросы/18220928/   -  person Jason Lewis    schedule 26.05.2014
comment
Только что прочитал ветку, спасибо! Похоже, что процессор работает на основе другой структуры.   -  person richieqianle    schedule 26.05.2014
comment
Что я могу сделать, если мне нужно точное время для связи с аппаратными средствами, такими как очень высокоскоростной АЦП?   -  person richieqianle    schedule 26.05.2014


Ответы (1)


Вы можете попробовать использовать сборку в своем коде C. Это довольно просто с функцией asm(). Я считаю, что это будет выглядеть так:

asm("NOP");

Это всего лишь инструкция по сборке «Ничего не делать для этой галочки ПК». Также вы должны убедиться, что ваш компилятор не оптимизирует его.

person Owl_Prophet    schedule 02.06.2014