STM8學習筆記 如何在程式中確定暫存器名稱

2021-09-26 03:36:49 字數 1461 閱讀 3646

在剛開始寫程式的時候,在程式中需要設定暫存器的時候,往往不知道暫存器名稱怎麼寫才是對的,這時候可以通過標頭檔案來檢視暫存器是如何呼叫的。在開啟乙個iar工程檔案,開啟main.c檔案,然後再引用的標頭檔案上單擊滑鼠右鍵,選擇open "iostm8s003f3.h"開啟所引用的標頭檔案。

假如我們要設定pb5口輸出0,首先在stm8中文參考手冊中找到gpio輸出暫存器

我們要設定的是pb_odr暫存器,這時在開啟的iostm8s003f3.**件中按下ctrl+f按鈕,然後輸入pb_odr,點find next

這時候就會定位到pb_odr暫存器巨集定義位置處

這塊列出了關於pb_odr相關的所有定義,可以看到pb5的位定義

#define pb_odr_odr5 pb_odr_bit.odr5

我們可以直接呼叫 pb_odr_odr5 對pb5口進行操作,

pb_odr_odr5 = 0;就是設定pb5口輸出低電平。

當然也可以採用傳統的對pb口整體賦值

pb_ddr |= ( 1 << 5 ); 設定pb5口輸出高電平。

為什麼可以直接對pb5口進行位操作呢,因為在標頭檔案中,官方已經定義好了關於pb口位操作的結構體。

這樣通過檢視標頭檔案,就能很清楚的直到,關於微控制器的暫存器如何呼叫。

STM8學習筆記 ADC多通道取樣

stm8s003微控制器adc取樣通道總共有5個,從ain2 ain6,多通道取樣時需要將adc轉換設定為單次轉換模式,每次切換取樣通道後,需要重新初始化 adc,取樣結果在中斷中讀取。io口初始化 ad通道引腳初始化 void adc gpio init void 將adc的io口都設定為輸入模式...

STM8學習筆記 uart1串列埠中斷

uart1串列埠傳送 接收中斷。目標 串列埠接收1,點亮led1,接收2點亮led2,接收到其他字元關閉led1和led2。步驟如下 1 編寫led.h和led.c檔案。略 2 編寫uart.h和uart.c檔案,其中串列埠配置函式如下 void usart configuration void 串...

STM8學習筆記 定時器 TIM2功能實現

stm8的tim2 tim3 tim5是16位通用暫存器,他們的操作方法一樣。主要功能如下 相關暫存器如下 如果只用到定時功能的話,需要用到的暫存器有自動裝載暫存器arr 預分頻暫存器pscr 事件產生暫存器egr 狀態暫存器sr 控制暫存器cr 中斷使能暫存器ier。此處用tim2實驗,定時器2初...