标签: 开发

毛毛 | 2024-06-12 | 开发

日志未打印成功时问题定位

如果涉及新的服务/进程,需要考虑进程异常中断的可能在一些关键(可疑)函数后,添加一个while(1)如果一直没退出,则这部分正常 如果退出,则根据报错(比如signal 11之类的中断等信息),来进行定位

 228 |  0 |  0 开发

毛毛 | 2024-05-23 | 开发

【悲报】wifi问题定位无疾而终

如题所示,关于zaihong 4.1,3568的wifi问题定位无疾而终过程是这样子的:上周鹏飞哥(侯鹏飞)跟我说4.1 3568的wifi有问题,让我定位解决一下这个问题(当时他没有给明确的问题现象的时候就应该警觉了)。跟直接上级对齐后续计划之后,有限投入到wifi问题定位中来。上周五的时候手头只有3568的平板,开发板别人在用。于是编译,烧机,测试,一气呵成。然后发现一点问题没有/瘫跟鹏飞哥沟通之后,对方发了一个checklist,并让我着重关注两个点:wifi连接但无法访问页面,以及wifi密码输入正确,但是连接失败,反馈wifi密码错误。时间来到这周一,有人跟我说平板被人用了,我觉得没啥关系,重新烧录,打算简单测一下。然后诡异的事情就发生了:我很确信平板没有搞错,就是我用的那个平板。我也很确信镜像没有搞错,就是我上周五编译出来的那个镜像。但是它,他居然,wifi连接上了之后,无法访问页面了!在短暂的震惊之后,赶快找人要了日志记录方式,然后把日志导出,然后打算再做一下测试,看下日志是不是相同的,同时排除干扰日志日志导出方式:设备连接电脑后,在命令行敲一下两行命令行,对应的路径下就会生成两份日志。都是启动之后的系统日志hdc shell hilog > D:\log\3568\0523_1142_wifi\hilog.txthdc shell dmesg > D:\log\3568\0523_1142_wifi\dmesg.txt然而,诡异的事情发生了。在我重启完设备之后,wifi连不上了。我死活输入密码,它就是连不上。(md绝了,用着用着突然出事,这换谁都顶不住啊,于是乎这时候压力开始暴涨)不信邪的我,又刷了一个老镜像(周五编了好几个版本),结果还是一样的情况。正当我压力快爆表的时候,设备自动黑屏,接着自动重启了,然后我就蒙了:因为刚才遇到的两个问题,都不见了不管再怎么测,也都没有了乃至于今天我再测试的时候,不管是不是老镜像,都没问题了。按照完整的checklist测试完整个网络,也一点问题都没有。最后没办法,左分析来,

 288 |  0 |  1 开发

毛毛 | 2024-05-17 | 开发

最近看到的几篇关于开源鸿蒙wifi部分的优秀博客

1.主要从老架构上介绍wifi的驱动加载以及一些底层协议/功能的配置https://laval.csdn.net/64be7c94bfca273ff3548afd.html?login=from_csdn2.上层的框架介绍,更偏向于服务端的内容,例如详细介绍了扫描wifi设备时,相关功能的调用方式以及时序图https://laval.csdn.net/657fba1cd4226e0eb426ecbe.html3.系列博客,也是比较偏上层的,但是有详细介绍各个服务的来历以及初始化流程https://zhuanlan.zhihu.com/p/6762012714.偏底层的,主要是HDF框架下wifi的注册和初始化流程,很详细,但是有不少细节还是要自己去摸索/叹气https://blog.51cto.com/u_15284525/5214558?articleABtest=0#HDF_WIFI__288

 365 |  0 |  0 开发

毛毛 | 2024-05-14 | 开发

【小记】为什么WIFI模块初始化的时候会做reset动作?

有的配置要在模块初始化的时候配下去,有的是配置之后重启才生效。(按照芯片自身设计来的)所以一般SOC以外的模块,初始化的时候都需要重新上下电

 355 |  0 |  0 开发

毛毛 | 2024-05-11 | 开发

什么情况下,会在一个实例中,这一类(class)的“添加”动作,会存放在它本身中?

如题,我在阅读OHOS的WLAN代码时,发现设备添加动作,是输入一个具体的device,然后根据这个device获取具体的impl。这里我还能理解,大致就是从繁杂的具体信息中,抽取关键要素,组成一个符合模型的类,便于后续操作。但是它下一步,从这个impl中,获取出了op->add,然后用op->add(impl)看到这里我直接满脑问号就...wtf?这种添加/存储的动作,不应该是跟着类走的吗?再不济也应该是提前设定好了才对。因为模型是现成的,获取模型的接口也有,那很自然的就会想到做好相关的增删改查,以及一些特性的接口但是把添加动作用自身存储起来...我是真的见识浅薄了,没遇到过这种操作想问下大家,这种模式会在什么情况下出现?

 378 |  0 |  0 开发

毛毛 | 2024-05-09 | 开发

刷机的注意事项

给3568平板刷机的时候,总是失败。请教方茂松方哥总算搞定了。这里记录一下方哥给出的几个可能方向1.不是平板用的镜像,而是开发板用的镜像(有概率不适配)2.尝试拔除电池线,只使用type c供电(同时作为usb烧录线)3.引导可能有问题,需要更换.bin文件(大佬帮忙定位问题时直接给的)4.USB线可能有问题,建议使用大牌电源数据一体线(保证线材没有缺斤少两) 5.电脑端可能需要USB 2.0, 3.0接口切换一下,可能设备只支持3.0/2.0接口进行烧录

 393 |  1 |  0 开发

毛毛 | 2024-05-08 | 开发

【开鸿】代码下载流程

开鸿这边的代码(特指公司内部代码),是存放在gerrit上的。需要先登录gerrit,激活账号,然后才有下载权限。当然,前提是你的上级已经帮你配置好了相关的权限。gerrit 首页:https://gerrit.openvalley.net/当然,进去之后也要配置ssh公钥,具体可参考:https://help.gitee.com/base/account/SSH%E5%85%AC%E9%92%A5%E8%AE%BE%E7%BD%AE开通了之后,就可以下载代码了,命令行 :repo init -u ssh://gerrit.openvalley.net:xxxxxx具体的仓库git地址可以问一下上级tips:1.记得下载完代码之后,还要 ./build/prebuilts_download.sh 下载一下编译工具2.编译命令可能有变动(参数会进行定制化的修改),建议也问一下上级

 374 |  0 |  2 开发

毛毛 | 2024-05-08 | 开发

rk3568刷写流程

教程文档:开源鸿蒙官方教程https://docs.openharmony.cn/pages/v4.0/zh-cn/device-dev/quick-start/quickstart-pkg-3568-build.md最后的成果应该是启动之后能点亮屏幕:其中type c口是供电用的,需要提供5v2A及以上的供电视频输出口是HDMI公司走的是使用命令行开发的那一套流程编译命令用的是build.sh的流程,所以不需要关注设备是64位的烧录教程:<a href="https://gitee.com/hihope_iot/docs/blob/master/HiHope_DAYU200/docs/%E7%83%A7%E5%BD%95%E6%8C%87%E5%AF%B

 309 |  0 |  0 开发

毛毛 | 2024-05-07 | 开发

OpenHarmony编译失败,报错信息有“There is no gn executable file at...”

我下载了开源鸿蒙官方的代码,在编译的时候报错,报错信息如下:There is no gn executable file at /ssd1/chenjiongmao/code/standard3568/prebuilts/build-tools/linux-x86/bin/gn一开始我还奇怪,是不是有代码没下全,或者哪里复制粘贴的时候搞漏了。搜了一整圈都没有看到是哪里报错的问了一下周哥,才知道是我执行漏了一条指令bash build/prebuilts_download.sh这一条命令在OH的官网教程里,是放在源码下载的下一步,我做的时候太心急,给漏掉了/扶额算是一个教训吧

 271 |  0 |  0 开发

nopassword | 2023-05-24 | 开发

震惊!!!你竟然是这样的程序员

&nbsp; &nbsp; 今天想和大家分享一下我个人对现在软件行业中当前程序员这个岗位的一些思考,倘若有得罪之处,请轻点喷&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; &nbsp; 我算是这个行业中的老鸟了,从我个人的一些经历以及我呆过公司周围的一些同事来看,软件开发这个岗位可以分为以下几个层面以及相应的一些特点,大家主要找到自己的位置&nbsp; &nbsp; 1、入门程序员&nbsp; &nbsp; &nbsp; &nbsp; 大多为跨行业转软件开发的,懂一点高级语言规则,以java、C#、python为例,可以根据语法规则实现一些简单的逻辑&nbsp; &nbsp; 2、初级程序员&nbsp; &nbsp; &nbsp; &nbsp;熟悉高级语言语法,能够完成简单的增、删、改、查的一些逻辑,可以称为码农,此阶段是体力活,重复的机械的做一些事情&nbsp; &nbsp; 3、中级程序员&nbsp; &nbsp; &nbsp; 能够使用一些开源框架,通过百度copy相关代码能够实现一些高级功能,次阶段会了解一些开源框架的

 1628 |  3 |  3 开发

没有更多啦~