51微控制器怎麼生成16進位制檔案?

51微控制器怎麼生成16進位制檔案?靈敏風鈴9h2022-01-05 19:35:05

如果是ASCII碼錶內的符號值,那麼ASCII值本身就可以認為是 16進位制的(因為進位制只是給人看的,微控制器只有2進位制,沒有ASCII 和 Hex 之分),但如果是Hex值,經過ASCII傳送後,需要接收解出數值,那麼可以用這個函式:

uchar ASCII_ToHex(uchar ascii_data) //ASCII 轉 Hex 函式

{

uchar hex_data=0; //定義 Hex變數儲存轉換結果

if(ascii_data>=‘0’ && ascii_data<=‘9’) hex_data=ascii_data-‘0’; //若 轉換內容為 字元‘0-9’,則轉成對應數字0-9

else if(ascii_data>=‘a’ && ascii_data<=‘f’) hex_data=ascii_data-‘a’+10; //若 轉換內容為 字元‘a-f’,則轉成數字10-15

else if(ascii_data>=‘A’ && ascii_data<=‘F’) hex_data=ascii_data-‘A’+10; //若 轉換內容為 字元‘A-F’,則轉成數字10-15

return hex_data; //返回轉換結果,非以上字元,不在Hex(0-F)範圍內,預設0

}//