日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 公眾號精選 > 嵌入式大雜燴
[導(dǎo)讀]關(guān)注「Linux大陸」,一起進(jìn)步!大家好,我是ZhengN。現(xiàn)在,嵌入式操作系統(tǒng)已經(jīng)越來越多了,如大家都熟知的uCOS、FreeRTOS、RT-Thread等。這些操作系統(tǒng)都各有各的特點,具體可閱讀:?盤點一些嵌入式實時系統(tǒng),你用過哪些?。本篇筆記再來給大家介紹一個簡潔易用的嵌入...



大家好,我是ZhengN。


現(xiàn)在,嵌入式操作系統(tǒng)已經(jīng)越來越多了,如大家都熟知的uCOS、FreeRTOS、RT-Thread等。這些操作系統(tǒng)都各有各的特點,具體可閱讀:?盤點一些嵌入式實時系統(tǒng),你用過哪些?。本篇筆記再來給大家介紹一個簡潔易用的嵌入式操作系統(tǒng)內(nèi)核 —— KLite。


KLite源碼

源碼鏈接:


https://gitee.com/kerndev/klite


KLite的作者是jiangxiaogang。我們之前分享的?實用 | 手頭上無LCD卻又急著開發(fā)UI?LCD模擬器了解一下中介紹的模擬器也是這位大佬的作品。


KLite簡介

KLite以MIT協(xié)議開放源代碼。它是一款入門級的小型搶占式操作系統(tǒng)內(nèi)核,以簡潔易用為設(shè)計目標(biāo),旨在降低學(xué)習(xí)嵌入式操作系統(tǒng)編程和入門的難度。


簡潔的API風(fēng)格,簡潔的調(diào)用方式,簡單的移植方法,可能是目前最簡單易用的嵌入式操作系統(tǒng)內(nèi)核。


  • 支持優(yōu)先級搶占
  • 支持相同優(yōu)先級的線程
  • 支持線程同步互斥
  • 支持動態(tài)內(nèi)存管理
  • 支持多編譯器GCC, IAR, MDK

KLite移植

KLite目前已經(jīng)為ARM Cortex-M0/M3/M4做好了底層適配,如果你的CPU平臺是基于以上平臺的,如STM32,GD32,NRF51,NRF52,F(xiàn)reescale K40等系列單片機,那么可以直接使用預(yù)編譯的庫文件進(jìn)行開發(fā)。


只需要修改template.c里面幾個簡單的函數(shù)即可開始編程。否則可能需要自行移植CPU底層的匯編代碼。


KLite使用

1、KLite編譯

在build目錄下面有預(yù)設(shè)的工程文件,選擇你要使用的編譯器和目標(biāo)CPU平臺,  編譯完成后,會生成kernel.lib文件,將kernel.lib,kernel.h,emplate.c復(fù)制到你的項目源碼中,使用lib文件可以減少重復(fù)編譯時間,當(dāng)然你也可以選擇把全部源碼添加到你的工程中。


2、修改template.c

根據(jù)目標(biāo)CPU的編程手冊,實現(xiàn)template.c里面的2個空函數(shù)。


void cpu_sys_init(void);
這個函數(shù)被kernel_init調(diào)用,為用戶提供一個接口,用于實現(xiàn)那些必須在系統(tǒng)初始化之前的準(zhǔn)備工作,例如初始化CPU的時鐘,設(shè)置FLASH等。


void cpu_sys_idle(uint32_t time);
這個函數(shù)被kernel_idle調(diào)用,為用戶提供一個接口,用于實現(xiàn)系統(tǒng)休眠.例如調(diào)用WFI指令,或者什么都不做。


void SysTick_Handler(void);
這個函數(shù)是平臺相關(guān)的滴答時鐘中斷函數(shù),需要在滴答時鐘中斷中調(diào)用kernel_tick(n),n表示一次中斷的毫秒數(shù)。


3、在main函數(shù)里面添加初始化代碼

main函數(shù)的推薦寫法如下:


//只需要包含這一個頭文件即可
#include "kernel.h"

//用于初始化應(yīng)用程序的線程
void init(void *arg)
{

}

//空閑線程,只需調(diào)用kernel_idle即可
void idle(void *arg)
{
kernel_idle();
}

//C語言程序入口
void main(void)
{
static uint8_t heap[HEAP_SIZE];
kernel_init((uint32_t)heap, HEAP_SIZE);
thread_create(init, 0, 0);
thread_create(idle, 0, 0);
kernel_start();
}
說明:


  • kernel_init 用于初始化內(nèi)核;
  • thread_create 創(chuàng)建主線程init和idle;
  • kernel_start 用于啟動內(nèi)核;
  • init是一個線程函數(shù),在該函數(shù)中實現(xiàn)你的其它初始化代碼.
  • 更多函數(shù)參數(shù)說明請參考API文檔。


往期推薦:


嵌入式設(shè)計模式:有限狀態(tài)自動機的C語言實現(xiàn)


不修車了!轉(zhuǎn)行做單片機開發(fā)


在公眾號聊天界面回復(fù)1024,可獲取嵌入式資源;回復(fù) m ,可查看文章匯總。



點擊閱讀原文,查看更多分享



本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

U-Boot,全稱Universal Boot Loader,是遵循GPL條款的從FADSROM、8xxROM、PPCBOOT逐步發(fā)展演化而來的 開放源碼項目。U-boot,是一個主要用于嵌入式系統(tǒng)的引導(dǎo)加載程序,可以支...

關(guān)鍵字: U-Boot GPL 嵌入式操作系統(tǒng)

北京2022年10月11日 /美通社/ -- 在四川大涼山深處,有一只"涼山黑鷹"少年籃球隊:隊員平均年齡12歲,平均身高1米3,球隊剛成立時,連個像樣的球場都沒有。然而,憑著一腔熱情和驚人天賦,這只...

關(guān)鍵字: 網(wǎng)絡(luò) BSP 內(nèi)核 騰訊

ARM的全稱為Advanced RISC Machines,直譯為高級精簡指令集處理器;RISC即為精簡指令集,那么對應(yīng)的就存在CISC,其為復(fù)雜指令集。

關(guān)鍵字: ARM 內(nèi)核 SoC

上海2022年9月8日 /美通社/ -- 中國家居人齊聚滬上,點亮行業(yè)高質(zhì)量發(fā)展之光。9月6日,家居行業(yè)盛事——家居產(chǎn)業(yè)高質(zhì)量發(fā)展大會暨"月星之夜"在上海月星國際家居生活MALL舉行,數(shù)百位...

關(guān)鍵字: BSP HID 內(nèi)核 大賽

上海2022年8月25日 /美通社/ -- 新茶飲下半場,從價格戰(zhàn)、產(chǎn)品戰(zhàn)、渠道戰(zhàn)上升至品牌內(nèi)核的競爭,打動年輕消費者更需要在審美和品牌價值上做文章。新一代年輕人的...

關(guān)鍵字: 美團 IP MIDDOT 內(nèi)核

一直以來,CPU中央處理器都是大家的關(guān)注焦點之一。因此針對大家的興趣點所在,小編將為大家?guī)鞢PU的相關(guān)介紹,詳細(xì)內(nèi)容請看下文。

關(guān)鍵字: CPU 中央處理器 內(nèi)核

南京2022年8月8日 /美通社/ -- 2022年8月5日,BSiEE本澀于"2022聯(lián)商網(wǎng)大會"榮獲"2021年度高成長連鎖品牌"獎項,為品牌發(fā)展再賦成長印記。正值契...

關(guān)鍵字: 美的 IP 數(shù)字化 內(nèi)核

上海2022年8月5日 /美通社/ -- 日本院線級精準(zhǔn)護膚品牌TAKAMI強勢布局中國,品牌天貓官方旗艦店于7月1日重磅亮相,以便捷的線上購買渠道為中國消費者提供更豐富、沉浸的購物體驗,持續(xù)傳遞品牌的美肌哲學(xué)。這是TA...

關(guān)鍵字: OS OTA 內(nèi)核 大數(shù)據(jù)

廣州2022年7月27日 /美通社/ -- 7月24日晚11:08,功能性護膚品牌溪木源官宣樸樹為品牌代言人。品牌卡點樸樹生日11·08官宣,心意滿滿。以官宣為契機,溪木源也迎來品牌升級,以全新品牌理念、全...

關(guān)鍵字: HEART 內(nèi)核 創(chuàng)始人 大眾

(全球TMT2022年6月9日訊)作為全球第二的服務(wù)器廠商,浪潮信息宣布加入Arm SystemReady™ 計劃,并通過了Arm?最高級SystemReady SR認(rèn)證,為行業(yè)樹立新標(biāo)桿。 浪潮...

關(guān)鍵字: ARM SYSTEM AD 內(nèi)核

嵌入式大雜燴

461 篇文章

關(guān)注

發(fā)布文章

編輯精選

技術(shù)子站

關(guān)閉