Keil 編譯成功後會在 Build Output 事窗出現一條訊息:
Program Size: Code=5124 RO-data=696 RW-data=92 ZI-data=22316
這條訊息可以計算出所使用的 Code Size 。
Code:程式碼所佔的大小。
RO-data :程式中定義的常量 (Read Only)
RW-data:程式中有初始值的變數 (Read/Write)
ZI-data :程式中沒初始值的變數 (Zero Initialize)
Code、RO-data、RW-data:這三個類型內容不可因斷電資料就消失,所以需要存在ROM裡。
RW-data、ZI-data:這兩個類型變數需在程式執行時可隨時改變用於計算,所以需在程式執行時放置在RAM裡。
所以:
ROM (Flash) Size = Code + RO-data + RW-data。
RAM Size = RW-data + ZI-data。
2014年1月13日
2014年1月7日
CAN Bus 筆記 (for STM32) - 文章撰寫中
★CAN協定:
1. Protocol:
2. 訊號狀態:
1. Protocol:
CAN 2.0A |
CAN 2.0B |
2. 訊號狀態:
閒置:TX電位H、隱性電平、雙線電壓差0V。
通訊:TX電位L、顯性電平、雙線電壓差2V以上。
3.優先權比較:
當RX偵測到 L 則轉為監聽模式,直到該筆送完。
仲裁優先權: ID越小優先權越高。
防碰撞檢測方式: CSMA/CD
3.優先權比較:
當RX偵測到 L 則轉為監聽模式,直到該筆送完。
仲裁優先權: ID越小優先權越高。
防碰撞檢測方式: CSMA/CD
4.Message Type : (參考2-P17)
i.Data Frame: 傳送資料。
ii.Remote Transmit Request Frame: 要求資料。
iii.Error Frame: 送出錯誤檢查。
iv.Overload Frame: 要求下筆資料需要延遲。
v. Inter frame Space: 間距 (參考4)
5.傳輸速率與距離:
Bit Rate(Kbit/S) Bus Length(M)
1000 30
500 100
250 250
125 500
62.5 1000
5 10000
i.Data Frame: 傳送資料。
ii.Remote Transmit Request Frame: 要求資料。
iii.Error Frame: 送出錯誤檢查。
iv.Overload Frame: 要求下筆資料需要延遲。
v. Inter frame Space: 間距 (參考4)
5.傳輸速率與距離:
Bit Rate(Kbit/S) Bus Length(M)
1000 30
500 100
250 250
125 500
62.5 1000
5 10000
位置:
台灣
訂閱:
文章 (Atom)