C# 总是收到“吗?”&引用;从C中的串行端口#
我获取一些发送到虚拟串行端口的字节,这些字节来自PIC微控制器,我使用ISIS进行模拟,C#捕获并显示这些字节 在C#中,我只是打开虚拟串行端口,然后读取传入的数据C# 总是收到“吗?”&引用;从C中的串行端口#,c#,microcontroller,pic,C#,Microcontroller,Pic,我获取一些发送到虚拟串行端口的字节,这些字节来自PIC微控制器,我使用ISIS进行模拟,C#捕获并显示这些字节 在C#中,我只是打开虚拟串行端口,然后读取传入的数据 SerialPort s = new SerialPort("COM2"); s.Open(); 当我点击一个按钮时,会执行一个包含 TextBox1.Text = s.BytesToRead.ToString(); //Displays the number of received Bytes. TextBox2.Text =
SerialPort s = new SerialPort("COM2");
s.Open();
当我点击一个按钮时,会执行一个包含
TextBox1.Text = s.BytesToRead.ToString(); //Displays the number of received Bytes.
TextBox2.Text = s.ReadExisting();
我在这张照片上使用的语言是质子
我只是发送端口B中的内容
PORTB = 10
HSerOut [PORTB]
结果总是一个“?”
HSerOut[“你好”]->
我遗漏了什么?如果任何人在与微控制器通信时通过串行端口接收到奇怪的字符,您应该确保您指定了正确的时钟或XTAL,以及SPBRG,对于
9600波特
,使用SPBRG=23
,以及XTAL=3.686
?表示无法打印的字符。检查整数值以确保返回预期值。在嵌入式开发中,二进制值优于文本。还有,您使用的是什么“Endianness”呢?您的代码片段工作的可能性很小。您必须注意串行端口设置。波特率是一个重要的参数,设置错误时会产生非ASCII字符。这将产生问号。