亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 2884|回復(fù): 4
打印 上一主題 下一主題
收起左側(cè)

求詳解這個(gè)單片機(jī)字符發(fā)送函數(shù),初學(xué)不久看不懂。拜托各位大師

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:516910 發(fā)表于 2019-4-29 16:01 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
15黑幣
void Sent_UART(u8 dat)
{
        ES = 0;
        TI=0;
        SBUF = dat;
        while(!TI);
TI = 0;
ES = 1;
}

void Uart_Send_String(u8 *string)
{
        while(*string)
        {
                Sent_UART(*string++);
                Delay_Us(5);
        }

}

void ESP8266_Init()
{
        Uart_Send_String("AT\r\n");
        Delay_ms(3000);
        Uart_Send_String("AT\r\n");
        Delay_ms(3000);
                                Uart_Send_String("AT+CIPMUX=1\r\n");
        Delay_ms(3000);
                                Uart_Send_String("AT+CIPSERVER=1,8080\r\n");
}

最佳答案

查看完整內(nèi)容

最重要的是兩個(gè)子函數(shù)值得注意 void Sent_UART(u8 dat) { ES = 0;//開始發(fā)送,關(guān)串口中斷 TI=0;//清空標(biāo)志位 SBUF = dat;//SBUF寄存器寫入數(shù)據(jù) while(!TI); TI = 0; ES = 1;//開啟串口中斷 } void Uart_Send_String(u8 *string) { while(*string) { Sent_UART(*string++); Delay_Us(5);//延時(shí) } } ...
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:90663 發(fā)表于 2019-4-29 16:01 | 只看該作者
最重要的是兩個(gè)子函數(shù)值得注意
void Sent_UART(u8 dat)
{
        ES = 0;//開始發(fā)送,關(guān)串口中斷
        TI=0;//清空標(biāo)志位
        SBUF = dat;//SBUF寄存器寫入數(shù)據(jù)
        while(!TI);
        TI = 0;
        ES = 1;//開啟串口中斷
}

void Uart_Send_String(u8 *string)
{
        while(*string)
        {
                Sent_UART(*string++);
                Delay_Us(5);//延時(shí)
        }

}
while(*string) 相當(dāng)于while( *string != 0) 檢查的是p所指向的地址中的數(shù)據(jù)是否為0,但前提是p不能為NULL
回復(fù)

使用道具 舉報(bào)

板凳
ID:516910 發(fā)表于 2019-4-30 10:49 | 只看該作者
摟貓睡覺的魚 發(fā)表于 2019-4-30 00:01
最重要的是兩個(gè)子函數(shù)值得注意
void Sent_UART(u8 dat)
{

    *string 帶入的是Uart_Send_String("AT\r\n");的內(nèi)存地址 那么"AT\r\n"地址指向的值是不是指的ASCII編碼里邊對(duì)應(yīng)的十六進(jìn)制的值呢?意思就是要逐個(gè)字節(jié)發(fā)送這些值嗎?
   還有Uart_Send_String("AT\r\n");這樣的語句是什么用法呢?("AT\r\n")這個(gè)語法是怎樣的呢?
回復(fù)

使用道具 舉報(bào)

地板
ID:516910 發(fā)表于 2019-4-30 11:11 | 只看該作者
摟貓睡覺的魚 發(fā)表于 2019-4-30 00:01
最重要的是兩個(gè)子函數(shù)值得注意
void Sent_UART(u8 dat)
{

#include <stdio.h>引用這個(gè)頭文件發(fā)送AT指令不是更簡(jiǎn)單嗎
回復(fù)

使用道具 舉報(bào)

5#
ID:90663 發(fā)表于 2019-5-3 10:22 | 只看該作者
首先你說的stdio.h是標(biāo)準(zhǔn)C庫里的標(biāo)準(zhǔn)輸入輸出頭文件 并不包括串口的收發(fā),Uart_Send_String("AT\r\n");可以對(duì)照具體函數(shù)內(nèi)容看,這個(gè)是一位一位發(fā)送的直到你的字符串結(jié)束,while(*string)就是做檢測(cè)的。更具體的東西建議你單步調(diào)試查看寄存器的相關(guān)值,這樣更便于理解。
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表