应当注意:在窗口看门狗中,当递减计数器在窗口外被重新装载,(若看门狗被启动)则产生复位 【注】图中的WDGTB为3表示2^3=8,表示8分频,最小时间910us也等于每次计数器减一所需要经过的时间:T(LSB),每隔910us减1。最大值也等于,设置重载(喂狗)值127时(最大),一个复位周期的时间就是最大值58.25ms,也就是所...
F0延时:(部分代码行取用于网络) staticuint8_t fac_us=0;staticuint16_t fac_ms=0;//延时初始化voiddelay_init() { SysTick_CLKSourceConfig(SysTick_CLKSource_HCLK_Div8); fac_us=SystemCoreClock/8000000; fac_ms=(uint16_t)fac_us*1000; }//延时nus//nus为要延时的us数.voiddelay_us(uint32_t ...
下降沿检测正常,最后跟踪下来发现在while(1)中增加一个HAL_Delay(1)就可以正常完成我得需求,...
* SystemFrequency / 1000000 1us中断一次 */ if(SysTick_Config(SystemCoreClock/1000)) { while(1); } // 关闭滴答定时器 //SysTick->CTRL &= ~ SysTick_CTRL_ENABLE_Msk; } /** * @brief Inserts a delay time. * @param nTime: specifies the delay time length, in milliseconds. * @retval ...
void TimeDelay1us(uint16_t Times){ TIM3->CR1 |= TIM_CR1_CEN; //启动定时器 while(Times-...
05_Write_1(); DS28E05_Write_0(); //拉低总线保持1us delay_us(1); DS28E05_Write_1(); //释放总线延时大于12us delay_us(20);//20us } /*** 写数据位0 ***/ void WriteBit_0( void ) { DS28E05_Write_1(); DS28E05_Write_0(); //拉低总线保持8-16us delay_us(12); //...
void delay_init() { SysTick_CLKSourceConfig(SysTick_CLKSource_HCLK_Div8); fac_us=SystemCoreClock/; fac_ms=(int16_t)fac_us*1000; } LED灯初始化函数LED_Init() void LED_Init() { RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOC, ENABLE); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8 | GPIO...
5; //大于4us HTU_SCL_0(; I2CDelay; } /** * @briefIIC Stop Signal * @commetSCL、SDA同为低,SCL跳变成之后,SDA跳变成* @retvalNone */ voidI2CStop(void { HTU20_SDA(; HTU20_SDA_0(; HTU20_SCL0(; I2CDelay(5; HTU20_SCL_1(; I2CDelay(5; HTU20_SDA_1(; ...
14、art signal * comment SCL、SDA同为高,SDA跳变成低之后,SCL跳变成低 * retval None */void I2CStart(void) HTU20_SDA_OUT(); HTU20_SDA_1(); HTU20_SCL_1(); I2CDelay(5); /大于4.7us HTU20_SDA_0(); I2CDelay(5); /大于4us HTU20_SCL_0(); I2CDelay(5);/* * brief IIC Stop ...
上拉电阻选择2.2K欧时,SCL上升沿时间约0.5us,如果选4.7K欧,则上升沿约1us 实际应用选择400KHz左右的速率即可 */ for (i = 0; i < 100; i++); } /** * IIC总线启动信号 */ void i2c_Start(void) { IIC_SDA_HIGH(); IIC_SCL_HIGH(); i2c_Delay(); IIC_SDA_LOW(); i2c_Delay(); IIC_...