原创 記錄學習感悟

學習是一個積累的過程,盲目前行沒有感悟你會在前行的道路上迷茫的。 記錄屬於自己idea、 knowledge。

原创 stm32 設置systick中斷搶先式優先級

最近使用STM32時希望將systick的中斷優先級降低,但是CMSIS裏給出的例子都是類似 [plain] view plain copy     NVIC_InitStructure.NVIC_IRQChann

原创 淺談上、下拉電阻的作用

淺談上、下拉電阻的作用 上下拉電阻: 1、當TTL電路驅動COMS電路時,如果TTL電路輸出的高電平低於CMOS電路的最低高電平(一般爲3.5V),這時就需要在TTL的輸出端接上拉電阻,以提高輸出高電平的值。 2、OC門電路

原创 stm32 堆和棧(stm32 Heap & Stack)【worldsing筆記】

關於堆和棧已經是程序員的一個月經話題,大部分有是基於os層來聊的。 那麼,在赤裸裸的單片機下的堆和棧是什麼樣的分佈呢?以下是網摘: 剛接手STM32時,你只編寫一個 int main() { while(1); } BUI

原创 漫談C變量——對齊

談起變量的訪問(Access)就不得不談到對齊(Alignment)的概念;談論對齊,離開具體的計算機架構又會顯得缺乏支撐,如同談論空中樓閣一般。今天我們就以筆者熟悉的Cortex-M架構爲藍本,聊一聊變量訪問的對齊問題。   1. Wh

原创 sizeof使用

1. 定義: sizeof是何方神聖sizeof乃C/C++中的一個操作符(operator)是也,簡單的說其作用就是返回一個對象或者類型所佔的內存字節數。MSDN上的解釋爲:The sizeof keyword gives the a

原创 STM32從Flash地址0x08000000的啓動重映射

在初寫STM32程序時,遇到一個困惑,STM32的Flash在MDK裏被設置爲起始地址0x0800 0000,而CM3手冊規定芯片復位時要從0x0000 0000地址開始取出中斷向量 ,那STM32怎麼樣執行代碼呢?地址重映射?或者在0

原创 C/C++不同文件夾下包含頭文件的方法及#include的使用

本文主要介紹瞭如何不同文件夾下使用預處理器指示符#include。假設我們有如下一個工程,其中包含了幾個源代碼文件和頭文件。其中main.c是主源代碼文件,裏面包含main函數。在base中包含:func3.h,func3.c,文件夾ma

原创 SST25VF080B SPI接口FLASH STM32驅動

所有的FLASHA 都一樣只能從1變0,要想從0變1 只有擦除一個頁扇, SST25VF080B 最小可以擦除4KB的頁 速度也不錯 50MHz 容量1MB 挺夠用的 10萬次的擦寫壽命。最低2.7V 就可正常工作。 Flexibl

原创 進入OS前的兩步之PendSV(任務切換)

先了解下如何使用PendSV異常。(爲何要使用PendSV而不是其他的異常,請參考《cortex-M3權威指南》) 1,如何設定PendSV優先級? NVIC_SYSPRI14 EQU 0xE000ED22 NVIC_PEND

原创 Violate的應用和作用

 以前也是知道violate 的作用,是可變的意思,因爲變量可能發生意想不到的變化,用到的時候一定要用最新的數據,   因爲很多編譯器在編譯程序的過程是對程序進行優化,以提高運行效率,這就可能出現這樣的情況,用的到變量值不是最新的,而

原创 更改函數的返回地址

這是網絡安全老師佈置的實驗,覺得是大學以來做過的最有意思的一個實驗。 Task Description: C語言編寫程序,包含一個函數,改變函數的返回地址,使函數返回後跳轉到某個指定的指令位置,而不是函數調用後緊跟的位置。 先

原创 程序是如何執行的(三)函數調用

一、局部變量與全局變量   函數中出現的變量可以分爲局部變量和全局變量,在函數內部定義的變量(沒有global語句)就是局部變量,只有在函數內部才能夠使用它們。在函數外定義的變量就是全局變量 全局變量的作用是增加了函數間數據聯繫的渠

原创 什麼是Data Consistency?

什麼是Data Consistency? 吃完飯後不刷牙 Vehicle攻城獅 3月25日 導文 熟悉“吃完飯後不刷牙”的小夥伴,我這裏應該不需要做過多介紹了,還不熟悉的速速將“汽車ECU設計”的公衆號和“汽車控制器”的知乎專欄關注起來。

原创 編寫優質嵌入式C程序

前言:這是一年前我爲公司內部寫的一個文檔,旨在向年輕的嵌入式軟件工程師們介紹如何在裸機環境下編寫優質嵌入式C程序。感覺是有一定的參考價值,所以拿出來分享,拋磚引玉。 轉載請註明出處:http://blog.csdn.net/zhzh