<acronym id="xonnx"></acronym>
      <td id="xonnx"></td>
    1. <pre id="xonnx"></pre>

      1. 專注電子技術學習與研究
        當前位置:單片機教程網 >> STM32 >> 瀏覽文章

        STM8 串口功能使用簡介

        作者:huqin   來源:本站原創   點擊數:  更新時間:2014年05月01日   【字體:

            說實話STM8確實用起來比較方便,雖然網上的資料不多,但是在各大論壇都可以找到自己想要的東西,下面說說我在使用時遇到的問題和應該注意的事項,,

         
          我在使用是用的是庫函數。
         
        1:先配置端口:
         
        GPIO_Init(LEDS_PORT, ( TX ),  GPIO_MODE_OUT_PP_LOW_FAST);
        GPIO_Init(LEDS_PORT, ( RX ) , GPIO_MODE_IN_PU_NO_IT );
         
         
         
        注意:在開始的時后程序寫完后一直出現接收不到數據,在網上問了許多人,然后才發先原來是沒有把,接收端口配置成接收狀態,也有人說不用配置,直接用就接收到數據,但是我的實在實現不了。
         
         
         
        2:函數初始化:
         
         
        void Uart_Init(void)
        {
            //UART1_DeInit();
            UART1_Init((u32) 9600, UART1_WORDLENGTH_8D, UART1_STOPBITS_1,
            UART1_PARITY_NO , UART1_SYNCMODE_CLOCK_DISABLE ,     UART1_MODE_TXRX_ENABLE);
            UART1_ITConfig(UART1_IT_RXNE_OR,ENABLE );
            UART1_Cmd(ENABLE );
         
        }
         
        注意:這個初始化的函數應在時鐘函數初始化之后,因為Uart_Init():在調用時使用了關于時鐘的一些參數,因為我們經常會在工程中切換函數,這樣會對發送和接收數據造成影響。。
         
        3 :接收 ,我么可以在主函數中接收,也可以在串口中斷中接收數據。。
         
        @far @interrupt void UART_RI (void)
         
        {
        disableInterrupts();
        if(UART1_GetITStatus(UART1_IT_RXNE )!= RESET) 
            {
        Res =UART1_ReceiveData8()-0x30;
         
        }
         
         
        //UART1_SendByte( keycounter);
        UART1_SendByte(1);
        UART1_SendByte(2);
        UART1_SendByte(3);
        UART1_SendByte(4);
        //data_Analysis_1(); 
         
         
        enableInterrupts();
        }
         
         這是我在使用時遇到的一些問題
        關閉窗口

        相關文章

        欧美性色欧美精品视频,99热这里只有精品mp4,日韩高清亚洲日韩精品一区二区,2020国自产拍精品高潮