草庐IT

STM32F7xx外设驱动6-adc(寄存器)

//源文件voidADCPhyConfig(){ RCC->APB2ENR|=1AHB1ENR|=1MODER|=(3PUPDR|=(3OSPEEDR|=(1APB2RSTR|=1APB2RSTR&=~(1CCR=1CR1=0;//CR1设置清零 ADC1->CR2=0;//CR2设置清零 ADC1->CR1|=0CR1|=0CR2&=~(1CR2&=~(1CR2|=0SQR1&=~(0XFSQR1|=0SMPR2&=~(7SMPR2|=7CR2|=1SQR3&=0XFFFFFFE0;//规则序列1通道chADC1->SQR3|=ch;ADC1->CR2|=1SR&1DR;//返回adc值}/

STM32F7xx外设驱动5-uart(寄存器)

//源文件voidUartGpioConfig(){ RCC->AHB1ENR|=(1APB1ENR|=(1APB2ENR|= //PD8TXDGPIOD->MODER|=(2OSPEEDR|=(2AFR[1]|=(7PUPDR|=(1MODER|=(2OSPEEDR|=(2AFR[0]|=(7PUPDR|=(1BRR|=(54*1000000+bound/2)/bound; USART3->CR1=0; USART3->CR1|=0CR1|=0CR1|=0CR1|=1CR1|=1TDR=byte; while((USART3->ISR&(1  

STM32F7xx外设驱动4-timer(寄存器)

//源文件voidTimerPhyConfig(){RCC->APB1ENR|=(1ARR=arr; TIM3->PSC=psc; TIM3->DIER=(1CR1|=(1CR1&=~(1SR&0X0001)//溢出中断 { LD1_TURN; LD2_TURN; LD3_TURN; } TIM3->SR&=~(1  

STM32F7xx外设驱动3-rcc(寄存器)

//源文件voidRccPhyConfig(){ uint16_tretry=0; RCC->APB1ENR|=1CR1|=3CR1|=1CR1|=1CR|=(1CR&(1CR&=~(1CFGR|=(0PLLCFGR=PLL_M|(PLL_N>1)-1)CR|=(1CR&(1ACR|=1ACR|=1ACR|=7CFGR&=~(3CFGR|=2CFGR&(3  

STM32F7xx外设驱动2-delay(寄存器)

//源文件staticuint32_tfac_us=0;//us延时倍乘数/***@brief初始化延迟函数* 当使用ucos的时候,此函数会初始化ucos的时钟节拍* SYSTICK的时钟固定为AHB时钟的1/8*@paramSYSCLK系统时钟频率*/voidDelayPhyConfig(){ HAL_SYSTICK_CLKSourceConfig(SYSTICK_CLKSOURCE_HCLK);//SysTick频率为HCLK fac_us=216; //不论是否使用OS,fac_us都需要使用}/***@brief延时nus**@paramnus要延时的us数.值不

STM32F7xx外设驱动1-led(寄存器)

//源文件voidLedPhyConfig(){RCC->AHB1ENR|=(1MODER|=(1OTYPER&=~(1OSPEEDR|=(1MODER|=(1OTYPER&=~(1OSPEEDR|=(1MODER|=(1OTYPER&=~(1OSPEEDR|=(1ODR|=(1ODR&=~(1IDR&(1ODR|=(1ODR&=~(1IDR&(1ODR|=(1ODR&=~(1IDR&(1  

Python中 _xx、__xx、__xx__ 的区别

在Python中,一般情况下我们常见的变量大都属于公共变量,比如xx=13中的xx就是一个公共变量,但有时候我们也会在一些Python代码中看到一些加下划线的变量/方法,比如_xx、__xx、__xx__,我们今天就来学习下这几个的区别。前面有1个下划线_xx如果在类中的变量/方法前面加1个下划线,那么这样的就称为保护变量/方法。classA:age1=10_age2=20defmethod_a1(self):print("类内部调用公共变量:{}".format(self.age1))def_method_a2(self):print("类内部调用保护变量:{}".format(self._

Python中 _xx、__xx、__xx__ 的区别

在Python中,一般情况下我们常见的变量大都属于公共变量,比如xx=13中的xx就是一个公共变量,但有时候我们也会在一些Python代码中看到一些加下划线的变量/方法,比如_xx、__xx、__xx__,我们今天就来学习下这几个的区别。前面有1个下划线_xx如果在类中的变量/方法前面加1个下划线,那么这样的就称为保护变量/方法。classA:age1=10_age2=20defmethod_a1(self):print("类内部调用公共变量:{}".format(self.age1))def_method_a2(self):print("类内部调用保护变量:{}".format(self._

路由添加next({ ...to, replace: true })导致的Redirected when goin from xx to xx 错误问题

在使用router.addRoutes动态添加路由后,需要手动添加next({...to,replace:true})进行重定向重新加载才可以识别到新添加的路由。但是由于next({...to,replace:true})中的to解构,会导致当前路由和前一个路由不一致,vue会抛出重定向的错误。解决方案:在router/index.js中添加如下代码(推荐)constrouterPush=Router.prototype.pushRouter.prototype.push=functionpush(location){returnrouterPush.call(this,location).c

路由添加next({ ...to, replace: true })导致的Redirected when goin from xx to xx 错误问题

在使用router.addRoutes动态添加路由后,需要手动添加next({...to,replace:true})进行重定向重新加载才可以识别到新添加的路由。但是由于next({...to,replace:true})中的to解构,会导致当前路由和前一个路由不一致,vue会抛出重定向的错误。解决方案:在router/index.js中添加如下代码(推荐)constrouterPush=Router.prototype.pushRouter.prototype.push=functionpush(location){returnrouterPush.call(this,location).c