原创 BLE 快速開發入門

 如上圖所述,要實現一個BLE應用,首先需要一個支持BLE射頻的芯片,然後還需要提供一個與此芯片配套的BLE協議棧,最後在協議棧上開發自己的應用。可以看出BLE協議棧是連接芯片和應用的橋樑,是實現整個BLE應用的關鍵。那BLE協議棧具體

原创 藍牙的sniff mode

https://blog.csdn.net/z497544849/article/details/84143224   在解析藍牙的sniff mode之前,我們先來回顧一下藍牙有哪些連接狀態。 一、 藍牙的連接狀態轉換圖如下:     

原创 Linux slab 分配器剖析

https://www.ibm.com/developerworks/cn/linux/l-linux-slab-allocator/ 動態內存管理 內存管理的目標是提供一種方法,爲實現各種目的而在各個用戶之間實現內存共享。內存管理方法應

原创 linux 內存管理

文章系轉載 摘 要:本章首先以應用程序開發者的角度審視Linux的進程內存管理,在此基礎上逐步深入到內核中討論系統物理內存管理和內核內存的使用方法。力求從外到 內、水到渠成地引導網友分析Linux的內存管理與使用。在本章最後,我們給出一個

原创 對嵌入式系統使用消息隊列的一些認識

    由於項目需要,在嵌入式操作系統的中間件設計中,採用了消息隊列來作爲各個模塊之間的通信方式,同時允許用戶層的不同用戶來訪問中間件的各個模塊。     現在列出下面三個問題來加深對消息隊列的理解,以便後續的架構優化: 問題1:爲什麼要

原创 藍牙HCI學習總結

主要內容: (1)什麼是HCI (2)爲什麼有HCI (3)HCI怎麼用 什麼是HCI     HCI是介於BT Host和BT Controller之間的一層通信接口,完成Host 和Controller之間的command、event

原创 聲明,定義,extern,static,const關鍵字的一些理解

變量聲明和變量定義     變量定義:用於爲變量分配存儲空間,還可爲變量指定初始值。程序中,變量有且僅有一個定義。     變量聲明:用於向程序表明變量的類型和名字。     定義包含聲明:當定義變量時我們聲明瞭它的類型和名字,同時分配了

原创 Linux鏈接腳本詳解

轉載自:https://www.cnblogs.com/li-hao/p/4107964.html 一、 概論 每一個鏈接過程都由鏈接腳本(linker script, 一般以lds作爲文件的後綴名)控制. 鏈接腳本主要用於規定如何把輸入

原创 學習如何寫Makefile

文章出處:http://blog.csdn.net/haoel/article/details/2886 轉載方便自己隨時學習,隨時查詢,感謝原創大神的辛苦付出和無私奉獻 1. makefile很重要 什麼是makefile?或許很多Wi

原创 藍牙協議AVRCP的學習

最近又重新讀了一遍藍牙AVRCP的協議,相比於之前的學習。這次有如下幾點需要總結: (1)對等實體的AVRCPP交互過程中,get capability這個功能非常重要,因爲Notify cmd基本上通過該cmd獲取到對方支持的event

原创 Linux內核的整體架構簡介

1. 前言 本文是“Linux內核分析”系列文章的第一篇,會以內核的核心功能爲出發點,描述Linux內核的整體架構,以及架構之下主要的軟件子系統。之後,會介紹Linux內核源文件的目錄結構,並和各個軟件子系統對應。 注:本文和其它的“Li

原创 git subtree有效管理公共第三方lib

https://www.cnblogs.com/kidsitcn/p/4541890.html   如果你的項目中有很多第三方的lib,你希望使用它,並且也希望可能對該lib做修改並且貢獻到原始的項目中去,或者你的項目希望模塊化,分爲幾個

原创 SBC 算法簡介與PLC的優化簡介

1. SBC算法簡介 SBC是sub band code的縮寫,也可稱爲子帶編碼 在A2DP協議中,SBC算法是默認支持的 藍牙SBC算法是一種以中等比特率傳遞高質量音頻數據的低計算複雜度的音頻編碼算法 2. 算法基本框圖 SBC系統使用

原创 latm header與 ADTS header之間的轉換

     從目前手機的資料來看,大部分都是講ADTS轉換爲LATM,卻很少有資料將LATM的header轉換爲ADTS的header,雖然他們的原理是相同的,但是實際操作還是有些不一樣      現在基於FFmpeg來做一套轉碼的程序如下

原创 XXX 未定義的引用的分析

         最近在項目過程中,移植的時候編譯器提示“XXX 未定義的引用”,一般是鏈接沒有找到對應XXX的具體實現所報出來的問題。出現這個問題的原因,剛開始是以爲沒有將的相應的函數實現,但是從對應的文件中能夠找到XXX的實現