原创 C語言移位操作符易錯點

1.邏輯移位和算術移位差異        邏輯移位是無論左移還是右移,移出都用0來填補。        算術移位分爲兩種情況,針對無符號值,那麼算術移位和邏輯移位是相同的;若有符號值,算術左移等同於邏輯右移,而算術右移,需要根據符號位進行

原创 Linux TC模擬網絡延遲、丟包、亂序

1.TC簡介        netem與tc: netem是Linux 2.6及以上內核版本提供的一個網絡模擬功能模塊。該功能模塊可以用來在性能良好的局域網中,模擬出複雜的互聯網傳輸性能,諸如低帶寬、傳輸延遲、丟包等等情況。使用 Linu

原创 “鎖該卷時發生錯誤 錯誤5 拒絕訪問 ”解決方法

    在使用win32diskimager往tf卡寫入鏡像文件時,出現“鎖該卷時發生錯誤 錯誤5 拒絕訪問”,找了好多解決辦法,好像也沒起作用,下面簡單講述一下如何解決的。 第一步:win+R 第二步:輸入diskpart 第三步:按照

原创 stm32獨立看門狗學習

1.獨立看門狗簡介     stm32獨立看門狗是由內部專門的40kHz時鐘驅動,爲了防止外界的干擾導致程序跑飛現象導致的死循環,看門狗的作用就是在一定時間內沒有接收到喂狗信號,便實現處理器的自動復位重啓。   2.獨立看門狗寄存器  

原创 AFIO時鐘何時打開

參考手冊在AFIO寄存器描述中說明:對寄存器AFIO_EVCR(事件控制寄存器)、AFIO_MAPR(複用重映射和調試I/O配置寄存器)和AFIO_EXTICRX(外部中斷配置寄存器)進行讀寫操作前,應該首先打開AFIO的時鐘。

原创 MDK5編譯代碼大小解釋

     通過對程序進行編譯,可以在編譯結果中看到以下信息      上圖中,各個數據名詞的含義分別爲:      Code:程序佔用flash的大小,單位:byte,佔用flash      RO-data:Read Only-dat

原创 STM32啓動模式設置

利用BOOT0和BOOT1設置啓動方式,其不同值設置效果如下表所示 BOOT0 BOOT1 啓動模式 說明 0 x 用戶閃存存儲器 Flash啓動 1 0 系統存儲器 系統存儲器啓動,用戶串口

原创 typedef struct和struct的區別

當struct定義時: struct 結構體名 {         結構體成員名   }結構體變量名; 或者 struct 結構體名 {    結構體成員名 } 則定義結構體變量名時:  struct 結構體名 結構體變量名 以上兩種,引

原创 【第一天】VScode安裝

選擇Vscode作爲python開發工具。 1、在官網(https://code.visualstudio.com/Download)下載自己電腦相對應的安裝文件,使用的windows10系統,所以下面介紹windows 10安裝流程;

原创 嵌入式學習20170710

一、嵌入式定義 嵌入式系統是一種爲特定設備服務,軟硬件可裁剪的計算機系統。其特點:1)可裁剪性;2)實時性;3)統一的接口。提供設備統一的驅動接口;4)操作方便、簡單; 5)強穩定性,弱交互性。 二、嵌入式開發學習路線 第一階段:應用開