亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码
標(biāo)題:
STC 單片機(jī) 完整工程文件分類
[打印本頁]
作者:
xayh000
時間:
2026-5-7 08:03
標(biāo)題:
STC 單片機(jī) 完整工程文件分類
STC 單片機(jī) 完整工程文件分類
分三大類:外設(shè)功能文件、算法工具文件、程序流程結(jié)構(gòu)文件
給你按做項目標(biāo)準(zhǔn)結(jié)構(gòu)整理,跟你寫 T12、溫控、工控程序完全對上。
一、外設(shè)功能文件(底層硬件驅(qū)動)
只管硬件干活,不負(fù)責(zé)業(yè)務(wù)邏輯
gpio.c / gpio.h IO 口初始化、高低電平
timer.c / timer.h 定時器、中斷、定時周期
delay.c / delay.h 毫秒、微秒延時
uart.c / uart.h 串口收發(fā)、打印調(diào)試
adc.c / adc.h 模數(shù)采集、電壓溫度讀取
pwm.c / pwm.h 呼吸燈、加熱 PWM、電機(jī)調(diào)速
key.c / key.h 獨(dú)立按鍵、矩陣按鍵、長按短按
i2c.c / spi.c 通信總線(OLED、傳感器)
iap.c / eeprom.c 內(nèi)部 Flash 掉電保存參數(shù)
wdt.c 看門狗復(fù)位
二、算法 & 工具文件(計算、處理、通用函數(shù))
只管計算、濾波、數(shù)學(xué),不管硬件
pid.c / pid.h 位置式 / 增量式 PID(焊臺溫控核心)
filter.c / filter.h 均值濾波、滑動濾波、中值濾波(ADC 去抖動)
math.c / math.h 限幅、取絕對值、插值、歸一化
crc.c CRC 校驗(串口通信)
string.c 數(shù)字轉(zhuǎn)字符串、格式拼接
oled.c / lcd.c 屏幕驅(qū)動 + 數(shù)字顯示
三、程序流程結(jié)構(gòu)文件(整個項目骨架)
管運(yùn)行順序、狀態(tài)邏輯、業(yè)務(wù)流程,這就是你要的「流程結(jié)構(gòu)文件」
1. main.c / main.h
程序入口總骨架
所有模塊初始化順序
大 while 死循環(huán)主流程
總調(diào)度:按鍵→采樣→算法→控制→顯示
2. system.c / system.h
系統(tǒng)初始化框架
系統(tǒng)時鐘配置
所有外設(shè)統(tǒng)一初始化
全局變量初始化、標(biāo)志位初始化
中斷分組、IO 模式統(tǒng)一配置
3. task.c / task.h
任務(wù)調(diào)度文件
前后臺架構(gòu)、時間片輪詢
1ms 任務(wù)、10ms 任務(wù)、100ms 任務(wù)
定時執(zhí)行:測溫、PID、掃描按鍵、刷新顯示、休眠檢測
不用全程死卡 while,按時間分片跑流程
4. menu.c / menu.h
菜單流程文件
界面切換、參數(shù)加減、光標(biāo)移動
菜單狀態(tài)機(jī)邏輯
5. setting.c / setting.h
參數(shù)配置流程
默認(rèn)參數(shù)初始化
參數(shù)保存到 Flash、開機(jī)讀取
溫度默認(rèn)值、PID 參數(shù)、休眠時間等
6. state.c / state.h
狀態(tài)機(jī)流程文件
焊臺常用 4 大狀態(tài):
待機(jī) → 升溫 → 恒溫 → 休眠 → 關(guān)機(jī)
用狀態(tài)機(jī)管理整個工作流程,不亂套
7. interrupt.c
中斷服務(wù)匯總文件
定時器中斷、串口中斷、外部中斷
把所有中斷統(tǒng)一放這里,結(jié)構(gòu)清晰
四、標(biāo)準(zhǔn)工程整體流程結(jié)構(gòu)(從上到下)
system.c 系統(tǒng)時鐘 + 全部硬件初始化
main.c 進(jìn)入主循環(huán)
task.c 按時間輪詢調(diào)度各個任務(wù)
調(diào)用:adc 采樣 → filter 濾波 → pid 計算 → pwm 輸出
menu.c 按鍵觸發(fā)菜單跳轉(zhuǎn)
setting.c 讀寫保存參數(shù)
state.c 切換工作狀態(tài)
五、極簡一句話區(qū)分
功能文件:只管硬件
算法文件:只管計算
流程結(jié)構(gòu)文件:管先做什么、后做什么、什么時候做、狀態(tài)怎么切
我可以給你搭一個 STC 標(biāo)準(zhǔn)空白工程目錄結(jié)構(gòu),文件夾分層、每個文件作用寫好,你直接照著新建工程就能用
STC 單片機(jī) 標(biāo)準(zhǔn)工程完整目錄結(jié)構(gòu)(直接照搬就能用)
適配 STC15/STC32/STC8,做焊臺、溫控、工控、按鍵菜單都通用,分層干凈、條理清晰。
一、整體文件夾架構(gòu)
Project├── App 【程序流程/業(yè)務(wù)邏輯層】├── Driver 【硬件外設(shè)驅(qū)動層】├── Algorithm 【算法數(shù)學(xué)工具層】├── Common 【通用基礎(chǔ)層】├── User 【用戶配置/參數(shù)層】└── main.c 程序入口
二、每層文件清單 + 每個文件作用
1. App 程序流程結(jié)構(gòu)文件(骨架、業(yè)務(wù)、任務(wù)、狀態(tài))
app_task.c/h 任務(wù)調(diào)度:1ms/10ms/100ms 定時輪詢
app_state.c/h 狀態(tài)機(jī):待機(jī) / 升溫 / 恒溫 / 休眠 / 關(guān)機(jī)
app_menu.c/h 菜單界面、光標(biāo)、參數(shù)切換
app_control.c/h 總控制邏輯:測溫→PID→PWM 輸出總流程
2. Driver 硬件功能驅(qū)動文件(底層外設(shè))
drv_gpio.c/h IO 初始化、高低電平
drv_timer.c/h 定時器、定時中斷
drv_uart.c/h 串口收發(fā)、打印調(diào)試
drv_adc.c/h ADC 采集、溫度電壓讀取
drv_pwm.c/h PWM 生成、占空比調(diào)節(jié)
drv_key.c/h 按鍵掃描、長短按
drv_i2c.c/h I2C 總線(OLED / 傳感器)
drv_oled.c/h OLED 屏幕驅(qū)動
drv_eeprom.c/h 內(nèi)部 Flash 參數(shù)保存
drv_delay.c/h 延時函數(shù)
3. Algorithm 算法 & 工具文件(計算、濾波、PID)
algo_pid.c/h 增量 / 位置式 PID(溫控核心)
algo_filter.c/h 均值、滑動、中值濾波(ADC 去噪)
algo_math.c/h 限幅、插值、絕對值、數(shù)據(jù)換算
algo_crc.c/h CRC 校驗
algo_string.c/h 數(shù)字轉(zhuǎn)字符串、格式化
4. Common 通用基礎(chǔ)
common.h 全局類型定義、宏定義、常用頭文件匯總
system_init.c/h 系統(tǒng)總初始化:時鐘 + 所有外設(shè)一鍵初始化
interrupt.c/h 所有中斷服務(wù)函數(shù)統(tǒng)一放這里
5. User 用戶配置
user_setting.c/h 默認(rèn)參數(shù)、PID 參數(shù)、休眠時間、出廠設(shè)置
user_config.h 全局宏配置:屏幕大小、溫度上限、PWM 周期
三、標(biāo)準(zhǔn)程序運(yùn)行流程(固定套路)
main.c 入口
調(diào)用 system_init() 系統(tǒng)全部初始化
進(jìn)入 while (1) 主循環(huán)
調(diào)用 app_task() 時間片輪詢調(diào)度
任務(wù)里依次跑:
按鍵掃描
ADC 測溫 + 濾波
PID 運(yùn)算
PWM 加熱輸出
OLED 顯示刷新
休眠 / 狀態(tài)判斷
參數(shù)保存讀取
四、三種文件一句話區(qū)分
Driver 驅(qū)動文件:只管硬件干活(定時器、ADC、串口)
Algorithm 算法文件:只管數(shù)學(xué)計算(PID、濾波、換算)
App 流程結(jié)構(gòu)文件:管先做啥、后做啥、什么時候做、狀態(tài)怎么切
作者:
lgwd
時間:
2026-5-14 15:41
51單片機(jī)原本很簡單的東西被你這么規(guī)劃,簡單的東西搞復(fù)雜了!初學(xué)者弄糊涂了,熟練者不會理會!
作者:
zxcscm
時間:
2026-5-14 18:46
AI搞的文章,甚至都能看出來是豆包的語氣
作者:
qq740980764
時間:
2026-5-15 21:46
AI搞的文章,甚至都能看出來是豆包的語氣
作者:
偶爾不開心
時間:
2026-5-16 08:04
lgwd 發(fā)表于 2026-5-14 15:41
51單片機(jī)原本很簡單的東西被你這么規(guī)劃,簡單的東西搞復(fù)雜了!初學(xué)者弄糊涂了,熟練者不會理會!
如果你在正規(guī)公司干過 就不會這么說了
作者:
流浪的魚
時間:
2026-5-16 16:22
挺好的,就是怎么沒有給出模板,令人無奈遺憾
作者:
lgwd
時間:
2026-5-16 19:17
你在哪個正規(guī)公司干過?說出來讓大家羨慕一下?
作者:
joyb
時間:
2026-5-17 14:07
給個模板學(xué)習(xí)一下
作者:
xayh000
時間:
2026-5-23 12:22
經(jīng)過學(xué)習(xí)了解,才能問出這樣的答案
作者:
xayh000
時間:
2026-5-23 13:00
網(wǎng)上大多老師教的是各種驅(qū)動和算法,而我們就要把這些驅(qū)動用參數(shù)傳遞通過定時輪詢狀態(tài)機(jī)組裝成工程
歡迎光臨 (http://www.denmoz.com/bbs/)
Powered by Discuz! X3.1