I need to read a serial port to get data using a RS232 cable, and want to send the output to a PHP server, but i found a way using node.js. I searched a lot and also found a solution in PHP but it doesn't work for me. How to do this?
1条回答
- douzhao7634 2017-10-27 05:16关注
If you are on Linux, I would try opening a file descriptor to /dev/your_serial_port. Your php script will probably need permissions (root) to read from this port. You may have a tty group or something similar that allows read from this device. In that case, I would recommend starting your script as root, and using
posix_setgid()
possibly withposix_getgrnam()
to change your process group and not parade around as root.$groupInfo = posix_getgrnam("tty"); if (! isset($groupInfo["gid"])) { // "Invalid worker group. } else if (! posix_setgid($groupInfo["gid"])) { // Failed to change worker group. (privilege required) }
I feel bad that you are probably on windows, so I dug around and I think you can open the file 'com1:' on windows and probably read serial data. If that doesn't work, look for a cli program that can dump serial data to stdout and use something like proc_open to read data from it. I have no windows computer to try anything ;(
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 无线电能传输系统MATLAB仿真问题
- ¥50 如何用脚本实现输入法的热键设置
- ¥20 我想使用一些网络协议或者部分协议也行,主要想实现类似于traceroute的一定步长内的路由拓扑功能
- ¥30 深度学习,前后端连接
- ¥15 孟德尔随机化结果不一致
- ¥15 apm2.8飞控罗盘bad health,加速度计校准失败
- ¥15 求解O-S方程的特征值问题给出边界层布拉休斯平行流的中性曲线
- ¥15 谁有desed数据集呀
- ¥20 手写数字识别运行c仿真时,程序报错错误代码sim211-100
- ¥15 关于#hadoop#的问题