W801, Есть_nop Операция может обеспечить удобную для программного обеспечения задержку времени?

выпустить 2022-05-22 18: 50: 11

Моделирую I2C Время, Нужно использовать программную задержку, Не знаю W801 Что-то вроде этого STM32 в_nop Оперативная реализация удобного программного обеспечения с задержкой времени

Проверь еще

Наблюдатель
0
Просмотри
2. 7k
Mrzhao
Mrzhao Сертифицированный эксперт 2022-05-22
Вставной любитель. CSDN страниц: https: //blog. csdn. net/qq_37280428? spm=1011. 2415. 3001. 5343

у nop

#include "wm_hal. h"
#include "assert. h"


//160MZH  53 был nop эт 1us
//240Mhz  80 был nop эт 1us
//Это возможно 1ms Время задержки ниже,  Много Просто не используй его.  не.  
//5u Погрешность при задержке ниже вниман.  
static void Delay_Us (uint8_t freq, uint32_t time) 
{
    uint32_t i; 
    uint16_t num = 90; 
    if (time   1000) 
    {
        printf ("delay time is too lager than 1000,  please use HAL_Delay () \r\n") ; 
    }
    switch (freq) 
    {
        case 240:  num = 80; break; 
        case 160:  num = 53; break; 
        default:  printf ("delay input freq err. . . default set 240MHZ us time \r\n ") ; break; 
    }
    
    for  (i = 0;  i    (num) *time;  i++) 
    {
        __NOP () ; 
    }
}
1 Ответь

Писать ответы

Пожалуйста, введите ответ после входа, Нажми на логин

опубликова
вопросы

подел
Приятель

телефон
просматрива

Просканируй телефон