久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: 關于MCU SUBF串口發送的問題求大佬解釋 [打印本頁]

作者: hch0086    時間: 2019-4-16 15:31
標題: 關于MCU SUBF串口發送的問題求大佬解釋
如圖所示,用pcf8591通過AD轉換獲取數值并通過串口返回,圖為樣例程序現在不懂的點在于連寫了四個SUBF,在第一個SUBF操作完成后,發送中斷不就置1了嗎,這個程序是如何執行的。
此外,如果我只想通過串口返回D0光敏電阻值,此程序應該如何改寫。
小白虛心求教,感激不盡。

qq_pic_merged_1555397767402.jpg (42.88 KB, 下載次數: 23)

qq_pic_merged_1555397767402.jpg

作者: 笨笨兔    時間: 2019-4-16 16:38
沒看全你的程序:估計程序不管發送中斷,就靠延時來發送;
延時發送不可取,應該用中斷發送,寫好發送中斷即可;這里面有好多工作要做。
作者: yzwzfyz    時間: 2019-4-16 16:56
在第一個SUBF操作完成后,需要等一段時間(串行發送需要時間的),串行完數據后,才將發送標記置1!然而,中斷是否發生還取決于,你讓不讓它中斷(中斷允許位是否已被你置1)。
程序中DELAY(200),就是等待它串行完成,而后再發第二個。可以猜到,“中斷允許位是被清0的,即不允許中斷”。
作者: wulin    時間: 2019-4-16 17:04
/**********串口發送函數*************/
void SendOneByte(unsigned char c)
{
    SBUF = c;                //發送數據
    while(!TI);        //等待發送完成
    TI = 0;                        //發送中斷請求標志位清0
}
//發送字符串(這里4個字節:D[0]~D[3])
void xxxx()
{
        unsigned char i;
        //其它語句
        //........
        ES=0;                        //關串口中斷(如果使用了串口中斷)
        for(i=0;i<4;i++)
        {
                SendOneByte(D[i]);//調用串口發送函數
        }
        ES=1;                //開串口中斷(如果使用了串口中斷)
}
作者: xuyaqi    時間: 2019-4-16 17:18
程序不全不好判斷。
作者: hch0086    時間: 2019-4-22 21:43
非常感謝以上大佬,問題已經解決了




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: av天天干 | 一二三在线视频 | 波多野吉衣在线播放 | 99久9| 久久一起草 | av在线一区二区三区 | 农村黄性色生活片 | 懂色av色香蕉一区二区蜜桃 | 天天操夜夜操 | 黄色毛片免费看 | 91不卡在线 | 欧美成人免费在线视频 | 国产精品久久久久久久久久免费看 | 亚洲免费毛片 | 99热欧美| 久久久久成人精品免费播放动漫 | 精品久久久久久久人人人人传媒 | 99pao成人国产永久免费视频 | 成人精品在线观看 | 国产精品免费视频一区 | 亚洲国产精品99久久久久久久久 | 天天色图 | 青娱乐国产 | 亚洲国产精品成人综合久久久 | 一区二区三区日韩 | 狠狠躁夜夜躁人人爽天天高潮 | 日韩成人免费中文字幕 | 国产免费麻豆视频 | 日本福利视频免费观看 | 毛片高清 | 国产一级视频在线观看 | 成人二区三区 | 91一区二区三区 | 99久久99| 男女羞羞视频免费 | 性生生活大片免费看视频 | 国产精品成人在线播放 | 国产精品久久久久一区二区三区 | zzzwww在线看片免费 | 岛国视频 | 天天干夜夜操 |