本程式對應的開發板為藍橋杯嵌入式開發板stm32f103rbt6,為中型mcu。本程式用tim1通道2(pa9)輸出1khz、占空比為25%的矩形波,並用tim2(pa1)測量矩形波週期和脈衝寬度。
初始化程式
//tim1通道2(pa9)輸出矩形波初始化子程式 頻率1khz,(72000000/(999+1)*(71+1))占空比25% (249+1)/(999+1)
void tim1_ocinit(void)
//tim2通道2(pa1)測量矩形波週期和脈衝寬度初始化子程式
void tim2_icinit(void)
捕獲程式
//tim2測量方波週期和脈衝處理子程式
unsigned char tim2_cap(unsigned int* puitim_val)
return 0;
}
顯示函式
void tim_proc(void)
}
滴答定時器
void systick_handler(void)
}
主程式
#include "stm32f10x.h"
#include "lcd.h"
#include "stdio.h"
u32 timingdelay = 0;
void delay_ms(u32 ntime);
void tim1_ocinit(void);
void tim2_icinit(void);
unsigned char tim2_cap(unsigned int* puitim_val);
void tim_proc(void);
unsigned long ultick_ms=0;
unsigned char ucsec=0,ucsec1=0;
unsigned int uitim_val[2];
u8 string[20];
int main(void)
}void delay_ms(u32 ntime)
輸入與輸出
在c 程式中,輸入與輸出可以看做是一連串的資料流,輸入即可視為從檔案或鍵盤中輸入程式中的一串資料流,而輸出則可以視為從程式中輸出一連串的資料流到顯示屏或檔案中。在編寫c 程式時,如果需要使用輸入輸出時,則需要包含標頭檔案 在 中定義了用於輸入輸出的物件,例如常見的 cin 表示標準輸入 cout 表...
輸入與輸出
2.文字輸入與輸出 3.讀寫二進位制資料 4.zip文件 物件序列化 反序列化 操作檔案 記憶體對映檔案 輸入流 輸出流 inputstream outputstream read write int b 均為阻塞方法 應該被正確關閉。注意 close flush 均會沖刷輸出流的緩衝區,如果不正確...
STM32學習筆記詳解 輸出比較與輸入捕獲
針對stm32f103rc學習過程中遇到的較為複雜 難以理解的地方,此處對其進行詳細分析,以避免學習筆記中容易出錯 混淆 看不懂的地方 基於正點原子alientekmini版,由於其手冊對於部分模組的講解有些模糊,此處記錄一些個人理解,便於日後重溫 輸出比較是對於已有的訊號,自定義要求,當計數器滿足...