梅科尔工作室-#14天鸿蒙设备开发实战第1-7章笔记

wx62f06b2d3ad82
发布于 2022-8-8 09:50
浏览
0收藏

第一天
课程的大致内容
物联网开发概述
物联网典型层级架构
行业应用-云-管-边-端

        物联网常见的通信协议
            CoAP-受限制的应用协议
            MQTT-消息队列遥测传输协议
            ModBus
            OPC-UA

        物联网设备接入方式
            有线通信技术如ETH、RS-232、RS-485、USB-M-Bus、PLC
            短距离无线通讯技术如蓝牙、WiFi、ZigBee、Z-wave
            蜂窝移动网络如2G、3G、4G、5G
            LPWA通信技术如SigFox、LoRa、NB-IoT、eMTC


    鸿蒙设备开发
        环境搭建
        内核开发
            任务管理
            软件定时器
            信号量
            事件管理
            互斥锁
            消息队列

        驱动子系统开发
            操作GPIO、GPIO中断、PWM输出
            ADC采样、I2C总线、UART

        无线联网开发
            WIFI AP热点,wifi_hotspot.h接口简介
            WIFI STA联网,wifi_device.h接口简介


    鸿蒙设备如何联网上云
        华为云iot平台的介绍
        鸿蒙开发板连接华为云IOT平台
        通信扩展版
            智慧路灯、智慧农业、智慧物流、智慧烟感、红外感应、智慧井盖



对课程内容的理解
    本节课大概介绍了一些物联网开发的知识以及鸿蒙设备开发所用的工具和环境的介绍,还有华为云iot平台的介绍和一些通信扩展板案例。才刚开始,感觉内容有些难以理解,概念不怎么记得住。

引发的思考与理解
    对物联网有一个简单的理解

第二天
课程的大致内容
开发板功能介绍
按键电路原理图
LED灯原理图
nfc原理图
E53接口原理图
E53名字由来
E53接口电气标准
扩展版

对课程内容的理解
    了解小熊派的一些基本接口

引发的思考与理解

第三天
课程的大致内容
编写hello world程序
添加hello world代码
编写用于讲业务构建成静态库的BUILD.gn文件

    编译烧录hello word程序源码
        小熊派连接电脑,打开hiburn
        选择小熊派和电脑连接的com口
        设置波特率921600
        然后点击“select file”,选择烧录文件(烧录文件在工程目录下out)
        然后勾选autobrun,最后点击connect
        显示connecting,然后点击开发板的复位按键
        下载成功后会自动跳回connecting页面,需要按下disconnect

    调试Hello World程序

对课程内容的理解
    掌握如何创建业务源码
    掌握如何编写业务源码
    掌握如何编译业务源码
    掌握串口工具的使用

引发的思考与理解

第四天
课程的大致内容
编写点亮LED灯程序
新增文件夹

    烧录点亮LED灯程序
        小熊派连接电脑,打开hiburn
        选择小熊派和电脑连接的com口
        设置波特率921600
        然后点击“select file”,选择烧录文件(烧录文件在工程目录下out)
        然后勾选autobrun,最后点击connect
        显示connecting,然后点击开发板的复位按键
        下载成功后会自动跳回connecting页面,需要按下disconnect

    调试点亮LED灯程序

对课程内容的理解
    掌握如何在一个工作目录下添加多个案例
    掌握如何点亮LED灯
    掌握如何让LED闪烁

引发的思考与理解

第五天
课程的大致内容
OpenHarmony编译构建介绍
ninja编译工具
如何编译模块
在vscode编译
platform.json里面描述的是小熊派的编译路径
代码都是从这个app.main.c开始运行的

        代码运行逻辑


    OpenHarmony  CMSIS接口简介
        CMSIS-RTOS2接口简介
        鸿蒙与 CMSIS-RTOS2接口联系
            CMSIS-RTOS2实现://kernel/liteos_m/kal/cmsis/cmsis_liteos2.c
            关联

        使用 CMSIS-RTOS2接口
            更多API介绍请参考:https://arm-software.github.io/CMSIS_5/RTOS2/html/index.html



对课程内容的理解
    了解OpenHarmony编译构建和OpenHarmony  CMSIS接口

引发的思考与理解

第六天
课程的大致内容
HarmonyOS内核开发—任务管理
任务管理简介及其相关概念
基本概念
任务状态
相关名词

        任务的调度机制
            具体

        实现任务的管理
            cmsis_os2的API任务接口简介
                创建任务




对课程内容的理解
    了解任务的概念
    掌握如何创建任务
    掌握如何管理好多个任务的运行

引发的思考与理解

第七天
课程的大致内容
HarmonyOS内核开发—定时器管理
软件定时器基本概念
软件定时器运作机制
实现软件定时器创建
func是任务函数,argument是作为启动参数传递给任务函数的指针,attr是任务入口函数的参数列表
接口简介

         软件定时器
            Timer1_Callback是回调函数,osTimerPeriodic是指定时器的类型,是单次定时器/周期性定时器,&exec1是给回调函数传递的参数,NULL是定时器的属性参数
            时钟启动函数
            代码展示-每隔1s,定时器一就会回调函数Timer1_Callback,打印语句1,每隔3s,定时器二就会回调函数Timer1_Callback,打印语句2;最终表现为打印三句语句1打印一句语句2循环
            运行展示-符合预期


    HarmonyOS内核开发—信号量
        基本概念
        运作机制
        实现信号量功能
        信号量实验
            申请两次sem1信号量,使得Thread_Semaphore2和Thread_Semaphore3能同步执行;此处若只申请一次信号量,则Thread_Semaphore2和Thread_Semaphore3会交替运行。
            Thread_Semaphore2和Thread_Semaphore3能同步执行
            Thread_Semaphore2和Thread_Semaphore3会交替运行


    HarmonyOS内核开发—事件管理
        事件基本概念
         事件运作机制
        实现事件功能
            代码和代码说明
            运行-事件同步,每隔一秒钟打印一次


    HarmonyOS内核开发—互斥锁
        互斥锁基本概念
        互斥锁运作机制
        实现互斥锁功能
            代码展示(修改为26-25-24
            根据代码可知,任务二不受互斥锁限制,任务一和任务三受互斥锁限制,所以现象为3-222-1-222-3-222-1,


    HarmonyOS内核开发—消息队列
        消息队列基本概念
        消息队列运作机制
        实现消息队列功能
            代码解读
            运行展示---一秒钟发送一次



对课程内容的理解
    了解定时器管理、信号量、事件管理、互斥锁、消息队列的概念

引发的思考与理解

标签
收藏
回复
举报
回复
    相关推荐