原创 一種電源自動切換電路

這裏記錄一種簡單、易實現的電源自動切換電路,如下圖所示: 這裏Q1爲P溝道mos管,Vgs(th) = -0.7V。P1爲電池接口,輸入電壓爲3.7V~4.2V,接在mos管的D級;4V4爲USB接口經穩壓管轉換後的電壓,接在m

原创 設備樹傳參中的platform device的匹配

問題 在高版本的Linux內核中使用了設備樹進行傳參,之前購買一塊nanopi的板子使用的是linux 4.11.2版本的內核(使用的友善之臂的Mainline linux)就是這種情況,並且使用設備樹傳參過後,原來硬編碼在mac

原创 快速配置vim+ctags+cscope

介紹 配置vim是Linux環境下開發的日常,這裏記錄如何快捷地配置好vim+ctags+cscope開發環境。 安裝必要軟件 插件管理器 git clone https://github.com/VundleVim/Vundle

原创 我的C語言矩陣庫01

這裏實現的矩陣庫是將矩陣都分配在棧內存中的,這使得我在進行較大量的矩陣運算時將棧給撐爆了,所以更好的辦法是使用malloc動態分配內存。 查看改進的矩陣庫: https://github.com/colourfate/math_m

原创 git的基本使用、分支創建和衝突解決

介紹 記錄在Ubuntu下使用git命令更新代碼到github的過程 在github上創建版本庫 在github上註冊賬號 獲取本機的ssh密鑰 $ ssh-keygen -C 'xxx' -t rsa 其中xxx處爲你的電子

原创 PX4開發(1):ubuntu下pixhawk開發環境搭建

1. 介紹 之前買了個330的四軸,最近想利用起來,所以買了個pixhawk來玩。pixhawk是開源的,所以想看看能不能在其基礎上開發出什麼。 要做開發首先要配置環境,由於官方推薦在linux環境下開發,所以這裏介紹ubunt

原创 數字視頻編碼技術原理_筆記(5~8章)

第五章 量化 量化主要應用於從連續的模擬信號到數字信號的轉換,其作用主要是將信號的連續取值近似爲多個離散值,即量化相當於一個多對一的映射過程,通過量化降低了數據量。 5.1 量化的基本原理 5.1.1 基本概念 對於輸入的連續信號

原创 算法與數據結構——c語言描述01:分治、求最大公約數、快速求冪

算法分析0. 介紹1. 數學基礎2. 要分析的問題2.2 最大子序列和問題2.2 求最大公約數2.3 快速求冪算法總結 0. 介紹 由於工作和學習中上用不到,在算法和數據結構方面的基礎基本沒有,而由於要考公司的c語言工作級認證,發

原创 我的C語言矩陣庫02

之前實現的矩陣庫能夠完成功能,但是在使用上有些麻煩,有的地方使用&,有的地方只有*,而有的地方什麼都不用加,就顯得符號比較混亂。造成這個問題的原因就是我把所有矩陣的內存空間都分配在棧上了!而且由於棧內存是有限的,所以當我的矩陣定義

原创 小四軸——空心杯電機引起的電源干擾

問題 用STM32做了一個微型四軸的飛控,使用的是空心杯電機,使用一個MOS管驅動,但是現在電機只要運行起來,就會產生非常大的干擾,直接導致STM32復位或不運行。經過換電容,加二極管續流,換LDO芯片,加電感進行濾波,花費了大量

原创 PX4開發(2):QGroundControl的使用及電調校準——準備起飛

1. 介紹 上一節把固件燒寫好了,接下來進行傳感器的校準了,傳感器校準要使用官方的地面站,也就是QGC(QGroundControl,官網下載點擊這裏)。安裝好QGC後打開,然後將pixhawk使用USB線連接到電腦,QGC上就可

原创 數字視頻編碼技術原理_筆記(1~4章)

書是高文的《數字視頻編碼技術原理》(第二版),簡單做下筆記 1. 概論 1.1 色彩空間 常用的色彩空間表示方法有RGB和YUV。 RGB色彩空間是直接基於三原色來表達彩色圖像,一個像素需要用三個樣值表示,RGB三個基本色度對混

原创 樹莓派、51、arduino和樹莓派幾種常用芯片及開源硬件的比較

血統 IDE 語言 價格 硬件資源 下載方式 開發難度 51 KEIL C 3~10 PWM/AD/SPI/UART 串口 簡單 stm32 KEIL/IAR C 12 PWM/AD/DMA/I2C/SPI/UART

原创 ARM+Linux嵌入式開發05:【uboot-2017移植】重定位

概述 上一節初始化好了串口和LED,我們可以用它們進行調試;也設置好了時鐘和DRAM,爲uboot的重定位做好準備。之前所做的所有工作都是在BL1中,也就是uboot的前16KB,而大部分uboot的代碼還在SD卡中沒有載入內存,沒有

原创 ARM+Linux嵌入式開發04:【uboot-2017移植】底層硬件初始化

概述 上一節講了uboot啓動的第一階段,其中會調用一個lowlevel_init函數對進行底層硬件初始化,然後完成重定位,這一節開始對底層硬件初始化作介紹,主要包括:LED燈,電源鎖存,時鐘,串口。 LED燈 打開board/sam