Pegasus智能家居套件樣例開發--軟定時器

樣例簡介

此樣例將演示如何在Pegasus Wi-Fi IoT智能家居套件上使用cmsis 2.0 接口進行定時器開發。

工程版本
  • 系統版本/API版本:OpenHarmony 3.0 release
  • IDE版本:DevEco Device Tool Release 3.0.0.401

快速上手

準備硬件環境
  • 預裝windows系統的PC機
  • Hi3861V100開發板套件
準備開發環境

開發環境安裝配置參照文檔:DevEco Device Tool 環境搭建

準備工程

本用例采DevEco Device Tool工具進行開發,當配置完開發環境后,我們可以在IDE上進行工程的配置下載。

  • 打開DevEco Device Tool,連接遠程linux服務器:DevEco Device Tool 環境搭建

  • 點擊左下角DevEco插件圖標,然后點擊左邊框出現的主頁,彈出主頁界面,主頁中選擇新建項目,如下圖:

  • 配置下載工程

如上圖所示,填寫對應樣例工程的名稱,選擇對應的樣例組件和樣例工程存放路徑后,點擊創建即可進行樣例工程的下載。下載界面如下:

當左下角顯示正在下載OpenHarmony鏡像時,耐心等待下載完成即可。

準備工具鏈
  • 在Projects中,點擊Settings按鈕,進入配置工程界面。

  • 在toolchain頁簽中,DevEco Device Tool會自動檢測依賴的編譯工具鏈是否完備,如果提示部分工具缺失,可點擊SetUp按鈕,自動安裝所需工具鏈。

  • 如果出現安裝pip組件失敗,可參考修改Python源的方法進行修改,完成嘗試重新安裝。

工具鏈自動安裝完成后如下圖所示。

樣例代碼下載完成后,DevEco Device Tool會重新要求連接遠程服務器,輸入密碼連接后會進入對應的代碼編輯界面,此時點擊左下角DevEco插件圖標,選擇PROJECT TASKS可以查看到對應的樣例工程,點擊build選項進行編譯,并可在終端查看對應的編譯結果。

固件生成在對應工程目錄的out/hispark_pegasus/wifiiot_hispark_pegasus/目錄下。

燒錄/安裝

編譯完成后可以通過DevEco Device Tool進行燒錄,在燒錄前需要做一些燒錄的配置:

配置準備

在配置燒錄前需要先查看DevEco Device Tool是否可以正常識別串口。

  • 點擊主頁,在主頁選擇對應工程,點擊配置工程進入到配置頁面。
查詢串口

在DevEco Device Tool中,點擊QUICK ACCESS > DevEco Home > Device,查看并記錄對應的串口號。

如果對應的串口異常,請根據 Hi3861V100開發板串口驅動安裝 安裝USB轉串口的驅動程序。

配置串口

在QUICK ACCESS > DevEco Home > Projects中,點擊Settings打開工程配置界面。

在“hi3861”頁簽,設置燒錄選項,包括upload_port、upload_protocol和upload_partitions。

  • upload_port:選擇已查詢的串口號。
  • upload_protocol:選擇燒錄協議,選擇“hiburn-serial”。
  • upload_partitions:選擇待燒錄的文件,默認選擇hi3861_app。

燒錄
  • 所有的配置都修改完成后,在工程配置頁簽的頂部,點擊Save進行保存。點擊Open打開工程文件,然后在“PROJECT TASKS”中,點擊hi3861下的Upload按鈕,啟動燒錄。

  • 啟動燒錄后,顯示如下提示信息時,請在15秒內,按下開發板上的RST按鈕重啟開發板。

  • 重新上電后,界面提示如下信息時,表示燒錄成功。

更多燒錄細節可以參考Hi3861V100開發板燒錄。

  • 運行結果

Timer API

API名稱說明
osTimerNew創建和初始化定時器
osTimerGetName獲取指定的定時器名字
osTimerStart啟動或者重啟指定的定時器
osTimerStop停止指定的定時器
osTimerIsRunning檢查一個定時器是否在運行
osTimerDelete刪除定時器

osTimerNew()

osTimerId_t osTimerNew (osTimerFunc_t func, osTimerType_t type, void *argument, const osTimerAttr_t *attr)

參數:

名字描述
func定時器回調函數.
type定時器類型,osTimerOnce表示單次定時器,ostimer周期表示周期性定時器.
argument定時器回調函數的參數
attr定時器屬性

為了能讓大家更好的學習鴻蒙(HarmonyOS NEXT)開發技術,這邊特意整理了《鴻蒙開發學習手冊》(共計890頁),希望對大家有所幫助:https://qr21.cn/FV7h05

為了能讓大家更好的學習鴻蒙(HarmonyOS NEXT)開發技術,這邊特意整理了《鴻蒙開發學習手冊》(共計890頁),希望對大家有所幫助:https://qr21.cn/FV7h05

《鴻蒙開發學習手冊》:https://qr21.cn/FV7h05

入門必看:https://qr21.cn/FV7h05
1.? 應用開發導讀(ArkTS)
2.? ……

HarmonyOS?概念:https://qr21.cn/FV7h05

  1. 系統定義
  2. 技術架構
  3. 技術特性
  4. 系統安全

如何快速入門:https://qr21.cn/FV7h05
1.? 基本概念
2.? 構建第一個ArkTS應用
3.? ……

開發基礎知識:https://qr21.cn/FV7h05
1.? 應用基礎知識
2.? 配置文件
3.? 應用數據管理
4.? 應用安全管理
5.? 應用隱私保護
6.? 三方應用調用管控機制
7.? 資源分類與訪問
8.? 學習ArkTS語言
9.? ……

基于ArkTS?開發:https://qr21.cn/FV7h05
1.? Ability開發
2.? UI開發
3.? 公共事件與通知
4.? 窗口管理
5.? 媒體
6.? 安全
7.? 網絡與鏈接
8.? 電話服務
9.? 數據管理
10.? 后臺任務(Background?Task)管理
11.? 設備管理
12.? 設備使用信息統計
13.? DFX
14.? 國際化開發
15.? 折疊屏系列
16.? ……

鴻蒙開發面試真題(含參考答案):https://qr21.cn/FV7h05

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:
http://www.pswp.cn/news/712368.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/712368.shtml
英文地址,請注明出處:http://en.pswp.cn/news/712368.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

『大模型筆記』RAG應用的12種調優策略指南

RAG應用的12種調優策略指南 文章目錄 一. 概要二. 數據索引2.1. 數據清洗2.2. 分塊2.3. 嵌入模型2.4. 元數據(或未向量化的數據)2.5. 多索引2.6. 索引算法三. 推理階段(檢索和生成)3.1. 檢索參數3.2. 高級檢索策略3.3. 重新排序模型3.5. 大語言模型(LLM)

26、Qt調用.py文件中的函數

一、開發環境 Qt5.12.0 Python3.7.8 64bit 二、使用 新建一個Qt項目,右擊項目名稱,選擇“添加庫” 選擇“外部庫”,點擊“下一步” 點擊“瀏覽”,選擇Python安裝目錄下的libs文件夾中的“python37.lib”文件,點擊“下…

退休開便利店真的靠譜嗎?2024比較賺錢的創業項目排行

近日多個退休后開便利店賺錢的新聞登上熱搜,但是,小編對此有疑問,退休的老年人開便利店真的是一個好選擇嗎? 第一、便利店最基本的轉讓費,裝修費,進貨等等,這筆開支非常大,足以掏空老…

H5下拉刷新分頁

對于分頁需求,分頁數據的請求觸發十分重要,監聽滑動到底的觸發也有很多種。 1.IntersectionObserver監聽 IntersectionObserver 接口(從屬于 Intersection Observer API)提供了一種異步觀察目標元素與其祖先元素或頂級文檔視口&a…

終結數據混亂!開發者必學的GraphQL秘籍,高效API只需一步

在數字世界中,API就如同城市中的道路,連接著各種服務和數據。然而,傳統的API(如RESTful)雖然功不可沒,但隨著技術復雜性和需求多樣性不斷攀升,它們顯露出的局限性也呼喚著新的可能出現。此時&am…

Unity中,activeInHierarchy 和 activeSelf

activeInHierarchy: activeInHierarchy 屬性表示游戲對象是否在場景中處于激活狀態,并且是否在層次結構中的激活狀態。它考慮了游戲對象以及其所有父對象的激活狀態。如果 activeInHierarchy 為 true,表示該對象在場景中處于激活狀態且其所有…

LaMa Image Inpainting 圖像修復 Onnx Demo

目錄 介紹 效果 模型信息 項目 代碼 下載 LaMa Image Inpainting 圖像修復 Onnx Demo 介紹 gihub地址:https://github.com/advimman/lama 🦙 LaMa Image Inpainting, Resolution-robust Large Mask Inpainting with Fourier Convolutions, WAC…

《PyTorch深度學習實踐》第十三講RNN進階

一、 雙向循環神經網絡(Bidirectional Recurrent Neural Network,BiRNN)是一種常見的循環神經網絡結構。與傳統的循環神經網絡只考慮歷史時刻的信息不同,雙向循環神經網絡不僅考慮歷史時刻的信息,還考慮未來時刻的信息…

wireshark過濾和tcpdump抓包指令

Wireshark 過濾器的表達式,用于過濾源 IP 地址為 10.184.148.247 并且目標 TCP 端口為 1883 的數據包。啟用抓包后過濾 ip.addr 10.184.148.247 && tcp.port 1883 主機位10.184.148.19和目標端口為 8080 的操作目標 抓包前過濾 host 10.184.148.19 &…

軟件說明書怎么寫?終于有人一次性說清楚了!

每次寫軟件說明書,你是不是總是毫無頭緒,不知道從何下手?到各網站找資料,不僅格式不規范,甚至可能遺漏關鍵內容!挨一頓批不說,還浪費大把時間。別著急,編寫軟件說明書,關…

PostgreSQL開發與實戰(2)常用命令

作者&#xff1a;太陽 1、連庫相關 #連庫 $ psql -h <hostname or ip> -p <端口> [數據庫名稱] [用戶名稱] #連庫并執行命令 $ psql -h <hostname or ip> -p <端口> -d [數據庫名稱] -U <用戶名> -c "運行一個命令;"備注&#xff1…

從理論到落地,大模型評測體系綜合指南

1956年夏&#xff0c;“人工智能” 這一概念被提出。距今已有近70年的發展歷史。中國科學院將其劃分為六個階段&#xff1a;起步發展期&#xff08;1956年—1960s&#xff09;&#xff0c;反思發展期&#xff08;1960s-1970s&#xff09;,應用發展期&#xff08;1970s-1980s),低…

SpringBoot集成Activiti案例

前言 Activiti項目是一項新的基于Apache許可的開源BPM平臺&#xff0c;從基礎開始構建&#xff0c;旨在提供支持新的BPMN 2.0標準&#xff0c;包括支持對象管理組&#xff08;OMG&#xff09;&#xff0c;面對新技術的機遇&#xff0c;諸如互操作性和云架構&#xff0c;提供技…

3.1log | 62.不同路徑,63. 不同路徑 II,343. 整數拆分,96.不同的二叉搜索樹

62.不同路徑 class Solution { public:int uniquePaths(int m, int n) {vector<vector<int>> dp(m,vector<int>(n,0));for(int i0;i<n;i) dp[0][i]1;for(int i0;i<m;i) dp[i][0]1;for(int i1;i<m;i){for(int j1;j<n;j){dp[i][j]dp[i][j-1]dp[i-…

c++八股文:c++編譯與內存管理

文章目錄 1. c內存管理2. 堆與棧3.變量定義與生命周期4.內存對齊5.內存泄露6.智能指針7.new 和 malloc 有什么區別8.delete和free的區別9.什么野指針&#xff0c;怎么產生的&#xff0c;如何避免野指針10.野指針和指針懸浮的區別11.字符串操作函數參考 1. c內存管理 c在運行程…

LeetCode刷題--- 乘積為正數的最長子數組長度

個人主頁&#xff1a;元清加油_【C】,【C語言】,【數據結構與算法】-CSDN博客 個人專欄 力扣遞歸算法題 http://t.csdnimg.cn/yUl2I 【C】 ??????http://t.csdnimg.cn/6AbpV 數據結構與算法 ???http://t.csdnimg.cn/hKh2l 前言&#xff1a;這個專欄主要講述動…

ScheduledThreadPoolExecutor學習

簡介 ScheduledThreadPoolExecutor 是 Java 中的一個類&#xff0c;它屬于 java.util.concurrent 包。這個類是一個線程池&#xff0c;用于在給定的延遲后運行命令&#xff0c;或者定期地執行命令。它是 ThreadPoolExecutor 的一個子類&#xff0c;專門用于處理需要定時或周期…

解釋索引是什么以及它們是如何提高查詢性能的

索引在數據庫管理系統中是一個重要的數據結構&#xff0c;用于幫助快速檢索數據庫表中的數據。它可以被看作是一個指向表中數據的指針列表&#xff0c;這些指針按照某種特定的順序&#xff08;如字母順序或數字順序&#xff09;排列。索引的工作原理類似于書籍的目錄&#xff1…

Python爬蟲實戰第二例【二】

零.前言&#xff1a; 本文章借鑒&#xff1a;Python爬蟲實戰&#xff08;五&#xff09;&#xff1a;根據關鍵字爬取某度圖片批量下載到本地&#xff08;附上完整源碼&#xff09;_python爬蟲下載圖片-CSDN博客 大佬的文章里面有API的獲取&#xff0c;在這里我就不贅述了。 一…

kitex 入門和基于grpc的使用

&#x1f4d5;作者簡介&#xff1a; 過去日記&#xff0c;致力于Java、GoLang,Rust等多種編程語言&#xff0c;熱愛技術&#xff0c;喜歡游戲的博主。 &#x1f4d7;本文收錄于kitex系列&#xff0c;大家有興趣的可以看一看 &#x1f4d8;相關專欄Rust初階教程、go語言基礎系…