日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]在stm32f10x_usart.h中有以下宏定義:#define USART_IT_PE ((uint16_t)0x0028) #define USART_IT_TXE ((uint16_t)0x0727)#define USART_IT_TC ((uint16_t)0x0626)#define USART_IT_RXNE ((uint16_t)0x0525)#define U

在stm32f10x_usart.h中有以下宏定義:

#define USART_IT_PE ((uint16_t)0x0028)

#define USART_IT_TXE ((uint16_t)0x0727)

#define USART_IT_TC ((uint16_t)0x0626)

#define USART_IT_RXNE ((uint16_t)0x0525)

#define USART_IT_IDLE ((uint16_t)0x0424)

#define USART_IT_LBD ((uint16_t)0x0846)

#define USART_IT_CTS ((uint16_t)0x096A)

#define USART_IT_ERR ((uint16_t)0x0060)

#define USART_IT_ORE ((uint16_t)0x0360)

#define USART_IT_NE ((uint16_t)0x0260)

#define USART_IT_FE ((uint16_t)0x0160)


它的含義如下(Dx---表示二進(jìn)制中的第x位):

D0~D4:代表中斷標(biāo)志位對應(yīng)的中斷使能位在CRx寄存器的哪一位

D5~D7:代表中斷標(biāo)志位對應(yīng)的中斷使能位在 CR1、CR2還是CR3寄存器中

D8~D15:代表中斷標(biāo)志位在SR寄存器中的哪一位

以上結(jié)論可以通過stm32f10x_usart.c中USART_GetITStatus(USART_TypeDef* USARTx, uint16_t USART_IT);函數(shù)的實(shí)現(xiàn)就可以推理出上面的結(jié)論!以下是其相應(yīng)的代碼。

ITStatus USART_GetITStatus(USART_TypeDef* USARTx, uint16_t USART_IT)

{

uint32_t bitpos = 0x00, itmask = 0x00, usartreg = 0x00;

ITStatus bitstatus = RESET;

assert_param(IS_USART_ALL_PERIPH(USARTx));

assert_param(IS_USART_GET_IT(USART_IT));

if (USART_IT == USART_IT_CTS)

{

assert_param(IS_USART_123_PERIPH(USARTx));

}

usartreg = (((uint8_t)USART_IT) >> 0x05); //D5~D7:代表中斷標(biāo)志位對應(yīng)的中斷使能位在 CR1、CR2還是CR3寄存器中

itmask = USART_IT & IT_Mask;

itmask = (uint32_t)0x01 << itmask; //D0~D4:代表中斷標(biāo)志位對應(yīng)的中斷使能位在CRx寄存器的哪一位

if (usartreg == 0x01)

{

itmask &= USARTx->CR1;

}

else if (usartreg == 0x02)

{

itmask &= USARTx->CR2;

}

else

{

itmask &= USARTx->CR3;

}

bitpos = USART_IT >> 0x08; //D8~D15:代表中斷標(biāo)志位在SR寄存器中的哪一位

bitpos = (uint32_t)0x01 << bitpos;

bitpos &= USARTx->SR;

if ((itmask != (uint16_t)RESET)&&(bitpos != (uint16_t)RESET))

{

bitstatus = SET;

}

else

{

bitstatus = RESET;

}

return bitstatus;

}


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉