原创 文件編碼方式批量轉換工具

        有時候遇到源碼工程中,一些c文件編碼格式不統一的情況,導致用編輯器打開亂碼。這就需要一個工具來把他們的編碼方式統一。         推薦一個工具,名字叫:超級批量編碼轉換 。下載連接:https://dl.pconlin

原创 KeilKill.bat刪除keil編譯生成的過程文件

        在Keil中編譯工程時,會生成很多過程文件,工程文件夾就會變得很大,當複製此工程時,就會不方便。一般的過程文件後綴爲:.o  .d  .crf  .htm  .dep  .lnp  .axf  .sct等。        

原创 字符串匹配的KMP算法和C語言代碼,不需要思考就能理解

        KMP算法用於判斷一個字符串是否包含另一個字符串,如果包含就返回腳標。其實KMP算法本身特別簡單,我看了幾篇本章都號稱簡單易懂,結果看得我雲裏霧裏,直到我看到了阮一峯:字符串匹配的KMP算法,才真正看懂。下文的第一部分基本

原创 jlink、DAPLink、J-Link  OB資料整理

現在市面上的單片機調試器種類太多了,什麼jlink-ob、DAPLink、j-link PRO、ST-Link...... 今天就來全部介紹並且梳理一下。 一、Segger的正版j-Link家族         首先來看一下正版的j-Li

原创 自平衡小車製作

一、介紹 1、控制輸入:加速度傳感器和陀螺儀測得的小車傾角。當加速度傳感器水平放置時,Z軸會測量到重力加速度,大小爲g。當加速度傳感器傾斜時,Z軸上測量的g就會變小,根據變小之前的值和之後的值,就可以算得傾角值。         這樣一

原创 24BYJ48電機的使用,帶驅動程序

一、尺寸與接線 一種是紅、橙、黃、粉、藍的,電機實物如下: 注意電機的接頭可能是XH2.54-5P的(上左圖),也可能是ZH1.5-5P的(上右圖)。 還有一種是紅、黑、黃、棕、藍的 這兩種線色都是紅色爲公共線,然後挨着的4根線分

原创 TMC5160和TMC2160的使用

一、介紹         TMC5160和TMC2160可以PIN對PIN替換,TMC5160自己帶有梯形曲線加速功能,這是它與TMC2160唯一的區別。因此下面都以TMC5160來做介紹。 二、TMC5160的3種工作模式      

原创 激光測距芯片VL53L0X的使用與代碼

一、介紹 1、原理         採用940nm垂直腔面發射激光器(Vertical-Cavity Surface-Emitting Laser,簡稱VCSEL)發射出激光,激光碰到障礙物後反射回來被VL53L0X接收到,測量激光在空氣

原创 IAP的原理和stm8的IAP

一、引出(IAP的原理和stm8上實現IAP的問題)         具有IAP功能的單片機,程序可以分爲兩部分:IAP和APP。APP是用來實現真正功能的程序,而IAP是用來遠程重新編程APP的程序。單片機上電時會先執行IAP程序,在I

原创 MOS管開關時的米勒效應

一、MOSFET的開通過程         MOSFET的柵極驅動過程,可以簡單的理解爲驅動源對MOSFET的輸入電容(主要是柵源極電容Cgs)的充放電過程,當給柵極施加驅動電壓後,MOSFET開通過程會分爲4個階段,其中Vgs、Ig、V

原创 Linux內核移植之四:內核啓動過程

內容來自 韋東山《嵌入式Linux應用開發完全手冊》            與移植U-Boot的過程相似,在移植Linux之前,先了解它的啓動過程。Linux的啓動過程可以分爲兩部分:架構/開發板相關的引導過程、後續的通用啓動過程。如圖1

原创 Linux內核移植之一:內核源碼結構與Makefile分析

內容來自 韋東山《嵌入式Linux應用開發完全手冊》   一、內核介紹 1、版本及其特點         Linux內核的版本號可以從源代碼的頂層目錄下的Makefile中看到,比如下面幾行它們構成了Linux的版本號:2.6.22.6。

原创 Linux內核移植之二:Kconfig分析

內容來自 韋東山《嵌入式Linux應用開發完全手冊》           在內核日錄下執行“make menuconfig ARCH=arm CROSS_COMPILE=arm-linux-”時,就會看到一個如圖16.3所示的菜單,這就是

原创 NCP1271的使用

一、介紹         NCP1271是開關頻率固定的反激式開關電源芯片,又分爲NCP1271A和NCP1271B,他們僅有開關頻率不同。NCP1271A爲65KHz,NCP1271B爲100KHz。有兩種封裝: 二、整體框圖如下,接

原创 激光雕刻機DIY之二:GRBL的下載與參數配置

一、Arduino平臺的GRBL         如果使用的Arduino來做控制器,GRBL源碼在這裏下載:https://github.com/grbl/grbl ,下載下來後,把它解壓成一個文件夾。接着打開Arduino IDE,“