- 博客(18)
- 收藏
- 关注
原创 简化嵌入式Linux开发:在Ubuntu上安装和配置交叉编译环境的高效方法
在嵌入式Linux开发中,我们通常需要在Ubuntu上安装交叉编译工具链,并配置相关文件。编译过程中,如果遇到依赖库问题,还需要手动查找并编译开源源码。这些步骤较为繁琐,为了简化操作,我们可以尝试以下方案:
2024-07-10 10:18:20
508
原创 EC20(4g模块)移植到RK3588\rk3399\rk3288\A64\MTK等linux平台教程
这里用是的E20贴片模块,主板使用的是RK3588平台。模块有3个关键IO分别用于控制电源、开机键、reset键,需配置到dts中。(注:若您的平台是用的PCIE模块,则不用关心DTS配置和驱动移植问题)。,使用configure配置编译器,编译完成后将编译好的执行程序pppd拷贝到板子/bin目录。2.用户层对文件进行写0/1则会控制dts配置的gpio电平完成关闭/启动模块的功能。地址,将包解压后放入板子的/etc/ppp/peers/中。1.平台端移植pppd程序,六、遇到问题可加我微信交流。
2023-05-15 14:35:48
3373
3
原创 nfc模块pn7150移植说明教程(android mtk rk3399 rk3588)
nfc模块pn7150移植说明教程(android mtk rk3399 rk3588)
2023-02-24 17:08:34
3080
1
原创 android 如何在user版本中获取root权限
前提本文介绍的方案是在有安卓底层SDK源码的方案下实行的,若不具备这个条件的就不用往下继续看了,以免耽误你的时间。写作目的公司是做工程设备,运行的是安卓系统,系统使用是的user,系统上层的app都是预安装的。正常情况下,这样的app的是没法做一些特权操作的,如重启系统、安装软件、读写一些特殊文件夹的文件。为了解决这些问题,特意做了一个方案,使第三方的app也拥有了root权限。实现思路我们知道系统启动后会运行init程序,init程序会解析init.rc脚本,并执行init.rc中的命令,而in
2021-05-15 16:15:20
1792
3
原创 android app 设置以太网静态Ip
写文目的 公司是做工控和楼宇智能方面产品,使用的设备有rk和全志平台,运行的是android操作系统,部分场景需要设置有线网络的静态Ip。所以针对这一需求做了如下工作,并以此文作为总结。遇到的问题 工作前也有百度过相关方案,但大部分使用的是busybox ifconfig来设置,而这种方式有很多弊端,如设置的app必须拥有root权限、不能实时切换static和dhcp、重启后设置的就不生效、不能通过系统的settings参看设置的状态。经过一番折腾后发现为了解决这些问题必须从android的系统应
2020-07-21 16:29:05
13514
10
原创 解决android上WIFI提示“未检测到任何互联网连接,因此不会自动重新连接“
问题描述: 在android5.1中出现如题提示,导致机器重启后不会链接WIFI。分析代码: frameworks/opt/net/wifi/service/java/com/android/server/wifi/WifiAutoJoinController.java 此处执行了continue则不会再次链接网络了。所以将conti...
2019-11-09 16:07:42
5332
1
原创 解决android设备断电重启后WIFI不能自动重连的BUG
描述: 如题,线上的设备大概率会出现WIFI不能重连的现象,而非断电模式重启(reboot)则不会出现这样的情况。分析:经分析这跟Linux的文件系统储存机制有关。用户层对文件进行写操作时,系统是先将文件存储在内存中,待CPU空闲后再将数据写入flash中,这是一种缓存机制,目的是提高文件的读写效率。但带来的是在机器突然断电的情况下丢失数据的风险。解决方案: ...
2019-11-09 11:31:43
3293
7
原创 C语言模拟面向对象实例
C语言本身不支持面向对象,但通过结构体和函数指针等方式可以模拟实现面向对象的思想。在下面的示例中,我们将演示如何使用C语言实现封装、抽象、继承和多态。
2023-05-18 17:26:46
304
原创 Android APP开发岗如何转驱动岗
总结来说,想要从Android APP岗位转向Android驱动岗位,需要具备良好的C/C++编程基础、深入了解Android系统架构和Linux内核原理、熟悉嵌入式开发平台和硬件结构、以及积极阅读开源社区中的驱动程序源代码等基本技能和知识。Linux内核是Android系统的基础,因此,熟悉Linux内核的基本原理对于Android驱动开发至关重要。该领域的内容非常广泛,涉及到各种不同的领域,例如Android系统框架、HAL层、驱动程序、内核调试等,因此,需要不断学习和掌握相关知识。
2023-05-18 17:11:14
357
原创 使用MQTT远程登录android
写作目的公司是做楼宇对讲主机设备,设备端运行的是安卓系统,为了远程方便调试设备(如人在深圳控制一台在北京的设备),特做了个远程登录android的小系统,以此记录。环境介绍安卓主板一块,一台公网服务器,一台PC最终效果展示启动服务器,-p设置端口号为1888PC端,使用命令./msgsps_pub -i ens33 -t 76000c885342,登录了一台mac地址为76:00:0c:88:53:42的设备设备端信息原理介绍一、 下载MQTT源码我这里下载的是1.5.1版本,当
2021-05-13 14:36:33
610
1
原创 在平台RK3288上编写键盘驱动
环境介绍硬件:RK3288、键盘驱动芯片PCA9535(I2C-GPIO)软件:android 7.1 linux4.4原理图:I2C1_INT:GPIO5_B3I2C1_RST:GPIO7_B4配置介绍1.dts&i2c1 { status = "okay"; clock-frequency = <400000>; pca9535@20 { compatible = "nxp,pca9535_keypad"; reg = <0x20>;
2020-08-20 16:04:37
1331
原创 android系统 df -f查询磁盘满,du参看还有剩余
线上的android设备,出现文件创建异常现象。用df查询后发现磁盘满了,而用du查看却还有很多空间。使用reboot后恢复正常。怀疑是app中出现了多线程同时写删文件的现象,但暂时找不到bug。临时解决方案 :app调用shell脚本"sysctl vm.drop_caches=3 "即可释放...
2019-12-01 16:54:53
1075
原创 Linux epoll应用与实现
一、epoll应用场合 简而言之,想在一个线程中同时监听多个阻塞IO状态时,我们就需要用到epoll机制了。直接看应用代码 static int pipe0[2];static int pipe1[2];static int pipe2[2];void *read_thread_func(void *arg){ int epfd, nfds; int ...
2019-11-18 16:36:00
329
android 设置IP地址
2023-01-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅