- 博客(247)
- 资源 (11)
- 收藏
- 关注
原创 瑞芯微RK3576(2)-调试过程中遇到的问题
这个主要是系统的适配问题,具体的没细查,有可能是有外设不存在,但是内核里面打开了,也有可能是硬件设计不合理,不过不重要,我后续慢慢调就好了,我的目的是先保证核心板正常运行。其实进了内核之后,我就不怎么担心了,一个是天天和内核打交道,一般的问题对我也没什么压力,另一个是能进内核,至少原理图没有大问题,最多是走线不合理导致速度跑不满之类的问题。最后就是关注自己的镜像了,如果网上能找到的固件不能用,那就只能尝试自己适配一个系统,毕竟别人的东西是给自己的板子弄的。(ps:为了恢复异常状态,花了我半小时)
2025-03-11 23:57:30
302
原创 瑞芯微RK3576(1)-硬件设计
关于接口方面,考虑了一段时间,最终决定使用BTB的模式,主要是能够出更多的IO,方便拆卸,最让我担心的是BTB的位置问题。回来之后,怀着忐忑的心情,尝试了刷固件,毫不意外的失败了,好在经过分析,发现是SDK不适配导致,摸索了一天好歹是弄起来了。EMMC顺序读写,速度还好,不过随机读写性能不太好,只有17M左右。这是从野火搞来的一个SDK,后续有时间,再自己从主线适配一个。好消息是,至少没有太大的异常,剩下的就是优化一下板子了。由于自己的失误,网口搞反了,也是尴尬。为了方便调试,做了一个和它匹配的底板。
2025-03-11 23:26:56
165
原创 娱乐小项目-树莓派履带小车
当按下前进按键时,向文本框(log_text)插入"前进\n"的文本,并将其滚动到末尾可见位置。每个回调函数负责更新日志文本框的内容、发送相应的消息,并在函数内部的注释处编写实际的运动控制代码。例如,当用户按下前进按键时,move_forward_mouse()函数将被调用,文本框将显示"前进\n",并向指定的地址发送"move_forward"的消息。总的来说,这段代码创建了一个UDP套接字,绑定到指定的IP地址和端口号,然后通过一个线程来接收消息,并在接收到消息时进行处理。
2024-09-02 15:53:19
1425
原创 高通安卓12-问题整理和解决方案
预置apk为可卸载时。预置到旧的路径system/vendor/operator/app会编译报错,"You cannot install files to out/target/product/xxx/system/vendor while building a separate vendor.img!另外留意out文件夹外是不是有编译的残留,如生成super.img的过程中会创建一个META/文件夹在根目录,如果在编译过程中强行停止,这个文件夹可能会一直存在,后面再编译,会一直读这个文件夹的内容。
2024-06-22 16:14:09
1314
原创 高通安卓12-Input子系统
键值相关宏定义在:frameworks/base/core/java/android/view/KeyEvent.java。在/external/toybox/toys/android/sendevent.c)键值相关宏定义在:/usr/include/linux/input-event-codes.h。以上数据的格式为:/dev/input/event0: "事件类型" "参数位定义" "值"相关宏定义在:/usr/include/linux/input-event-codes.h。
2024-06-22 16:07:47
1006
原创 高通安卓12-在源码中查找应用的方法
通过前面的方法无法定位到APP的位置。通过命令mgrep WigigSettings,找出相关的调用位置。一般情况下,UI上看到的APP名称会在xml文件里面定义出来,如。查目录中的mk文件,找出APP在源码中的实际名称。这个可以通过ADB查询包名,定位出APP位置。先打开要找的APP,然后查看当前窗口位置。通过这个位置,定位出相关APP所在目录。这个时候,再到源码里面,搜索对应的包名。将所有的搜索到的内容打印到log里面。有的APP可能搜不到,名字被修改过。在它的前面是这段内容在源码中的位置。
2024-06-22 16:02:49
526
原创 高通安卓12-安卓系统定制2
在目录device->qcom下面有lito和qssi两个文件夹现在通过QSSI的方式创建开机动画,LITO方式是一样的首先加入自己的开机动画,制作过程看前面的部分打开qssi.mk文件,在文件的最后加入内容如果正常的话,会在设备端看到相关的文件。
2024-06-22 15:59:03
894
原创 高通安卓12-安卓系统定制1
在 vendor\mediatek\proprietary\binary\3rd-party\free下面以需要预置的 APK 名字创建文件夹,以预置一个名为Test的APK为例。为压缩的 cpio 文件。在 build/make/target/product/core.mk或device/mediatek/common/device.mk中添加。将Test.apk 放入vendor\mediatek\proprietary\binary\3rd-party\free\Test下面。
2024-06-22 15:53:11
1355
原创 高通安卓12-原生安卓学习
此外,还有一些单词代表了特定的Nexus设备,下面是常用的设备代码和编译目标,更多参考官方文档。上面我在使用lunch命令时选择的是aosp_arm64-eng,因此linux默认使用的/source/prebuilds/qemu-kernel/arm64/kernel-qemu下的kernel-qemu,而其他文件则是使用的source/out/target/product/generic64目录下的system.img,userdata.img和ramdisk.img.
2024-06-22 15:44:01
1085
原创 高通安卓12-ADB操作
找个工具转换为png压缩包,如使用;进入/sys/class/leds/green。要留意尺寸,可以先用小尺寸,尺寸大了,会跑不了。将image的文件拷到其中一个part下面。这个时候打开手机,会多一个酷狗音乐的图标。1.进入命令行,查询设备状态。开机动画会一直在播放状态中。开机动画会一直在播放状态中。从网上下载一个adb工具。从网络上找一个gif文件。控制LED呼吸闪烁效果。从网络上下载一个APK。从网上下载ADB工具。
2024-06-22 15:36:36
959
1
原创 高通安卓12-OTA 升级
要制作一个 v03 到 v05 的差分包,想从 v02 版升级到 v07 版就需要制作一个 v02 到 v07 的。它功能强大,可以无损失升级系统,主。安卓默认签名为 testkey,如果客户有需求的可以改成带项目信息,客户信息等信息的 key。优势:使用全包的优势在于无需对应版本号,可以直接从任何之前的版本升级到 OTA 包中的。升级,非常的方便,基本是在系统上点击几下就完成了升级,并且最重要的是,OTA 升级无。OTA 包默认使用的是系统签名,系统签名可以是客户指定的 key 也可以是安卓默认的。
2024-06-22 15:29:35
861
1
原创 高通安卓12-固件升级
4.rawprogram0_FFBM_gpiotest_split.xml 文件烧录可使设备进入工厂测试模式(测试中包含GPIO测试,分包脚本,烧录速度更快)2.rawprogram0_FFBM_split.xml 文件烧录可使设备进入工厂模式(分包脚本,烧录速度更快)3.rawprogram0_FFBM_gpiotest.xml未分包不可使用,作为分包的基础文件。FFBM模式,并下载fsg:rawprogram0_FFBM_split.xml。5.rawprogram0.xml 未分包不可使用。
2024-06-22 15:26:23
2337
原创 高通安卓12--编译
第一次编译后最好不要make clean,不然部分编译还是很慢,如果担心部分编译无法更新编译生成的文件,那么就先在out目录里面把obj文件夹中相关的.o文件和镜像目录中的文件删除,再部分编译,就一定会更新了。当前高通平台的编译设计是,先在qssi lunch里编译system和vendor,再在lito lunch里编译其他,结束时打包成super.img。编译其它img,例如vendorimage,如果不指定会编译其它所有img,产物在XX目录下。–qssi_only,这个选项是用来编译qssi的;
2024-06-22 15:22:00
1144
原创 展讯-系统定制修改
路径:bsp\bootloader\u-boot15\common\cmd_cboot.c。1.这个ro.adb.secure=0(0为不显示信任此电脑,1为显示信任此电脑)关键点不在报错上,往上查/bin/bash。如果权限不对,可能会上传失败。
2024-06-22 15:15:30
646
原创 展讯-QMI8658和气压传感器驱动调试
当前驱动路径位于:bsp/modules/input/misc/qmi8610/qmi8610.c。因为传感器型号不一样,需要参考demo代码,移植相关代码过去,这个过程不描述了,先保证编译不报错。对应:/sys/devices/virtual/input/input6。通过测试接口,读取设备ID以及传感器的值,确定i2c底层接口正常。这个查明,返回的数据,需要状态寄存器是可读的时候,不能随便上传。主要是能正常读取设备的ID,以及确定传感器获取的值在哪个位置。上面的内容,直接编译会报错,需要修改内核文件。
2024-06-22 15:09:06
1027
原创 展讯-GPIO操作
设备树位置:bsp/kernel/kernel4.14/arch/arm64/boot/dts/sprd/uis8581e5h10.dts。编译之前查看硬件GPIO,没有GPIO92。进入目录angleyes/test,编译。在pinmap里面,找到对应内容。修改节点:gpio-keys。通过命令:getevent。将上部分的c文件修改一下。按上述内容,配置IO口。创建文件夹及相关文件。
2024-06-22 15:00:47
693
原创 展讯-源码编译
编译完成后将在$AndroidCodeDir/out/target/product/uis8581e5h10 目录下生成文件 fdl1-sign.bin 和 u-boot-spl-16k-sign.bin。编译完成后将在$AndroidCodeDir/out/target/product/uis8581e5h10目录下生成文件u-boot-sign.bin和fdl2-sign.bin。准备 Android 代码,进入代码目录后执行以下命令整编 Android,命令中的 n 表示 CPU 线程数。
2024-06-22 14:50:10
510
原创 NUC980-OLED实现全中文字库的方法
有一个产品,客户需要屏幕展示一些内容,要带一些中文,实现了OLED12864的驱动,但是它不带字库,现在要实现OLED全字库的显示。上面的代码,存在一个问题是,Y轴的步进必须是8个点,需要优化为任意位置的显示。特别注意,保存的文件编码要是UTF-8的,不然后面会有点麻烦。利用python把ascii编码改为utf8编码。自行调整内容,字符"啊"之前的可以不要。下载软件pctolcd2002。用软件自带的,或者自己去找字。目标格式应该是这样的。
2024-06-21 15:09:51
421
原创 【C++】关于代码编译自动更新版本的问题
在写代码的时候,总是需要添加一个版本号,用于后续的版本管理我常遇到的一个问题是,开发过程中,不一定会记得这件事情,导致有时候会出现同样的版本于是希望有一个方式,能在编译代码的时候自动生成一个版本号。
2024-06-21 14:50:07
591
原创 12.全志H3-双DDR+8GEMMC核心板
几年前,我画了一版h3的核心板,有多位网友曾私信我,但因为工作和生活的原因,没有做太多的测试,始终有点遗憾,最近在一位网友的大力支持下,对那个核心板做了一些优化。出了CPU底部,其它部分尽量不在背面放物料,之前那版为了方便走线,有较多物料在背面,导致底板要开一个较大的孔。修改了电源方案,使用了统一的物料,扩展了一颗DDR,做双DDR方式。准备做测试,底板还没回来,只能找个之前的底板飞线处理一下。基本上外设都引出了,摄像头没有引出,用USB扩展吧。板子层数也改为了6层板,稳定性有明显的提升。
2024-06-21 09:04:22
734
原创 物联网WEB大屏数据可视化
最近了解WEB大屏显示。一般像嵌入式这类的,MQTT协议会走的多一些,走订阅和发布的策略,网上走了一圈之后,目前有几个实现方案。这里对比一下几个物联网协议,相对而言MQTT更合适物联网,其它几个协议不是干这个的,不过我推荐一下DDS,这玩意还挺好用的。(ps:最近了解到一个团队的实现方案是tcp。。。什么魔鬼设计,想的啥呢)
2023-03-03 19:43:57
2570
原创 MA35D1记录1-源码编译
上面是我的微信和QQ群,欢迎新朋友的加入。今天年假结束,突然发现新唐即将发布MA35D1,去官网和git仓库查了下,新唐趁我放假又偷偷更新了一些资料。之前发布的是yocto的环境,那个我倒也用,但时不时要翻墙,对国内用户来说,多少有点恶心人,今天再去看,终于单独发出linux部分的源码。趁着工作任务不是很重,简单试一下1.源码下载在官网仓库下载相关源码克隆完成找到对应的文档资料MA35D1 高效能边缘工业物联网系列 - Nuvoton2.配置交叉编译环境选择无版本号安装查看安装情况。
2023-01-31 09:56:12
2122
2
原创 WEB页面执行shell命令
无法执行复杂的脚本命令,如带有" |等特殊符号的命令无法执行,如yum、top命令执行结果不完整、仅适用于简单带输出脚本命令,脚本运行账号为apache。限制用户访问cgi-bin目录,修改/etc/httpd/conf/httpd.conf。5.cgi-bin目录执行shell脚本格式。配置http页面账号密码访问,也可实现安全性。上面是我的微信和QQ群,欢迎新朋友的加入。注意修改代码中ip,更改为服务器ip或域名。记得给执行权限,chmod a+x *需要配置一下apache2。测试:在浏览器中输入。
2023-01-12 20:36:54
2717
原创 NUC980开源项目40-PLC远程下载/内网穿透(非技术)
在淘宝上有一个产品,叫做PLC远程下载模块,随便找了一个。它的核心功能,是让客户在外网可以控制内网的设备。关于内网穿透,有几种搞法第一种是远程控制,常见的就是淘宝上卖的DTU模块,搞成4G或者网口,有的是1个或者1个以上模块,和服务器做设备配对,数据上传到服务器,然后再分发出来。会给一个控制软件或者网页控制的界面,用户通过软件实现一些控制操作,比如驱动继电器/读一下开关信号或者转成串口数据发出来。这种应用场景挺多,比如智能家居的远程控电啥的,或者工业上一些远程命令操作,他有以下特点。
2022-12-21 11:46:07
1506
原创 2.代码片断收集-字符串拼接
本来我是想在中文网站找找合适的Cadence入门材料的,但是唯一发现的比较合适的就是于博士的系列视频(然而我懒得去下)。所以就在油管上找到了不错的教学视频,结合我当前做的的小东西,给大家分享一下Cadence的使用方法。简单来说,画PCB可以分成两大部分,一个是原理图(schematic),另一个就是PCB。然而在OrCAD/Allegro里面,却没这么简单。总体上来说,OrC...
2022-12-14 09:30:56
114
原创 1.代码片断收集-数据拷贝效率问题
上面是我创建的群聊,欢迎新朋友的加入。1.方法1.直接通过bildroot配置,简单快捷,但是不准备这么做,想试试直接编译2.直接编译下载源码wget http://ffmpeg.org/releases/ffmpeg-3.1.3.tar.bz2tar jxvf ffmpeg-3.1.3.tar.bz2cd ffmpeg-3.1.3apt-get install y...
2022-12-14 09:26:28
422
1
原创 NUC980开源项目39-Rtl8188eus WIFI联网
上面是我创建的群聊,欢迎新朋友的加入。1.设置虚拟机安装xinetdsudo apt-get install xinetdls /etc/xinetd.confgedit /etc/xinetd.conf内容:# Simple configuration file for xinetd## Some defaults, and include /etc/...
2022-11-01 17:00:16
791
2
原创 NUC980开源项目38-4g上网
上面是我创建的群聊,欢迎新朋友的加入。硬件NUC9804G模块买的YUGA免驱版本(ps:免个XX)SIM卡是电信的内核配置打开PPP和USB GSM1.确定驱动正常第一个信息是出现类似字样,表示识别到了USB设备第二个信息是看驱动下面是不是有对应的节点如果上面的都存在了,那就可以通过AT指令测试一下模块2.AT常用指令常用指令AT指令:ATsvg功能:测试AT指令功能是否正常工具示例:ATOKAT+CPIN?指令:A...
2022-04-29 23:42:01
1325
原创 RK3399-查看系统温度
上面是我的微信和QQ群,欢迎新朋友的加入。安装工具sudo apt install lm-sensors测试效果root@FriendlyELEC:~# sensorsgpu_thermal-virtual-0Adapter: Virtual devicetemp1: +52.8 C (crit = +95.0 C)cpu_thermal-virtual-0Adapter: Virtual devicetemp1: +58.9 C (crit...
2022-04-26 11:59:34
1559
原创 RK3399-本地gitlab仓库
上面是我的微信和QQ群,欢迎新朋友的加入。常用的git服务器可以找github或者gitee。不过这东西有点问题,没有网络的时候,就拿不着了,或者有网络,在github下载会很慢。还有一个就是,这些服务器,终归不是自己的,万一某天和某度云盘一样,限个速度,那也是挺头大。刚好手边有个rk3399的盒子,不打广告,就不发图了。想着配个USB转固态硬盘,搭建一个私有的gitlab服务器。1.gitlab安装sudo apt-get updatesudo apt-get install ..
2022-04-26 11:54:25
491
原创 GIT使用说明-简单用法
上面是我创建的群聊,欢迎新朋友的加入。1.什么是GIT自己百度,简单来说,就是一个代码管理的工具。2.哪里有GIT仓库一般能在服务器获取的git仓库有1.github(国外+国内的)2.gitee(国内的)3.私人搭建的git仓库(主要说这个),需要提供IP地址,注册账号,并获得管理员许可才能访问如下3.怎么获取最新的工程如果只是想拉最新的代码,直接下载就好了选择自己要下载的压缩包,就会把最新的代码拉下来4.查看代码修改记录...
2022-04-11 23:12:30
371
原创 AD导出贴装丝印图
上面是我的微信和QQ群,欢迎新朋友的加入。以这个板子为例,首先需要自己在PCB设计界面,将要显示的层给处理好,比如板框/丝印的摆布点击file->smart pdf,生成PDF文件选择当前的文档,而不是选择工程,工程会把整个板子导出去选择自己需要的层,右键可以添加和删减。背面的话需要镜像,不然是个反对,顶视图导出结果,也可以选择黑白的,我喜欢彩色...
2022-03-28 09:59:53
15863
1
原创 单片机生成PDF文件(STM32+LIBHARU)
上面是我创建的群聊,欢迎新朋友的加入。安装软件在桌面新建TXT文件另存为打开软件选择字体和大小取消所有已选内容,导入刚刚的文件,都在edit下面,截图不了另存为C文件,导入工程测试...
2021-12-13 09:13:02
5514
8
ESP8266烧录软件
2020-10-18
20180408-102900.xml
2020-05-04
20180408-102900.bin
2020-05-04
facenet_celeb_ncs.graph
2020-05-04
mp4_play.zip
2019-08-24
ESP8266学习笔记
2017-02-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人