更多内容请访问:https://harmonyos.51cto.com1,与华为联合成立的鸿蒙技术社区。这个开发板可以用来做其他操作系统吗?答:理论上,Hi3861可以移植其他操作系统,只要目标操作系统与硬件适配,并进行必要的剪裁即可。Hi3861的本质是基于RISC-V架构的硬件系统,所以可以移植支持这种硬件架构的操作系统。2.了解一些关于GN脚本的知识并快速上手。答:gn是一个现代的跨平台编译构建工具。它之所以强调“现代”,是因为它能做到其他工具能做到的,比如:make和cmake。这些工具在年代上有这样一种进化关系:make->cmake->gn。make的跨平台并不完美,于是就有了cmake,cmake用来屏蔽不同平台make的差异。cmake对于大型项目来说有点难度,所以使用了gn。因此,要学好gnbuild和compile,建议先了解make和cmake。对于使用gn的大型项目(如:鸿蒙),一般分为3大块:1)项目整体入口(写一次,常年不变)2)gn通用文件(写一次,全年不变)3)gn源代码项目文件(针对具体项目模块,管理源代码文件和头文件)掌握以上内容,即使已经入门,也能编写鸿蒙板载应用。官方文档:https://gn.googlesource.com/gn/3。一直裸奔单片机,对操作系统还是一窍不通。我很想知道操作系统和硬件有什么关系?答:操作系统是硬件系统和软件系统的关联层,提供各种服务帮助软件使用硬件。建议学习操作系统相关的课程(可以看看我的操作系统课程)。4、海思是目前鸿蒙唯一支持的芯片吗?如果是,未来的发展空间是否有限?答:鸿蒙被设计为“多核”操作系统,理论上可以支持各种硬件设备。目前,魏东山老师已经将鸿蒙移植到了IMX6ULL和STM32上。5、电脑接板子做事,电脑真的不会爆炸吗?比如板子有什么问题或者零件没有焊好。..答:我个人的经验不会爆炸,但不一定能把板子变成砖头。..如果电脑这么容易爆炸,我第一个转行卖相关保险。6、未来鸿蒙可以应用于哪些领域?与其他操作系统相比有什么优势?学鸿蒙能带来就业吗?答:鸿蒙的目标很明确:各种嵌入式设备(物联网设备、手持设备、车载设备等)。理论上,它可以通过“换内核”的方式应用于任何领域的设备和产品。我个人认为,如果继续保持目前的推广力度和社区活跃度,未来鸿蒙相关技能的需求会出现井喷期。7、鸿蒙OS和华为LiteOS有什么区别?答:LiteOS是一个内核,鸿蒙可以使用这个内核(支持多内核)。8、鸿蒙OS可以运行在一般的单片机上吗?答:物联网是鸿蒙瞄准的领域之一,大部分物联网设备都是单片机设备。只需要做一些移植工作。鸿蒙OS可以运行在一般的单片机(如:STM32)上。9、对鸿蒙充满憧憬,觉得鸿蒙会在物联网领域大显身手。未来物联网会像现在的互联网一样快速发展,会不会出现各种巨头?那么现在学习鸿蒙是不是第一个机会呢?答:物联网的本质还是互联网(InternetOfThings),但过去我们说的“互联网”,指的是连接人与人的网络。现在,“网联人”的应用越来越成熟,下一步就是让互联网进入设备的世界,形成网联设备。个人认为物联网是下一个蓝海,各大公司都会进入这个蓝海。建议现在的开发者提前充实自己,准备好相关技术,为自己的职业发展做好准备。10.鸿蒙开发板与其他开发板相比有哪些优势?答:我们拿到的智能家居套件Hi3861只是其中一款首批支持鸿蒙OS的开发板。与其他开发板相比,其功能比较单一,优势不明显。11、使用HarmonyOS做嵌入式开发和手机开发的开发框架和环境是一样的吗?答:HarmonyOS嵌入式开发(设备开发)涉及特定的交叉编译环境,在代码编辑和编译上存在较大差异。选修的;而鸿蒙手机开发(富应用开发)有官方提供的完整的开发框架和开发环境(唯一性)。此外,语言也不同。鸿蒙嵌入式开发主要是C语言,手机开发主要是Java/JS语言。12、鸿蒙Liteos和ucosII有可比性吗?答:两者可以说是同一类型的操作系统内核,但鸿蒙LiteOS更针对物联网领域,面向数据采集的低功耗硬件;ucosii更关注实时性能,是为实时系统打造的操作系统内核。13、没有stm32基础,有51单片机和linux应用开发基础,学鸿蒙怎么样?答:有任何单片机基础和Linux应用开发基础,学习鸿蒙是非常容易的,那就开始吧。14.鸿蒙内核层能不能解释一下,想系统的研究一下鸿蒙应用和底层。答:我个人有阅读和学习鸿蒙内核代码的打算。如果你需要的话,我也会分享学习笔记。15、华为鸿蒙开发相比其他stm32或者linux开发有什么优势?有什么特别的亮点吗?从技术上讲,应该没有。目前是以前嵌入式开发的同一个工具不同步骤。它与其他工具有什么不同?从非技术角度来看,有哪些优势?答:如果单纯看Hi3861及以上系统,那么就是单片机加嵌入式操作系统,没有亮点。然而,鸿蒙可不仅仅是这件小事!鸿蒙瞄准的是物联网蓝海,所以它构建的是一个技术生态链,比如:数据采集可能是Hi3861,采集到的数据聚合到控制中心(鸿蒙富应用),之后分析处理,做出自动控制决策,并通过鸿蒙手机应用通知用户。鸿蒙的目标就是无缝衔接这个过程,包括:系统开发过程(涉及各类终端)、数据传输过程(涉及统一协议标准)等。鸿蒙不是在单一的技术点上进行创新和改进,而是从更高的角度来构建物联网发展所涉及的整个技术栈。16、如何区分按键按下和按键松开?答:详见我的另一篇文章:《实现按键“按下事件”和“释放事件”的通用框架》,我会继续搭建和维护这个框架。17、鸿蒙现在有两个发展方向,分别是设备开发和应用开发。不知如何选择?老师说了各自的优缺点,大家想想吧。答:设备开发需要的关键技术有:C/C++、交叉编译构建(make/cmake/gn)、多任务(多线程)编程、网络编程。应用程序开发所需的关键技术有:Java/JS、XML、界面构建(GUI)、网络编程、数据库编程。当然,上面列举的关键技术并不是绝对的,而是比较常用的技术。在我看来,设备开发和应用开发没有本质区别,只是场景不同而已。如果一定要选择,可以根据自己目前掌握的技术“就近选择”。物联网应用是一个完整的系统,包括设备开发和应用开发。从系统的角度来看,两者同样重要。18.边缘变化可以在按钮事件中采集,还是变化后捕获?答:物理按键上的动作(如:按下事件)会引起相应管脚上的电平变化,变化过程为边沿,边沿的出现会产生外部中断,内核会调用中断服务程序(ISR)接收到中断后立即执行,并调用ISR中注册的事件处理函数。从这个流程可以看出,事件处理函数是在边沿发生后调用的。更多信息请访问:Harmonyos.51cto.com,与华为官方合作打造的鸿蒙技术社区
