什麼是架構?
程式架構其實就類似一個檔案大綱或者模闆。因為寫程式就和類似于寫文章,如果沒有大綱或者模闆那麼你寫起來就會比較費勁。一個好的架構,能事半功倍,節約時間,減少錯誤。
嵌入式系統組成
嵌入式控制系統基本都是由“main:while(1)”和“中斷服務”組成。
main任務:指對時間響應要求不高或者說是那種周期性執行的任務;
中斷任務:指對時間響應要求高,必須立刻處理的任務
本套架構将采用RTX_OS,這是ARM公司研發的OS,效率高,使用便捷。
RTX系統可以實作零中斷延時,也就是跟裸機情況是一樣的。
RTX5安全認證
RTX5的汽車級,工業級,醫療和鐵路安全認證已經通過:
- ISO 26262 (ASIL D) 汽車級最高安全認證
- IEC 61508 (SIL 3) 工業級認證
- IEC 62304 (Class C) 醫療認證
- EN 50128 (SIL 4) 運輸/鐵路安全認證
- Cortex-M0/M0+
- Cortex-M3
- Cortex-M4
- Cortex-M7
嵌入式系統實作
- 中斷發送信号,線程接收信号并處理
- 利用軟定時器節約硬體資源
- 采用注冊回調函數的方式,實作功能與業務分層。
├─app
│ ├─app_key
│ ├─app_adc
│ ├─app_led
│ ├─app_power
│ ├─app_temp_control
│ └─app_soft_voltameter
├─lib
│ ├─x_strtok
│ ├─str_hex
│ └─crc16
├─bsp
│ ├─cx32l003
│ └─nrf52
├─os
│ ├─rtx
│ └─rtx5
├─sys
│ ├─cx32f0
│ └─nrf52
├─drivers
│ ├─include
│ └─g_sensor
│ └─adxl34x
├─project
│ ├─bt_ant_code_table
│ ├─bt_speaker
│ ├─bike_lamp
│ │ ├─head_tail_lamp
│ │ │ ├─cx32_RX1500
│ │ │ │ └─business
│ │ └─public_code
│ │ ├─cx32_bootload
│ │ │ └─boot
│ │ ├─biz_ldr
│ │ ├─biz_power
│ │ ├─biz_temp
│ │ ├─biz_uart
│ │ ├─check_uid
│ │ └─comm_uart
├─chip
│ ├─CX32L003_SDK
│ └─nRF5_SDK_17.0.2_d674dde
├─tool
│ ├─xBin2Dfu
│ ├─xAudioTool
│ │ ├─.vscode
│ │ ├─res
│ │ ├─src
│ │ └─ui
│ ├─LiSunTool
├─platform
│ ├─log
│ │ ├─cx32f0
│ │ └─nrf52
│ └─at_comm
│ └─cx32f0
├─protocol_stack
└─protocol