中文字幕 另类精品,亚洲欧美一区二区蜜桃,日本在线精品视频免费,孩交精品乱子片免费

<sup id="3hn2b"></sup>

    1. <sub id="3hn2b"><ol id="3hn2b"></ol></sub><legend id="3hn2b"></legend>

      1. <xmp id="3hn2b"></xmp>

      2. 新聞中心

        EEPW首頁 > 消費電子 > 設(shè)計應(yīng)用 > STM32 MSN&Dial實驗分析及原理

        STM32 MSN&Dial實驗分析及原理

        作者: 時間:2009-07-30 來源:網(wǎng)絡(luò) 收藏

        {word=USART_ReceiveData(USART3);
        if(word==''>'')
        break;
        }
        Serial_PutString(We are the best team!x1a); //編寫短信內(nèi)容
        while(1)
        {word=USART_ReceiveData(USART3);
        if(word==''n'')
        break;
        }
        }

        本文引用地址:http://www.antipu.com.cn/article/166918.htm

        五.程序深入
        5.1
        需要用到的每一只引腳都需要使能引腳時鐘,本程序需要用到三個按鍵以及一個串口(USTAR3),其中兩

        個按鍵在PC口,一個按鍵在PA口,程序在RCC_Configuration()函數(shù)里面實現(xiàn):
        /*使能GPIOx 時鐘 */
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOx, ENABLE);

        /* 使能USARTx 時鐘 */
        RCC_APB1PeriphClockCmd(RCC_APB_Periph_USARTx, ENABLE);

        /* 使能按鍵引腳時鐘 */
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO| RCC_APB2Periph_GPIO_BUTTON |

        RCC_APB2Periph_GPIO_WKUP , ENABLE);

        5.2
        每一只引腳都有復(fù)用功能,所以用到的每一只引腳都需要配置引腳的功能,程序在

        GPIO_Configuration()函數(shù)里面實現(xiàn):

        GPIO_InitTypeDef GPIO_InitStructure;

        GPIO_PinRemapConfig(GPIO_PartialRemap_USART3, ENABLE);

        /* 設(shè)置USARTx_Tx 為復(fù)用推挽輸出,頻率為50MHz */
        GPIO_InitStructure.GPIO_Pin = GPIO_TxPin;
        GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
        GPIO_Init(GPIOx, GPIO_InitStructure);

        /* 設(shè)置USARTx_Rx為浮空輸入,頻率為50MHz */
        GPIO_InitStructure.GPIO_Pin = GPIO_RxPin;
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;
        GPIO_Init(GPIOx, GPIO_InitStructure);

        /* 設(shè)置按鍵引腳為浮空輸入,頻率為2MHz */
        GPIO_InitStructure.GPIO_Pin = BUT_LEFT | BUT_RIGHT | BUT_UP | BUT_DOWN | BUT_Tamper |

        BUT_SEL;
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;
        GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
        GPIO_Init(GPIO_KEY, GPIO_InitStructure);

        GPIO_InitStructure.GPIO_Pin = BUT_WKUP;
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;
        GPIO_Init(GPIO_WKUP, GPIO_InitStructure);

        引腳的配置有三項,Pin、Speed與Mode,在設(shè)置USARTx_Tx時把三項都設(shè)置了,而在設(shè)置USART_Rx時卻只設(shè)置

        了兩項,其中Speed沒有設(shè)置,則保持上一次設(shè)置的狀態(tài),也就是在設(shè)置USART_Tx時的50MHz。同理在設(shè)置上

        下左右與Tamper、SEL鍵對應(yīng)引腳時都設(shè)置了三項,而設(shè)置WKUP鍵對應(yīng)引腳時只是配置了兩項。
        5.3 在主函數(shù)的死循環(huán)里面最后一步是調(diào)用delay()函數(shù)來延遲100ms,作用是防止按鍵的抖動。而delay

        函數(shù)的實現(xiàn)是通過調(diào)用SysTick時鐘源溢出中斷來實現(xiàn)的,SysTick時鐘源在main函數(shù)的開頭設(shè)置了為1ms中斷

        一次。
        5.4 主程序是通過串口3和模塊通信的,而波特率設(shè)置為115200,程序如下:

        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;

        其實模塊也有其通訊頻率的,假如兩者的頻率不同,那么就不能達到通訊的目的,現(xiàn)在就讓我們來看看如何查看和修改模塊的通訊頻率。硬件的連接很簡單,只需要把手機模塊的電源接上,插上手機模塊和手機卡,用USB轉(zhuǎn)串口線把電腦和手機模塊連接起來,打開SecureCRT軟件,并設(shè)置好通訊頻率。假如軟件設(shè)置的通信頻率和手機模塊的實際頻率不同,那么在軟件的窗口就會出現(xiàn)亂碼?,F(xiàn)在有一個疑問啦,假如手機模塊剛買回來,不知道通信頻率怎么辦,不用擔(dān)心,手機模塊如果沒經(jīng)設(shè)置,它的通訊頻率是默認第一收數(shù)據(jù)的數(shù)據(jù)頻率。下面舉例子把手機模塊的通訊頻率由115200改為57600,

        具體指令at+ipr?的作用為查看當(dāng)前手機模塊的通訊頻率,at+ipr=115200為設(shè)置手機模塊的當(dāng)前通訊頻率?;剀囍螅俅屋斎霐?shù)據(jù)就會出現(xiàn)亂碼,因為手機模塊的通訊頻率已經(jīng)修改了,現(xiàn)在只需停止串口軟件通信,然后把軟件的通訊頻率改為115200就可以了。


        上一頁 1 2 下一頁

        關(guān)鍵詞: 原理 分析 實驗 MSN&Dial STM32 手機

        評論


        相關(guān)推薦

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

        關(guān)閉