原创 關於keil編譯報sct(7): error: L6236E: No section matches selector - no section to be FIRST/LA處理方法

當keil 編譯出現sct(7): error: L6236E: No section matches selector - no section to be FIRST/LA 是由於沒有加啓動文件,雙擊左邊工程框的文件夾,添加Star

原创 庫函數開發與寄存器開發

在以前 8 位機時代的程序開發中,一般直接配置芯片的寄存器,控制芯片的工作方式,如中斷,定時器等。配置的時候,常常要查閱寄存器表,看用到哪些配置位,爲了配置某功能,該置 1還是置 0。這些都是很瑣碎的、機械的工作,因爲 8位機的軟件相對來

原创 C語言中關鍵字 volatile

1、volatile       volatile關鍵字在c語言中用於表示變量是易變的,告訴編譯器不緩存該變量,也就是每次訪問改變量都要去內存訪問,不會訪問該變量在緩存中的副本,也就是CPU的一級二級三級等等緩存,改變的時候也是直接寫回內

原创 STM32F429IGT6寄存器映射點亮LED燈

  原理圖如下(以PH10引腳的連接的LED燈爲例) 我們只需要給PH10引腳一個低電平,那麼LED即可點亮。 內部GPIO原理圖如圖所示,紅色箭頭即爲GPIO輸出方向,只要給置位/復位寄存器寫數據數據就會傳到輸出數據寄存器(或者直接給

原创 關於keil5警告last line of file ends without a newline解決辦法

在keil進行編譯的過程中總會出現 warning:  #1-D: last line of file ends without a newline 解決的辦法是:雙擊編譯結果的警告,會跳到程序警告出現地方,然後將光標移至程序的最後的位置

原创 關於Keil5編譯成功但是會有紅叉的問題

很多人在用keil5時編譯項目無錯誤無警告但是程序右邊會出現紅色叉號,如下圖所示 這是因爲keil新增的同步查錯功能,想要關閉的方法是:  Edit - Configurations - Text Completion- Dynamic

原创 FLASH、EEPROM、ROM、RAM、DRAM、SRAM簡介

Flash memory 指的是“閃存”,所謂“閃存”,它也是一種非易失性的內存,屬於EEPROM 的改進產品。它的最大特點是必須按塊(Block)擦除(每個區塊的大小不定,不同廠家的產品 有不同的規格), 而EEPROM 則可以一次只擦

原创 STM32仿真器下載配置

我所使用的仿真器爲 Fire-Debugger,支持ARM公司的 CMSIS-DAP 標準如下圖所示。 我們把仿真器與開發板連接和電腦連接,然後給開發板上電,接下就可以通過keil軟件來給開發板燒寫程序。連接示意圖如下圖所示。 連接好

原创 51單片機 定時器及其應用

89c51單片機內部有兩個16位的定時/計數器,即定時器T0和定時器T1,單片機的定時功能其實就是通過計數來實現的,當單片機每一個機器週期產生一個脈衝時,計數器就加一。定時器的應用涉及到中斷方面的知識,可以先了解中斷的概念再來看定時器 如

原创 51單片機數字鐘

51單片機數碼管硬件接口如下圖所示 四個共陽極數碼管,P20~P23是通過四個PNP三極管來控制數碼管的位選,當給對應位選端低電平時,三極管導通,即對應位的數碼管工作,P0是控制數碼管的 段選(四個數碼管並聯)。我以前的博客裏有寫到過數

原创 自增,自減運算符,求餘運算符,複合的賦值運算符

1、自增、自減運算符作用是使變量的值加1或者減1,例如:++i,--i (自增,自減運算符在變量之前的,先使i的值加(減)1)i++,i--(自增,自減運算符在變量之後的,先使用變量i,之後再使i的值加(減)1)例如int i = 4;一

原创 結構體

一、  結構體類型    由於數組中只能存放同一類型的數據,所以c語言就規定把一些具有內在聯繫的不同數據類型的數據組合起來形成組合型的數據結構稱爲結構體。     聲明一個結構體類型的一般形式爲      struct   結構體名   

原创 串口通訊UART

1、串行通信的的基本知識 在實際的工業生產,或者生活中,計算機的CPU要與外部的設備之間進行信息的交流,數據的交換,所有的這些信息交換均可稱爲通信。 通信的方式有兩種,分別爲串行通信和並行通信。我們通常根據實際信息傳輸的距離還決定採用哪種

原创 開漏輸出、推輓輸出

摘自:http://www.cnblogs.com/ne-zha/p/7422302.html 1、開漏輸出 開漏輸出只能輸出低電平,類似於三極管的集電極,要輸出高電平需要上拉電阻才能輸出 我們先來說說集電極開路輸出的結構。集電極開路輸出

原创 c語言中中不同類型數據間的混合運算

      在程序中經常會遇到不同類型的數據進行運算,如果一個運算符兩側的數據類型不同,則會先自動進行數據類型轉換,使運算符兩側的數據類型相同,然後再進行運算,因此整型、實型、字符型數據間都可以進行混合運算     規律爲: