1.要将playersetting下的optimization中的api COmpatibility Level设置为.net2.0才可实现serialport的new
2.在unity中对于serialport自带的datareceived方法是无法启用的,接收数据需要自己写
3.为了不影响主线程main-主要负责UI数据处理,对于串口数据的处理最好和主线程数据处理分开
4.串口数据处理时,数据的接收和数据处理也是最好分开处理,这是为了防止数据丢失(接收的数据快,处理数据慢)
5.如果开启线程不当可能会引起unity崩溃,如果是出现unity需要调试算是比较严重的情况了,重装unity或者重启机子都无法解决,现在针对出现这种情况做个总结:
(1)启动unity时按住alt,打开另一个工程
(2)打开任何项目都会崩时,删除C:\ProgramData\unity下面的文件(或者卸载的时候删除)
(3)如果都无法解决,只能看是否机子是否中毒了
6.数据接收和数据处理参考代码:
void Start ()
{
//设置com的portname、baudrate、parity、databits、stopbits
sp = new SerialPort(comname, 115200, Parity.Even, 8, StopBits.One);