原创 MCU小型調度OS之四:調度OS與RTOS的本質區別

一、RTOS原理與機制:        圖1        如上圖1,這個是UCOSII,大同小異,RTOS一般都是很多任務並行運行,如何切換任務呢,一般是在一個信號量pending或者OSTimeDly的時候切換,不然一個任務一直搶佔着

原创 明朝滅亡的真正原因,真的回天乏術了嗎?

         這個論壇寫了很多技術,現在談談大家喜歡的明史,明朝最後一個皇帝崇禎,也算是夠倒黴的,一登上皇位,內憂外患,內有農民起義、整個政府腐敗不堪之憂,外有遼東滿清之患,連老天都不幫忙,來個連年乾旱、小冰河時期,顆粒無收,有人發表

原创 人聲分離攻破“雞尾酒會”效應,將爲語音識別帶來哪些新可能?

“時隔65年,在近日Google Research軟件工程師Inbar Mosseri和Oran Lang發表的論文《Looking to Listen at the Cocktail Party》中,採用了一個全新的視聽模型爲“雞尾酒會

原创 MCU小型調度OS之二:定時器

一、結構體類型:                如上圖所示,timer_list就是定時器的結構體,其中timer_id是定時器ID;enable是該定時器是否啓動;expires是定時時間長度,function是定時器超時函數,p_ar

原创 MCU小型調度OS之三:任務調度機制

一、結構體類型:         圖1           圖2         如上圖1,task_list是任務節點的結構體,具體參數如下:         1、task_id是任務ID,一般對某個任務操作時用來區分具體哪個任務;  

原创 MCU小型調度OS之一:由ODM項目引起跨平臺、跨系統的兼容、可移植

項目背景:                最近公司在做一個ODM項目,需要把公司內部的協議棧交互與加密方式封裝成一個SDK,提供給ODM廠家調用,達到其他公司只做適配BSP,而核心業務由我們自己掌控,達到ODM廠家更換任意平臺芯片,任意R

原创 Zigbee疑難問題定位以及思路方法分享 (二)

         接着上回繼續分析公司遺留的問題二分析,問題二就是入網速度慢、入網後概率性的掉線。先普及一下我們入網的流程,因爲不同的網絡有不同的PANID,因此目前入網的方式有三種:1、每個設備出廠時候讀取它的MAC地址,生成二維碼貼在

原创 Zigbee疑難問題定位以及思路方法分享 (四)

        接着上回繼續分析公司遺留的問題四,問題四的需求就是,假如其中一個網關壞了,拿了一個新的網關,能夠替換接管舊網關下面的所有設備,由於搞ZigBee也有兩個月了,802.15協議以及ZigBee協議也蠻熟悉了,抓包也抓過了,對

原创 Zigbee疑難問題定位以及思路方法分享 (三)

        接着上回繼續分析公司遺留的問題三分析,問題三就蠻棘手的,因爲是隱性問題,不容易復現,有時候,一個月才復現一次,出現這樣的問題給定位帶來了很大的困難,首先說一下我們產品的掉線、重連機制。         產品掉線重連機制:設

原创 Zigbee疑難問題定位以及思路方法分享 (一)

        最近換了家新公司,花了兩個月從不懂ZigBee到解決了不少遺留偶發BUG,有了不少心得體會,下面分享下自己定位思路,以及分析問題的方法。         剛進公司,接手了另一個工程師做的ZigBee項目(採用CC2530方

原创 程序員專用接私活,靠譜的七個平臺

程序員除了在公司上班之外,有時候也需要接私活賺些外快補貼家用,那麼國內有哪些渠道可以提供大量的職位呢? 我尋找了一些靠譜的方法推薦給大家,以下是幾個國內主流並且不同業務類型的平臺,供大家篩選 1、程序員客棧:程序員的經紀人 2、快碼衆

原创 嵌入式產品偶發性問題定位總結

        本人從事嵌入式研發多年,從有線到無線都略有涉及,下面談談我對關於嵌入式產品問題定位的思路和方法。因爲普通軟件的話,通過打印、仿真、屏蔽二分法都可以判斷出來,今天就不多說了,今天分享下一些隱形問題或偶發性問題的定位思路。  

原创 從一個普通程序猿到CTO,要經歷哪幾個階段?

不想當CTO的技術開發,不是好程序員,那麼從一個普通程序員到頂級的CTO都要經歷哪些關鍵階段,又都需要具備怎樣的工作能力呢?今天小編就給大家分享一篇關於程序員進階歷程的文章,希望對你未來的職業規劃有所幫助。 1.程序員 程序員,英文名 c

原创 一個老程序員的感悟

        從10年到深圳,以及9年了,從開始的MCU編程,到後來的Linux驅動,再到後來的IOT,一路的嵌入式編程,一直不斷的尋找方向,到現在,在一家小型智能家居公司做研發,有了許多心得領悟,也分享給大家,希望有所幫助。    

原创 Linux ALSA聲卡驅動之四:machine和dai_link的作用和實現

一、模塊化管理         alsa音頻驅動模塊化管理,是linux驅動比較典型的代碼架構,app調用snd_pcm_open、snd_pcm_writei、snd_pcm_readi等接口到alsa_lib後,也根據一系列的操作(