在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<s id="cmphk"><label id="cmphk"></label></s>
    <span id="cmphk"><var id="cmphk"></var></span>
    <dfn id="cmphk"><var id="cmphk"></var></dfn>
    <menu id="cmphk"><thead id="cmphk"></thead></menu>

    <address id="cmphk"></address>

      <dfn id="cmphk"></dfn>
      
      
      <span id="cmphk"></span>

      <object id="cmphk"><tt id="cmphk"></tt></object>
      1. 新聞中心

        ARM的串口通信配置

        作者: 時間:2016-11-26 來源:網(wǎng)絡(luò) 收藏
        #include "Usart.h"

        #include "stdio.h"

        本文引用地址:http://www.biyoush.com/article/201611/321631.htm

        void usart_Configuration(void)
        {GPIO_InitTypeDef GPIO_InitStructure;
        USART_InitTypeDef USART_InitStructure;
        NVIC_InitTypeDef NVIC_InitStructure;
        USART_ClockInitTypeDefUSART_ClockInitStructure;
        //////////////////////////////////////////////////////////////////
        //
        USART_ClockInit(USART1, &USART_ClockInitStructure);

        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_Cmd(USART1, ENABLE);
        USART_ITConfig(USART1,USART_IT_RXNE,ENABLE);
        USART_ITConfig(USART1,USART_IT_TXE,ENABLE);

        USART_ClearFlag(USART1, USART_FLAG_TC);
        }


        int fputc(int ch, FILE *f)
        {


        USART_SendData(USART1,(uint8_t) ch);


        while (USART_GetFlagStatus(USART1, USART_FLAG_TC) == RESET)
        {

        }

        return ch;
        }


        int fgetc(FILE *f)
        {

        while (USART_GetFlagStatus(USART1, USART_FLAG_RXNE) == RESET)
        {}
        return (int)USART_ReceiveData(USART1);
        }

        void USART1_IRQHandler(void)
        {u16 RxBuf;
        if(USART_GetFlagStatus(USART1,USART_IT_RXNE)==SET)
        {
        RxBuf=USART_ReceiveData(USART1);
        //printf("%d",RxBuf);
        //printf("");
        switch(RxBuf)
        {//
        case 1: printf("1 ");printf("%d",255);break;//對方發(fā)送是1
        case 2: printf("2 ");printf("%d",255);break;//對方發(fā)送是2
        case 3: printf("3 ");printf("%d",255);break;//對方發(fā)送是3
        default: printf("4 ");printf("%d",255);break;
        }
        }
        if(USART_GetITStatus(USART1, USART_IT_TXE) != RESET)//這段是為了避免STM32 USART 第一個字節(jié)發(fā)不出去的BUG
        {
        USART_ITConfig(USART1, USART_IT_TXE, DISABLE);//禁止發(fā)緩沖器空中斷,
        }
        }



        關(guān)鍵詞: ARM串口通信配

        評論


        技術(shù)專區(qū)

        關(guān)閉