Adobe Air和Serproxy/Thinkerproxy的串行端口通信

Adobe Air和Serproxy/Thinkerproxy的串行端口通信,air,serial-port,Air,Serial Port,我正在一个小型Air应用程序中使用serproxy/thinkerproxy进行串行通信。 我有两个硬件设备来测试它。一个是条形码扫描器,它工作得很好 另一个是定制板。这也算起作用了。问题是这些字符不可读。我认为这是字符集的问题(不确定),所以我在处理ProgressEvent.SOCKET_数据事件的函数中尝试了类似的方法: var cs:Array = new Array( 'ISO-8859-1',

我正在一个小型Air应用程序中使用serproxy/thinkerproxy进行串行通信。 我有两个硬件设备来测试它。一个是条形码扫描器,它工作得很好

另一个是定制板。这也算起作用了。问题是这些字符不可读。我认为这是字符集的问题(不确定),所以我在处理ProgressEvent.SOCKET_数据事件的函数中尝试了类似的方法:

var cs:Array = new Array(   'ISO-8859-1',
                                            'ISO-8859-2',
                                            'ISO-8859-3',
                                            'ISO-8859-4',
                                            'ISO-8859-5',
                                            'ISO-8859-6',
                                            'ISO-8859-7',
                                            'ISO-8859-8',
                                            'ISO-8859-9',
                                            'ISO-8859-10',
                                            'ISO-8859-11',
                                            'ISO-8859-12',
                                            'ISO-8859-13',
                                            'ISO-8859-14',
                                            'ISO-8859-15',
                                            'ISO-8859-16',
                                            'ISO-8859-17',
                                            'ISO-8859-18',
                                            'ISO-8859-19',
                                            'ISO-8859-20',
                                            'ASMO-708',
                                            'DOS-720',
                                            'x-mac-arabic',
                                            'windows-1256',
                                            'ibm775',
                                            'windows-1257',
                                            'ibm852',
                                            'x-mac-ce',
                                            'windows-1250',
                                            'gb18030',
                                            'EUC-CN',
                                            'gb2312',
                                            'gb18030',
                                            'hz-gb-2312',
                                            'x-mac-chinesesimp',
                                            'big5',
                                            'x-Chinese-CNS',
                                            'x-Chinese-Eten',
                                            'x-mac-chinesetrad',
                                            'cp866',
                                            'koi8-r',
                                            'koi8-u',
                                            'x-mac-greek',
                                            'windows-1253',
                                            'ibm869',
                                            'DOS-862',
                                            'iso-8859-8-i',
                                            'x-mac-hebrew',
                                            'windows-1255',
                                            'x-EBCDIC-Arabic',
                                            'x-EBCDIC-CyrillicRussian',
                                            'x-EBCDIC-CyrillicSerbianBulgarian',
                                            'x-EBCDIC-DenmarkNorway',
                                            'x-ebcdic-denmarknorway-euro',
                                            'x-EBCDIC-FinlandSweden',
                                            'x-ebcdic-finlandsweden-euro',
                                            'x-ebcdic-finlandsweden-euro',
                                            'x-iscii-as',
                                            'unicode',
                                            'unicodeFFFE',
                                            'utf-7',
                                            'utf-8',
                                            'us-ascii',
                                            'windows-1258',
                                            'x-IA5',
                                            'Windows-1252'
                                        );

                for each(var csStr:String in cs){

                    var info:String = _socket.readMultiByte(_socket.bytesAvailable, csStr);
                    temp = csStr + ":" + info;

                    if(info.length > 0)
                        dispatchEvent(new TextEvent(EVENT_ON_DATA_RECEIVED, false, false, temp) );
                }
唯一包含值的值是ISO-8859-1。看起来是这样的:

定制板应该发送如下内容:0x40


因此,不确定这里的最佳方法是什么(我知道我可以尝试更多的字符集)。有什么想法吗?

你想猜未知的编码吗?查看线路板发送的原始字节,以检查它们是否发生了位移位。

您是否检查了设置-我怀疑奇偶校验位的设置不同