0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

博途功能ATH:將ASCII字符串轉(zhuǎn)換為十六進制數(shù)

機器人及PLC自動化應(yīng)用 ? 來源:機器人及PLC自動化應(yīng)用 ? 2023-06-11 11:34 ? 次閱讀

說明

使用指令“ATH”將 IN 輸入參數(shù)中指定的 ASCII 字符串轉(zhuǎn)換為十六進制數(shù)。轉(zhuǎn)換結(jié)果輸出到 OUT 輸出參數(shù)中。

  • 使用 IN 參數(shù) (ASCII) 處的指針,可引用以下數(shù)據(jù)類型:STRING, WSTRING, CHAR, BYTE, Array of CHAR, Array of BYTE, WCHAR, Array of WCHAR, Array of WORD。

  • 使用 OUT 參數(shù)(十六進制)處的指針,可引用以下數(shù)據(jù)類型:Array of CHAR, Array of BYTE, Array of WORD, STRING, BYTE, CHAR, WORD, INT, DWORD, DINT, SINT, USINT, UINT, UDINT。以下數(shù)據(jù)類型僅限于 S7-1500:Array of WCHAR, WSTRING, WCHAR, ULINT, LINT, LWORD

通過參數(shù) N,可指定待轉(zhuǎn)換 ASCII 字符的數(shù)量。最多可轉(zhuǎn)換 32767 個有效 ASCII 字符。只能解釋數(shù)字“0”到“9”、大寫字母“A”到“F”以及小寫字母“a”到“f”。所有其它字符都將轉(zhuǎn)換為 0。

由于 ASCII 字符為 8 位,而十六進制數(shù)只有 4 位,所以輸出字長度僅為輸入字長度的一半。ASCII 字符將按照讀取時的順序裝換并保存在輸出中。如果 ASCII 字符數(shù)為奇數(shù),則最后轉(zhuǎn)換的十六進制數(shù)右側(cè)的半個字節(jié)將以“0”進行填充。

參數(shù)

下表列出了“ATH”指令的參數(shù):

參數(shù)

聲明

數(shù)據(jù)類型

存儲區(qū)

說明

IN

Input

VARIANT

D、L

指向 ASCII 字符串的指針

N

Input

INT

I、Q、M、D、L 或常量

待轉(zhuǎn)換的 ASCII 字符數(shù)

RET_VAL

Return

WORD

I、Q、M、D、L

指令的狀態(tài)

OUT

Output

VARIANT

I、Q、M、D、L

十六進制數(shù)

864e837c-0793-11ee-962d-dac502259ad0.png

ASCII 字符和十六進制值

下表顯示了 ASCII 字符及其相對應(yīng)的十六進制值:

ASCII 字符

ASCII 編碼的十六進制值

十六進制數(shù)

"0"

30

0

"1"

31

1

"2"

32

2

"3"

33

3

"4"

34

4

"5"

35

5

"6"

36

6

"7"

37

7

"8"

38

8

"9"

39

9

"A"

41

A

"B"

42

B

"C"

43

C

"D"

44

D

"E"

45

E

"F"

46

F

示例

下表列出了 ASCII 字符串轉(zhuǎn)換為十六進制數(shù)的示例:

IN 的數(shù)據(jù)類型

IN

N

OUT

ENO 狀態(tài)

STRING, WSTRING

'0a23'

4

  • WORD#16#0A23

  • UINT#10#2595

1

STRING, WSTRING

‘123aFx1a23’

10

  • LWORD#16#123AF01A_23000000

  • ULINT#10#1 313 626 236 378 939 392

0

STRING, WSTRING

‘a(chǎn)23’

3

WORD#16#A230

1

STRING, WSTRING

‘0a23’

4

  • WORD#[16#0A23, 16#0000]

  • BYTE#[16#0A, 16#23]

1

STRING, WSTRING

‘a(chǎn)FbE’

1

  • CHAR#‘A’

  • WCHAR#‘A’

1

STRING, WSTRING

‘0a23’

4

  • CHAR#[‘0’, ‘A’, ‘2’, ‘3’]

  • WCHAR#[‘0’, ‘A’, ‘2’, ‘3’]

1

STRING, WSTRING

‘123aFC1a23’

10

  • STRING#‘123AFC1A23’

  • WSTRING#‘123AFC1A23’

1

ArrayOfCHAR, ArrayOfWCHAR

[‘a(chǎn)’, ‘B’, ‘E’, ‘3’]

4

WORD#16#ABE3

1

ArrayOfBYTE

[16#39, 16#32, 16#35]

3

WORD#16#9250

1

ArrayOfWORD

[16#1234, 16#0032, 16#0031, 16#0000]

3

WORD#16#0210

0

ArrayOfWORD

[16#0031, 16#0032, 16#0033, 16#0034]

4

WORD#16#1234

1

ArrayOfWORD

[16#AB31, 16#32AF, 16#4333, 16#0034]

4

WORD#16#0004

0

ArrayOfWORD

[16#0031, 16#0032, 16#0033, 16#0034]

4

[16#1234, 16#0000, 16#0000, 16#0000]

1

ArrayOfWORD

[16#0034, 16#0035, 16#0036, 16#0037, 16#0041, 16#0042, 16#0043, 16#0044]

8

DWORD#16#4567_ABCD

1


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • ASCII
    +關(guān)注

    關(guān)注

    5

    文章

    172

    瀏覽量

    35103
  • 十六進制
    +關(guān)注

    關(guān)注

    2

    文章

    32

    瀏覽量

    37744

原文標(biāo)題:博途功能 ATH: 將 ASCII 字符串轉(zhuǎn)換為十六進制數(shù)

文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應(yīng)用】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    LabVIEW中如何實現(xiàn)十六進制ASCII之間的轉(zhuǎn)換

    實現(xiàn)將這個十六進制表示轉(zhuǎn)換為其對應(yīng)的ASCII表示?如果需要以十六進制等價的形式向儀器發(fā)送命令,該如何實現(xiàn)?解答:
    發(fā)表于 10-20 11:20

    labview教程:十六進制ASCII之間的相互轉(zhuǎn)換轉(zhuǎn)

    表示轉(zhuǎn)換為其對應(yīng)的ASCII表示實現(xiàn)通信。十六進制轉(zhuǎn)換為ASCII:. 為了
    發(fā)表于 01-05 11:21

    LabVIEW字符串正常顯示與十六進制顯示相互強制轉(zhuǎn)換

    下位機發(fā)送的字符串同樣是ASCII碼,一般情況下如果不加轉(zhuǎn)換,在正常顯示情況下是亂碼,在使用LabVIEW在編程處理直接處理這些字符串的時候,就會出現(xiàn)問題了。于是很多時候需要對
    發(fā)表于 06-05 11:07

    十六進制數(shù)字符串至數(shù)值轉(zhuǎn)換的問題

    `通過串口發(fā)送和接收數(shù)據(jù)。接收到的十六進制數(shù)據(jù)想要變?yōu)槭?b class='flag-5'>進制數(shù)據(jù)輸出。但是用“十六進制數(shù)字符串至數(shù)值轉(zhuǎn)換”這個空間最后的顯示結(jié)果是0。自認為
    發(fā)表于 04-09 10:47

    字符串顯示轉(zhuǎn)換十六進制顯示

    字符串顯示轉(zhuǎn)換十六進制顯示。例如:字符串:A21D4700轉(zhuǎn)換十六進制:A21D 4700怎么
    發(fā)表于 04-22 16:50

    分享ascii和16進制字符串之間的轉(zhuǎn)換。

    外加一個ascii轉(zhuǎn)換成等值的十六進制字符串文件,這幾天一直在摸索這個,網(wǎng)上的好多都不滿要求,現(xiàn)在做好了跟大家分享一下。要注意字符串是普通顯
    發(fā)表于 01-12 22:14

    十六進制數(shù)字符串至數(shù)值或字符轉(zhuǎn)換的問題

    進制數(shù)),“字符串到字節(jié)數(shù)組” 轉(zhuǎn)換是按每一位轉(zhuǎn)換的(即48.49.48.50.....) 有沒有什么好辦法解決???通過串口接收到的
    發(fā)表于 10-09 15:03

    數(shù)據(jù)轉(zhuǎn)換、SQL存儲,十六進制字符串、正常字符串

    ”,我們要做的是,當(dāng)使用正常顯示時,仍然將其顯示為“41 42 43 44 ”。下圖是正常字符串轉(zhuǎn)換為十六進制顯示的正常字符串,思想是,先
    發(fā)表于 05-27 10:29

    進制字符串十六進制字符串轉(zhuǎn)換,十六進制字符串顯示為ASCII碼,拿來分享

    自己用labview做的二進制字符串十六進制字符串轉(zhuǎn)換,十六進制
    發(fā)表于 01-24 11:18

    十六進制字符串轉(zhuǎn)換成二進制數(shù)

    一種十六進制字符串轉(zhuǎn)換成二進制數(shù)的方法
    發(fā)表于 09-11 14:39

    字符串轉(zhuǎn)為十六進制軟件工具

    字符串轉(zhuǎn)為十六進制軟件工具
    發(fā)表于 06-30 09:51 ?453次下載

    如何進行ASCII碼和十六進制數(shù)轉(zhuǎn)換

    本文檔的主要內(nèi)容詳細介紹的是如何使用51單片機進行ASCII碼和十六進制數(shù)轉(zhuǎn)換資料免費下載題目:用查表法一位
    發(fā)表于 07-08 17:41 ?7次下載
    如何進行<b class='flag-5'>ASCII</b>碼和<b class='flag-5'>十六進制</b><b class='flag-5'>數(shù)</b>的<b class='flag-5'>轉(zhuǎn)換</b>

    關(guān)于STEP7庫功能字符串轉(zhuǎn)換

    FC94 ATH ASCII轉(zhuǎn)換為十六進制 FC95 HTA 十六進制轉(zhuǎn)換為
    的頭像 發(fā)表于 10-10 10:50 ?4242次閱讀

    HTA:十六進制數(shù)轉(zhuǎn)換為ASCII字符串

    使用該指令,可以將在輸入 IN 中指定的十六進制數(shù)轉(zhuǎn)換為 ASCII 字符串。轉(zhuǎn)換結(jié)果存儲到參數(shù)
    的頭像 發(fā)表于 06-19 11:55 ?2513次閱讀

    HTA:十六進制數(shù)轉(zhuǎn)換為 ASCII 字符串

    8 位,而十六進制數(shù)只有 4 位,所以輸出值長度為輸入值長度的兩倍。在保持原始順序的情況下,十六進制數(shù)的每個半位元組轉(zhuǎn)換為一個
    的頭像 發(fā)表于 06-26 11:01 ?4087次閱讀