flash as3_vinson_02:as3-arduino-connector-master【一个flash可用的监听串口的ANE】

1.使用ane请在库连接选项内添加 ArduinoConnector.ane文件;

2.实例运行会遇到
ArgumentError: Error #3500: The extension context does not have a method with the name setupPort.
at flash.external::ExtensionContext/_call()
at flash.external::ExtensionContext/call()
at com.quetwo.Arduino::ArduinoConnector/connect()[I:\Work\Clients\DirectAthletics\As3ArduinoConnector\trunk\as3-library\Windows-x86\src\com\quetwo\Arduino\ArduinoConnector.as:102]
at com::Main()[F:\Project\demo1_1\com\Main.as:21]
at runtime::ContentPlayer/loadInitialContent()
at runtime::ContentPlayer/playRawContent()
at runtime::ContentPlayer/playContent()
at runtime::AppRunner/run()
at ADLAppEntry/run()
at global/runtime::ADLEntry()
这个问题,原因是缺少两个DLL文件,将两个文件放到 C:\Windows\System32(32位系统)、C:\Windows\SysWOW64(64位系统)下,即可正常运行。

3.dll文件名称:
pthreadgc2.dll ;
libgcc_s_dw2-1_jb51.dll 。

4.演示代码:

package
{
    import com.Main;
    import com.event.MyEvent;
    import com.quetwo.Arduino.ArduinoConnector;
    import fl.transitions.easing.Strong;
    import flash.display.Sprite;
    import flash.events.Event;
    
    public class MyComMessenger extends Sprite
    {
        var arduino:ArduinoConnector;
        private var comPort:String;
        private var baud:Number;
        
        public function MyComMessenger()
        {
            super();
            
            comPort = "com3";
            baud = 9600;
            
            arduino = new ArduinoConnector();
            arduino.addEventListener("socketData", onGetData);
            arduino.connect(comPort, baud);
        }
        
        private function onGetData(e:Event):void
        {
            var str:String = arduino.readBytesAsString();
            trace(str);
            trace("接受到串口通讯报文。");
        }
        
        private function onSendShort(message:String):void
        {
            for (var i:int = 0; i < message.length; i=i + 2) 
            {
                arduino.writeByte(uint("0x" + message.substr(i, 2)));
            }
            trace("串口通信模块: 发送串口命令: " + message);
            arduino.flush();
        }
        
        public function dispose():void
        {
            arduino.dispose();
            arduino.removeEventListener("socketData", onGetData);
            arduino = null;
        }        
    }
}
View Code

猜你喜欢

转载自www.cnblogs.com/xxdmx712/p/12641920.html