- 博客(2)
- 收藏
- 关注
原创 CRSF协议负载段数据解析
其中p->data + start取出对应通道数据最低位所在缓存数组的地址,然后把该数组地址强转成(uint32_t*)类型数组的地址,然后取出元素得到了包含通道数据的uint32数据,然后再将mask移位,取与,再移回来即可。但是我是在Visual Studio中开发的,查找了挺久,发现__attribute__((packed))的语法替换的#pragma pack(1)并不能取消struct中位域的对齐,无奈这个优雅的方法用不上了。至此得到了所有通道的数据,可以开始快乐的做映射了~
2023-10-15 02:33:06
838
1
原创 ubuntu自启动
一、openvpn自启动在Ubuntu上,您放置在名为/etc/openvpn/$NAME.conf的文件中的任何VPN配置都将自动启动。因此,您要做的就是将client.ovpn复制到/etc/openvpn/client.conf。我建议您还将client.conf中的绝对路径用于所有键,脚本等。当然,您可能需要仔细检查/etc/default/openvpn文件。默认情况下,它将自动启动所有VPN,但AUTOSTART值可能已更改为none,或者是要自动启动的特定配置的列表。设置自
2021-10-22 19:56:35
1805
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人