- 博客(27)
- 收藏
- 关注
原创 Camera Id(slotId,physicalCameraId,logicalCameraId,frameworkCameraId)的区别
Framework Camera Id 则是在 CameraX 这样的抽象层级上使用的标识符,它简化了相机操作,并提供了跨设备一致的 API 接口。Logical Camera Id 提供了一个更高级别的抽象,可以组合和管理多个物理相机设备,使得应用程序可以更灵活地利用多摄像头的功能。Slot Id 和 Physical Camera Id 是基于硬件实际存在的物理相机设备的标识符,用于直接控制和操作相机硬件。定义:Physical Camera Id 是用于标识每个物理相机设备的唯一字符串标识符。
2024-07-09 21:21:28 354
原创 qnx如何修改系统只读权限
使用"mount"命令查看当前文件系统的挂载情况,找到对应需要修改权限的文件系统的挂载点。例如,如果需要修改根文件系统的只读权限,则找到挂载点为"/"的文件系统。使用"mount"命令以读写模式重新挂载文件系统。这将把根文件系统(“/”)以读写模式("u"表示读写)重新挂载。以超级用户(root用户)的身份登录到系统。打开终端或命令行界面。
2023-08-22 16:38:31 1133 1
原创 pc机安装出现[Progress] Done -1% [Error] : Identical version of this product is already installed.
清理注册表:使用注册表编辑器(请小心操作),检查并删除与已安装产品相关的注册表项。在运行窗口中输入"regedit"打开注册表编辑器,然后导航到"HKEY_LOCAL_MACHINE\SOFTWARE"和"HKEY_CURRENT_USER\SOFTWARE"等路径,查找并删除与该产品相关的键值。检查之前安装的产品:打开控制面板,然后点击"程序"或"程序和功能",在列表中查找你想安装的产品。安装产品:重新运行安装程序,确保选择了正确的版本,并且已经清理了之前的安装。
2023-08-21 14:13:02 338
原创 python如何切换版本
你可以通过运行python3 --version命令查看当前默认的Python版本,以及通过运行ls /usr/bin/python*命令查看系统中已安装的Python版本列表。pyenv是一个流行的Python版本管理工具,它可以在Ubuntu上轻松切换Python版本。记住,在切换Python版本之前,请确保已正确安装了目标版本。运行此命令后,会列出系统中已安装的Python版本,并提示你选择要使用的版本。运行以上命令后,每当你在终端中运行python命令时,都会使用设置的版本。
2023-08-18 15:46:37 2943
原创 max96717:Host-to-Peripheral Main I 2C and Pass-Through I2C 这两种接口的区别
因此,"Host-to-Peripheral Main I2C"是用于与MAX96717进行配置和控制的通信方式,而"Pass-Through I2C Communication"是通过MAX96717作为中继设备与外部从设备进行通信的方式。主机发送I2C命令和数据给MAX96717,然后MAX96717将这些命令和数据转发给连接在其控制I2C接口上的外部从设备。它允许主机(Host)通过MAX96717作为中继(Pass-Through)设备,与其他外部I2C从设备进行通信。
2023-08-07 19:33:48 1653
原创 some/ip通信案例
上述服务提供者代码中,首先使用UDP协议和传输层协议进行网络配置,将服务提供者的IP地址设置为192.168.1.1,端口号设置为10000,将服务消费者的IP地址设置为192.168.1.2,端口号设置为10001。接着,向服务提供者注册服务并启动服务,然后使用SOME/IP-SD服务注册管理器注册服务。最后通过一个while循环等待服务调用。上述服务消费者代码中,定义了服务接口ID和服务方法ID,并使用UDP协议和传输层协议进行网络配置,将服务提供者的IP地址。
2023-06-14 14:45:55 1492 1
原创 怎么查看GPU架构
如果您的GPU架构是Ada Lovelace架构,您需要更新Makefile中的ARCH变量来支持该架构。在右侧窗口中,您将看到有关您的NVIDIA GPU的信息,包括架构。在Windows系统中,您可以在任务管理器的性能标签页中找到有关NVIDIA GPU的信息,包括其型号和架构。您将看到一个输出,其中包含有关您的NVIDIA GPU的信息,包括其架构。在左侧栏中选择“GPU 0”(如果您的系统中有多个GPU,可以选择相应的GPU)。那么您的GPU架构为75,是Turing(图灵)架构的。
2023-06-03 14:32:01 3888 1
原创 自动驾驶训练素材
OpenCV 官方提供的车道线检测样例代码:https://github.com/opencv/opencv/blob/master/samples/cpp/tutorial_code/ImgTrans/HoughLines_Demo.cpp。KITTI 数据库提供的道路行驶视频和标注数据:http://www.cvlibs.net/datasets/kitti/eval_road.php。一张包含车道线的驾驶场景图片:https://unsplash.com/photos/vHa-Azv5Cz8。
2023-05-30 15:29:45 119
原创 c++ 匿名对象的使用
需要注意的是,由于匿名对象没有名称,因此不能在之后的代码中使用该名称引用它。需要注意的是,由于匿名对象没有名称,因此无法在其他的函数中引用它。在这个例子中,构造了一个匿名对象并将其作为参数传递给 func() 函数。由于我们不需要手动命名该对象并将其存储在变量中,因此使用匿名对象可以使代码更加简洁。在这个例子中,我们创建了一个匿名 vector 对象,并将其传递给 printVector 函数。在 C++ 中,可以定义一个匿名对象(即没有指定名称的对象)。在C++中,匿名对象是指没有名字的对象。
2023-05-25 18:42:53 794
原创 通过ros2 订阅这个 /sensing/camera/traffic_light/image_raw/compressed,发布 /sensing/camera/traffic_light/imag
publish_image 方法将图像数据转换为 ROS2 中的 Image 类型,并发布到 /sensing/camera/traffic_light/image_raw 主题上。订阅者会接收到压缩的图像数据,然后使用 OpenCV 将其转换为未压缩的图像,并将其发布到 /sensing/camera/traffic_light/image_raw 主题上。函数或方法,但仍然遇到此错误,请检查您的导入语句是否正确,并确保您的代码中没有拼写错误或语法错误。在上面的示例中,我们创建了一个名为。
2023-05-25 13:38:21 718
原创 使用ros2 写一个节点通过订阅/sensing/camera/traffic_light/image_raw,发布一个/sensing/camera/traffic_light/image_raw/
首先你需要先安装ROS2(推荐使用最新的版本),在终端中输入以下命令:其中需要替换成你安装的ROS2版本。这个命令会安装ROS2以及相关的依赖项。接下来,我们需要创建一个ROS2节点来执行我们的任务。请按照以下步骤操作:创建一个包在traffic_light目录下创建一个python节点编写代码。
2023-05-23 10:34:01 1273
原创 如何安装sophus
如果你已经安装了CMake,则会输出CMake的版本号。如果提示未找到命令,说明你还没有安装CMake,你可以在官网上下载并安装。进入Sophus的源代码目录,创建一个build目录。这样Sophus库就已经成功安装了。你现在可以使用该库开发自己的程序。现在使用CMake生成Makefile。
2023-05-16 17:09:21 1031
原创 c++智能指针有哪些
shared_ptr 有两种创建方式:shared_ptr(new T) 和 shared_ptr(T* p, std::function<void(void)> deleter),其中 deleter 是一个可调用对象,用于在对象不再需要时自动释放内存。unique_ptr 有两种创建方式:unique_ptr(new T) 和 unique_ptr(T* p),其中 T 必须是 delete 的,即不能是 unique_ptr 或 shared_ptr。weak_ptr():创建一个弱引用智能指针。
2023-05-14 13:59:24 160
转载 GT5688无法正常通信
移植汇顶的TP GT9271时,发现i2c通信不上,检查了TP的供电和复位脚及硬件连接,都没发现问题,然后发现内核有如下的报错信息。[49533.829164] gpio-272 (goodix_ts_int): _gpiod_direction_output_raw: tried to set a GPIO tied to an IRQ as output[49533.849418] goodix-ts 3-005d: I2c read failed,dev:5d,reg:8047,size:1[4
2020-11-05 10:42:32 1281
转载 i2c_set_clientdata函数作用
在i2c驱动中有很多函数和数据结构,很多一时难以理解,所以写下本文共同学习。一、i2c_set_clientdata函数 在probe方式的I2C驱动中的probe函数中经常出现i2c_set_clientdata函数,一直很不解这个函数什么意思,后来查看内核源码,发现了一点大家都知道的秘密。偷笑这是某个I2C设备驱动中的probe函数,选取了部分代码:struct i2c_mydev //struct i2c_mydev是自定义的设备结构{ struct i2c_clie
2020-10-17 15:32:31 2497 1
原创 如何通过cmdline获取panel型号的dtsi文件节点(qcom,lcd,id)
platform:msm8976 android 7.11在lk层,常用的方法是通过读取panel的id来确定当前使用的panel的型号,然后将panel的型号放在cmdline里面,如下:project:/ # cat /proc/cmdline… … … androidconfig.secureboot=enabled mdss_mdp.panel=1:dsi:0:qcom,mdss_dsi_ili9885_lide_hcg_auo_fhd_video:1:none:cfg:single_dsi
2020-10-13 15:03:23 873
转载 定时器struct timer_list的高级使用
1、前言Linux内核中的定时器是一个很常用的功能,某些需要周期性处理的工作都需要用到定时器。在Linux内核中,使用定时器功能比较简单,需要提供定时器的超时时间和超时后需要执行的处理函数。2、常用API接口在Linux内核中使用全局变量jiffies来记录系统从启动以来的系统节拍数,当系统内核启动的时候,会将该jiffies初始化为0,该定义在kernel/include/linux/jiffies.h文件中,如下:复制代码extern u64 __jiffy_data jiffies_64;
2020-08-29 15:39:33 1258
转载 linux定时器的使用
Linux的内核中定义了一个定时器的结构:#include<linux/timer.h>struct timer_list { struct list_head list; unsigned long expires; //定时器到期时间 unsigned long data; //作为参数被传入定时器处理函数 void (*function)(unsigned long);};利用这个结构我们可以在驱动中很方便的使用定时器。一: timer的API函数:初始化
2020-08-21 09:19:09 144
转载 imx8qxp Linux Regulators 使用
1.regulators 是什么?linux 代码中对负载电源进行开关和稳压控制的模型叫做regulators,具体是如何实现的呢请看下面的图:image.png例如: usb otg 要对usb_otg1_vbus控制,这时需要一个电源控制芯片nx5p3290,同时需要对其管脚BB_USB_OTG1_PWR_ON进行控制。软件使用模型 reg_usb_otg1_vbus来进行电源开关控制。参考:Documentation/devicetree/bindings/regulator/fixed-r
2020-07-27 13:55:29 791
原创 如何在android平台源码中添加uart权限
1.配置uart,使节点出来2.配置完之后,可能使用串口调试助手,无法打开串口,这是就需要打开权限3.关闭SElinux,在system\core\init\init.cpp加上这一行: bool kernel_enforcing = (security_getenforce() == 1); bool is_enforcing = selinux_is_enforcing(); **is_enforcing = false;**//添加的 if (kernel_enforcing
2020-06-09 18:04:01 393
原创 android系统添加按键检测
1.前言在Android开发中可能会遇到添加新的按键的需求,本文将简单介绍如何在Android系 统中完成一个新的按键的添加。当系统有新的按键需要添加时,Linux内核下的键码到 Android系统中键码是如何进行转换映射的?2.内核添加设备节点首先,我们需要在Linux内核添加新的按键值,在Linux内核中提供了按键的驱动程序gpio_keys.c,该驱动是基于设备树实现的,因此,先添加...
2020-02-17 16:53:17 1416 1
原创 android环境集成lrzsz
1.找到使用的编译工具链目录通过在源码所在的主机中输入指令:echo $ANDROID_TOOLCHAIN/home/chenhuisong/mnt/work/8909_7120/prebuilts/gcc/linux-x86/arm/arm-linux- androideabi-4.9/bin2.指定编译过程使用的头文件和库的存放位置/home/chenhuisong/...
2020-02-10 17:20:29 406
原创 adb使用技巧大全
1.列出手机装的所有app的包名: adb shell pm list packages2.列出除了系统应用的第三方应用包名:adb shell pm list packages -33.adb命令打开app//open vclam start -n org.videolan.vlc/org.videolan.vlc.StartActivity4.获取包名信息adb shell am...
2020-01-09 21:32:59 295
原创 sdm660-Android9调屏步骤
sdm660-Android9调屏步骤安装LLVMsnapdragon_sd_llvm_arm.lnx.3.8_installer_38400.1.tarsudo mkdir /pkg/qct/software/llvm/release/arm/3.8.4 -psudo tar -xvf snapdragon_sd_llvm_arm.lnx.3.8_installer_38400.1.ta...
2020-01-09 17:41:08 947
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人