原创 Linux樹莓派串口通信編程 —— C語言實現AT指令集的發送與接收

文章目錄一. 前言二. 要掌握的知識2.1 struct termios 結構體2.2 c_iflag 輸入模式標誌2.2 c_oflag 輸出模式標誌2.3 c_cflag 控制模式標誌2.4 c_lflag 本地控制模式2.5

原创 AT指令集超詳細解析(內含EC20模塊datasheet)

文章目錄一. AT指令語法基本原理AT指令和響應類型二. AT指令集中的幾個重要術語三. 一般命令ATI 顯示產品標識信息AT+GMI , AT+CGMI 獲取製造商AT+GMM , AT+CGMM 申請TA模型識別AT+GMR

原创 串口通信知識總結

  之前斷斷續續的學習瞭解了串口通信的相關知識,但由於沒有集中地學習,導致對串口通信的知識理解相當凌亂且零碎,今天就從頭總結一下串口通信的相關知識吧~ 文章目錄一. 通信方式1.1 並行通信1.2 串行通信二. 串行通信分類2.1

原创 數據結構與算法 —— 樹(相關知識回顧)

文章目錄一. 概述二. 樹的實現2.1 雙親表示法2.2 雙親孩子表示法 一. 概述 樹的存儲結構應用範圍極爲廣泛,我所瞭解的,如Linux操作系統的目錄結構,DNS域名的存儲,多路複用中的epoll利用的紅黑樹… 那麼,什麼是樹

原创 基於樹莓派的sht20溫溼度傳感器應用(c語言)

文章目錄一.I2C協議1.1 I2C總線特徵1.2 I2C總線特徵1.3 I2C總線協議1.4 常見的幾種傳輸二. sht2x溫溼度傳感器模塊三. 基於樹莓派的溫溼度傳感器的應用3.1 使能i2c驅動3.2 接線3.3 C代碼3.

原创 數據結構與算法 — 棧的鏈式存儲結構

對於棧來說,使用順序存儲結構偏多,而對於隊列,則是使用鏈式結構偏多,棧的概念在前一篇已經介紹了,這篇主要給一下鏈式的代碼: 基本定義: typedef int ElemType; //這裏用int示例 typedef str

原创 數據結構與算法 —— 棧的順序存儲結構及C實現

一、什麼是棧 棧是一種先進後出的數據結構,英文last in first out(LIFO),又名堆棧,它是一種運算受限的線性表。限定僅在表尾進行插入和刪除操作的線性表。這一端被稱爲棧頂,相對地,把另一端稱爲棧底。向一個棧插入新元

原创 Linux下動態庫與靜態庫原理與製作

文章目錄一. 什麼是庫二. c程序的編譯過程三. 靜態庫3.1 什麼是靜態庫3.2 如何使用靜態鏈接3.3 製作一個靜態庫四. 動態庫4.1 什麼是動態庫4.2 動態庫的製作 一. 什麼是庫 在系統中,庫就是一個現有的,已經寫好可

原创 算法筆記 —— 漢諾塔詳解

文章目錄一.問題來源二.小遊戲體驗三.思路分析四. 程序實現 一.問題來源 相傳在古印度聖廟中,有一種被稱爲漢諾塔(Hanoi)的遊戲。該遊戲是在一塊銅板裝置上,有三根杆(編號X、Y、Z),在X杆自下而上、由大到小按順序放置64個

原创 數據結構與算法 —— 隊列的鏈式存儲結構

文章目錄一.概述二.結點定義二. 初始化隊列三. 入列四. 出列五. 銷燬隊列六. 運行程序 一.概述 隊列是一種只允許咋一端進行操作(插入,刪除)的線性表,與棧相比,棧是一種先進後出(Fast In Last Out)的形式,隊

原创 數據結構與算法 ---- 單鏈表與其代碼演示

文章目錄數組的侷限性單鏈表的原理創建鏈表尾插法思路圖解尾插法代碼頭插法思路圖解頭插法代碼鏈表基本操作查找節點思路圖解查找結點代碼插入節點思路圖解刪除結點思路圖解刪除結點代碼計算鏈表長度代碼列出鏈表所有內容代碼單鏈表程序總覽與代碼演

原创 進程間通信(IPC)---- 消息隊列

文章目錄消息隊列的使用msgget ( ) 函數key值初步代碼演示ipcs 與 ipcrm命令msgsnd() 函數msgrcv() 函數msgctl() 函數進程網狀通信代碼代碼使用演示 由於無名管道與命名管道的侷限性,無法滿

原创 算法筆記 —— 八皇后問題

一. 問題描述 在國際象棋中,皇后棋子擁有最大的攻擊力ju,她除了可以像象棋中的‘車’一樣攻擊行和列,還可以攻擊四個斜方向的棋子,如圖: 紅線爲其攻擊範圍,那麼什麼是八皇后問題呢? 即在當前棋盤上,要擺放八個皇后棋子,且這八個皇

原创 Linux基礎知識篇三 -- vim的基本使用

我只擔心一件事,我怕我配不上自己所受的苦難.             ——陀斯妥耶夫斯基 文章目錄一、什麼是vim?二、vim的優缺點2.1 可怕的 vim (缺點)2.2 vim的優點三、vim的基本使用3.1 各模式的轉換圖

原创 算法筆記——字符串循環左移(字符串的反轉)

在劍指offer中有這樣一道題,將字符串 ABCdefGHI 循環左移3位,也就是以defGHIABC輸出 思路: 首先,以pos將字符串分爲兩組,分別反轉這兩組字符串,在將整個字符串反轉即可得到結果: 反轉字符串: void