OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 7465|回复: 6

关于自制串口软件的疑问,求赐教

[复制链接]

54

主题

347

帖子

0

精华

高级会员

Rank: 4

积分
948
金钱
948
注册时间
2022-4-20
在线时间
356 小时
发表于 2022-11-22 16:09:44 | 显示全部楼层 |阅读模式
10金钱
本帖最后由 驭剑的秘密 于 2022-11-22 16:10 编辑

最近在学习串口软件,我想请问一下,如何实现点击HEX时将文本框的内容转换为16进制模式显示,点击ASCLL时,能把16进制显示的内容恢复成原来的内容,目前实现了HEX的点击,接下来该怎么做?实际上就是算法上的问题,由文本框显示的字符串"3"解析出字节0x33→文本框显示字符串"33"→点击后文本框显示字符串"3",我实在想不到该如何实现,请大佬们赐教。

屏幕截图 2022-11-22 153424.png
屏幕截图 2022-11-22 153224.png

最佳答案

查看完整内容[请看2#楼]

哦,16进制转字符串?以下代码未经测试:
又菜又爱指点
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

10

主题

3281

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8206
金钱
8206
注册时间
2020-5-11
在线时间
3700 小时
发表于 2022-11-22 16:09:45 | 显示全部楼层
本帖最后由 LcwSwust 于 2022-11-23 09:19 编辑
驭剑的秘密 发表于 2022-11-22 17:41
用的是C#,今天已经做出来了转16进制了,然后转回去不会做,希望赐教

哦,16进制转字符串?以下代码未经测试:
  1. string[] s = textBox2.Text.Trim().Split(' ');//以空格分割
  2. byte[] b = new byte[s.Length];
  3. for (i = 0; i < s.Length; i++)
  4. {
  5. b[i] = Convert.ToByte(s[i], 16);//16进制转字节
  6. }
  7. textBox2.Text = Encoding.Default.GetString(b);//字节数组转字符串
复制代码


专治疑难杂症
回复

使用道具 举报

10

主题

3281

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8206
金钱
8206
注册时间
2020-5-11
在线时间
3700 小时
发表于 2022-11-22 17:16:08 | 显示全部楼层
本帖最后由 LcwSwust 于 2022-11-22 17:37 编辑

文本转16进制?
以下代码未经测试:
dim i as integer
dim s as stringDim byte() As Byte
bytes =System.Text.Encoding.GetEncoding("Gb2312").GetBytes(textBox2.Text)'字符串转字节数组
for i=lbound(bytes) to ubound(bytes)'字节转HEX
        s = s & Strings.Right("0" & Hex(bytes(i)), 2) & " "
next i
textBox1.Text=s

上面是VB.net
下面是C#,部分代码
byte[] bytes = System.Text.Encoding.GetEncoding("gb2312").GetBytes(textBox2.Text);
                for (i = 0; i < len; i++)
                {
                    str = str + readBuffer.bytes ("X2") + " ";
                }

专治疑难杂症
回复

使用道具 举报

54

主题

347

帖子

0

精华

高级会员

Rank: 4

积分
948
金钱
948
注册时间
2022-4-20
在线时间
356 小时
 楼主| 发表于 2022-11-22 17:41:15 | 显示全部楼层
LcwSwust 发表于 2022-11-22 17:16
文本转16进制?
以下代码未经测试:
dim i as integer

用的是C#,今天已经做出来了转16进制了,然后转回去不会做,希望赐教
又菜又爱指点
回复

使用道具 举报

11

主题

2103

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4588
金钱
4588
注册时间
2015-1-10
在线时间
574 小时
发表于 2022-11-23 09:08:02 | 显示全部楼层
额...定时查询单选框的状态?或者单选框状态加个信号槽?
回复

使用道具 举报

54

主题

347

帖子

0

精华

高级会员

Rank: 4

积分
948
金钱
948
注册时间
2022-4-20
在线时间
356 小时
 楼主| 发表于 2022-11-29 10:13:11 | 显示全部楼层
LcwSwust 发表于 2022-11-23 09:14
哦,16进制转字符串?以下代码未经测试:

疫情原因被封了一星期,现在才看见。
十分感谢,虽然直接用你这个没成功,但是思路来自于你这里
又菜又爱指点
回复

使用道具 举报

10

主题

3281

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8206
金钱
8206
注册时间
2020-5-11
在线时间
3700 小时
发表于 2022-11-29 11:15:46 | 显示全部楼层
驭剑的秘密 发表于 2022-11-29 10:13
疫情原因被封了一星期,现在才看见。
十分感谢,虽然直接用你这个没成功,但是思路来自于你这里

嗯,我们小区也被封着,正好刚写了两个例子,你可以去看看我发的帖。
http://www.openedv.com/forum.php?mod=viewthread&tid=340771&extra=
专治疑难杂症
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-24 21:30

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表