新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > LPC17XX串口接收數據死機現象解決辦法

        LPC17XX串口接收數據死機現象解決辦法

        作者: 時間:2016-11-09 來源:網絡 收藏
        寫了段串口接收的函數gprs_callback放到串口中斷中,如下:

        void gprs_callback(void)
        {
        if(GprsCntGprsReceive[GprsCnt++] = LPC_UART2->RBR;
        }

        本文引用地址:http://www.104case.com/article/201611/318048.htm

        其中變量都是定義volatile的公共變量,但是發現程序極不穩定,常常運行一會就死機。

        后來發現先把RBR送給一個局部變量,再送給公共變量就沒問題了,如下:

        void gprs_callback(void)
        {
        char b;
        b = LPC_UART2->RBR;
        if(GprsCntGprsReceive[GprsCnt++] = b;
        }

        具體原因還不清楚。



        評論


        技術專區

        關閉
        主站蜘蛛池模板: 乌兰浩特市| 承德县| 金沙县| 定南县| 广元市| 通海县| 思茅市| 通化县| 黄骅市| 大悟县| 卓尼县| 丹江口市| 承德县| 益阳市| 彭水| 桓台县| 黑水县| 南皮县| 胶南市| 铜梁县| 富阳市| 和林格尔县| 卓尼县| 合作市| 荥经县| 从江县| 东源县| 肥东县| 乌拉特后旗| 游戏| 屏东县| 江油市| 阿鲁科尔沁旗| 秀山| 南漳县| 察哈| 松阳县| 茂名市| 镶黄旗| 澄城县| 泉州市|