大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
出于安全性考虑,,,javascript不能操作本地设备的,,,如果需要读取串口中输入的数据,,,用PHP代码来试试。。。。。
创新互联公司专业为企业提供合浦网站建设、合浦做网站、合浦网站设计、合浦网站制作等企业网站建设、网页设计与制作、合浦企业网站模板建站服务,十年合浦做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
1,首先 你要确认你用的程序是正确的
2,确定硬件是否正确 比如晶振频率啊 连线啊 还有单片机型号选的对不对
3,你拿别人调试好的程序使用不好用 首先确认一下你用的硬件环境与你拿来调试好程序的那个人的硬件是否一致
这些都要考虑的 还有就是电脑串口软件选项是否都选择正确 这些都一一仔细检查一遍
使用read函数读取不到数据 可能串口参数配置问题,最简单的解决办法就是恢复旧的终端设备,tcsetattr(STDIN_FILENO,TCSANOW, opt); 然后从最简单的配置一步一步来。
使用read函数读终端返回错误数据 很可能是终端回显开启,配置一下关闭回显功能即可opt.c_lflag = ~ECHO。总结 在配置串口参数时,当总是出现read和write引发的段错误时,建议先恢复一下串口配置,一步一步,再根据所出现的问题再一步一步解决
帖了这么多代码还不够啊,你的布尔变量comOpened和hCom的赋值不在这里,有没有调试过这两个值会不会有问题?譬如你的comOpened和comOpened在执行到read()之前根本没有得到机会被初始化为FALSE和NULL的话,这两个变量很有有可能存储的是非零的垃圾值,这样的状态进入到read后也还是会跳过if语句,使hCom未被打开就被ReadFile了。 因此,问题可能不是出在这里,而是其他地方的初始化问题,下断点再看看呢!