51單片機系統中SBUF,由於SBUF是一個大小1byte的寄存器,放入字符型數據1,比如如果單片機接收到一個ASC碼0x31,
單片機去發送 一個1:
一,勾選16進制的話,就是將1作爲16進制看待,則會去發送0x01 (0x01)(SOH)
二,未勾選16進制的話,則會發送ASC碼0x31 (31) (1)
接收情況如下:(在串口助手裏的顯示)
1、第一種情況
勾選16進制的話,就會以16進制的格式顯示,顯示爲01
未勾選16進制的話,就會以ASCII碼中的字符來顯示爲soh
2、第二種情況
勾選16進制的話,就會以16進制的格式顯示,因爲ASCii碼本身就是16進制,則會顯示31;
未勾選16進制的話,則會顯示1,因爲1的ASCii碼是0x31;
所以在51中進行的串口通信時SBUF=0x31,接收以ASCII爲1;
或是定義一個uchar a=1,SBUF=a,接收以ASCII爲1;(在發送過程中我們並沒有在程序中設定以什麼方式發送,故統一以計算機接收標準(ASCII)發出)
(但是在軟件串口助手中我們是可以選擇想發送的類型)