VIP6.9镰仓物语推理作家上演寻妻捉妖记嘉宾:堺雅人 高畑充希 堤真一
环绕纾困事务归纳才能的提高,堺雅畑充绿城办理也一直在考虑‘代建+形式的立异或许,探究根据纾困各环节的优化和增效,带动全体才能上的提高。
/********************************************************************************FunctionName:USART_Configuration*Description:ConfigureUSART1*Input:None*Output:None*Return:None*Attention:None*******************************************************************************/voidCKS_USART_Init(void){GPIO_InitTypeDefGPIO_InitStructure;USART_InitTypeDefUSART_InitStructure;NVIC_InitTypeDefNVIC_InitStructure;DMA_InitTypeDefDMA_InitStructure;RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_USART1,ENABLE);RCC_AHBPeriphClockCmd(RCC_AHBPeriph_DMA1,ENABLE);/*USART1_TX->PA9,USART1_RX->PA10*/GPIO_InitStructure.GPIO_Pin=GPIO_Pin_9;GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF_PP;GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;GPIO_Init(GPIOA,&GPIO_InitStructure);GPIO_InitStructure.GPIO_Pin=GPIO_Pin_10;GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IN_FLOATING;GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;GPIO_Init(GPIOA,&GPIO_InitStructure);/*DMAconfiguration----------------------------------------------*//*USART1_RXDMAInit*/DMA_DeInit(DMA1_Channel5);DMA_InitStructure.DMA_PeripheralBaseAddr=(uint32_t)&USART1->DR;DMA_InitStructure.DMA_MemoryBaseAddr=(uint32_t)CKS_Uart_Rx;DMA_InitStructure.DMA_DIR=DMA_DIR_PeripheralSRC;DMA_InitStructure.DMA_BufferSize=CKS_UART_TX_RX_BUFF;DMA_InitStructure.DMA_PeripheralInc=DMA_PeripheralInc_Disable;DMA_InitStructure.DMA_MemoryInc=DMA_MemoryInc_Enable;DMA_InitStructure.DMA_PeripheralDataSize=DMA_PeripheralDataSize_Byte;DMA_InitStructure.DMA_MemoryDataSize=DMA_MemoryDataSize_Byte;DMA_InitStructure.DMA_Mode=DMA_Mode_Normal;DMA_InitStructure.DMA_Priority=DMA_Priority_High;DMA_InitStructure.DMA_M2M=DMA_M2M_Disable;DMA_Init(DMA1_Channel5,&DMA_InitStructure);DMA_Cmd(DMA1_Channel5,ENABLE);/*USART1_TXDMAInit*/DMA_DeInit(DMA1_Channel4);DMA_InitStructure.DMA_PeripheralBaseAddr=(uint32_t)&USART1->DR;DMA_InitStructure.DMA_MemoryBaseAddr=(uint32_t)CKS_Uart_Tx;DMA_InitStructure.DMA_DIR=DMA_DIR_PeripheralDST;DMA_InitStructure.DMA_PeripheralInc=DMA_PeripheralInc_Disable;DMA_InitStructure.DMA_MemoryInc=DMA_MemoryInc_Enable;DMA_InitStructure.DMA_PeripheralDataSize=DMA_PeripheralDataSize_Byte;DMA_InitStructure.DMA_MemoryDataSize=DMA_MemoryDataSize_Byte;DMA_InitStructure.DMA_Mode=DMA_Mode_Normal;DMA_InitStructure.DMA_Priority=DMA_Priority_High;DMA_InitStructure.DMA_M2M=DMA_M2M_Disable;DMA_Init(DMA1_Channel4,&DMA_InitStructure);DMA_Cmd(DMA1_Channel4,DISABLE);USART_InitStructure.USART_BaudRate=115200;USART_InitStructure.USART_WordLength=USART_WordLength_8b;USART_InitStructure.USART_StopBits=USART_StopBits_1;USART_InitStructure.USART_Parity=USART_Parity_No;USART_InitStructure.USART_HardwareFlowControl=USART_HardwareFlowControl_None;USART_InitStructure.USART_Mode=USART_Mode_Rx|USART_Mode_Tx;USART_Init(USART1,&USART_InitStructure);USART_ITConfig(USART1,USART_IT_IDLE,ENABLE);/*USART1interruptconfiguration----------------------------------------------*/NVIC_InitStructure.NVIC_IRQChannel=USART1_IRQn;NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=3;NVIC_InitStructure.NVIC_IRQChannelSubPriority=3;NVIC_InitStructure.NVIC_IRQChannelCmd=ENABLE;NVIC_Init(&NVIC_InitStructure);USART_DMACmd(USART1,USART_DMAReq_Rx,ENABLE);USART_DMACmd(USART1,USART_DMAReq_Tx,ENABLE);USART_Cmd(USART1,ENABLE);}USART_IRQHandler函数咱们运用USART的IDLE进行不定长度数据接纳完结判别,镰理作当USART被IDLE中止触发后,镰理作即标志着本次数据流已完结传输。当接纳完结DMA操控器指定的传输量时,仓物DMA操控器在该DMA通道的中止矢量上发生一中止。
语推演寻妖记/********************************************************************************FunctionName:USART1_IRQHandler*Description:ThisfunctionhandlesUSART1globalinterruptrequest.*Input:None*Output:None*Return:None*******************************************************************************/voidUSART1_IRQHandler(void){if(USART_GetFlagStatus(USART1,USART_FLAG_IDLE)!=RESET){DMA_Cmd(DMA1_Channel5,DISABLE);uint8_ti=USART1->SR;i=USART1->DR;CKS_Uart_Rx_Data_Lenth=CKS_UART_TX_RX_BUFF-DMA_GetCurrDataCounter(DMA1_Channel5);DMA1_Channel5->CNDTR=CKS_UART_TX_RX_BUFF;CKS_Uart_Tx_Data_Lenth=CKS_Uart_Rx_Data_Lenth;memcpy(CKS_Uart_Tx,CKS_Uart_Rx,CKS_Uart_Rx_Data_Lenth);memset(CKS_Uart_Rx,0x00,sizeof(CKS_Uart_Rx));DMA_Cmd(DMA1_Channel5,ENABLE);CKS_Uart_Transmite_With_DMA(CKS_Uart_Tx_Data_Lenth);}USART_ClearFlag(USART1,USART_IT_RXNE);}USART发送程序发送程序经过DMA发送长度为lenth的CKS_Uart_Tx数组。在发送形式下,家上嘉宾当DMA传输完一切要发送的数据时,DMA操控器设置DMA_ISR寄存器的TCIF标志。在上一讲中,妻捉咱们对USART进行了简略介绍,妻捉并解说了如安在不运用DMA的情况下进行不定长度数据接纳,本讲将侧重解说怎么运用DMA进行USART不定长度接纳。
对USART参数进行装备,人高此例程运用USART的IDLE中止对不定长度数据接纳完结进行判别当需求封闭USART或需求进入停机形式之前,希堤需求承认传输完毕,防止损坏最终一次传输。
咱们运用USART的IDLE状况位进行不定长度数据接纳,堺雅畑充当USART被RXNE中止触发后,程序将在该中止函数中轮询,直至串口闲暇后IDLE状况位被置位。
在USART_DR寄存器中写入最终一个数据字后,镰理作要等候TC=1,它表明最终一个数据帧的传输完毕。据统计,仓物2024年独山子区医疗合作保证活动共协助了423人次,发放合作金约18.4万元。
语推演寻妖记在职员工医疗合作保证活动是由全国总工会下设的我国员工稳妥合作会主办的一项非营利性合作互济活动。作为工会组织关怀关爱员工、家上嘉宾为员工办实事的一项重要行动,这一活动得到了各级工会组织的大力支持和活跃参加。
值得一提的是,妻捉第五期全市在职员工医疗合作保证活动在原有的(住院+意外)归纳合作保证活动和严重疾病合作保证活动的基础上,妻捉还新增了针对新工作形状劳动者、在职女员工以及工会活动赛事参赛人员等集体的专项合作保证活动。此次活动旨在加强广大员工的发动宣扬作业,人高为员工供给愈加坚实的健康保证
相关文章: