---
# System prepended metadata

title: ECU_AD量測手法
tags: [ECU, AD]

---

###### tags: `ECU` `AD`
# ECU_AD量測手法

關於AD轉換的測試手法
Freescale 的這顆MCU, AD轉換的解析為12bit, 最大解析值為4095

所以分為3個步驟來測試:

### 第1步:

ＶＢ程式先讀取Ｄ／Ａ設定值, 然後經由測試器輸出電壓, ECU擷取電壓轉換為A／D值, 比對兩者是否一致

| ＶＢ＿ＰＲＧ | 測試器　—＞ | ＥＣＵ |
| -------- | -------- | -------- |
| Ｄ／Ａ值    | 電壓     |  Ａ／Ｄ值     |




```sequence
Note left of VB: VB開始驗證 ->
Note over VB: 取值D/A設定值
VB->Tester: 設定電壓
Note over Tester: 經由MCP4728
Tester->ECU: 送出電壓
Note over VB,ECU: Delay
Note over ECU: 取值, 累加, 平圴
Note over ECU: A/D取得
Note right of ECU: ECU取得電壓值
Note right of ECU: ECU取樣機能驗證

ECU-->VB: ECU傳回A/D轉換值
Note over VB: 比對是否正確
Note left of VB: VB完成驗證 <-
```



```sequence
Note left of VB: VB開始驗證 ->
Note over VB: 取值D/A設定值
VB->Tester: 設定電壓
Note over Tester: 經由MCP4728
Tester->ECU: 送出電壓
Note over VB,ECU: Delay
Note over ECU: 取值, 累加, 平圴
Note over ECU: A/D取得
Note right of ECU: ECU取得電壓值
Note right of ECU: ECU取樣機能驗證

ECU-->VB: ECU傳回A/D轉換值
Note over VB: 比對是否正確
Note left of VB: VB完成驗證 <-
```
確認ＥＣＵ的　Ａ／Ｄ　取樣的機能是正確的。

### 第2步:
ＶＢ程式先讀取Ｄ／Ａ設定值, 然後經由測試器輸出電壓, ECU擷取電壓轉換為A／D值, 再轉換為溫度，比對兩者是否一致






| ＶＢ＿ＰＲＧ | 測試器　—＞ | ＥＣＵ |
| -------- | -------- | -------- |
| 溫度值 ->B_Const計算    |  電壓     |  Ａ／Ｄ值　—＞溫度　     |


```sequence
Note left of VB: VB開始驗證 ->
Note over VB: 讀取 [ 溫度 ] 設定值
Note over VB: B定數求阻抗&分壓
VB->Tester: 設定電壓
Note over Tester: 經由MCP4728
Tester->ECU: 送出電壓
Note over VB,ECU: Delay
Note over ECU: 取值, 累加, 平圴
Note right of ECU: ECU取得電壓值
Note right of ECU: ECU電壓值查表轉溫度

ECU-->VB: ECU傳回 [溫度]
Note over VB: 比對是否正確
Note left of VB: VB完成驗證 <-
```

**確認ＥＣＵ的　Ａ／Ｄ　查表轉換［溫度］的機能是正確的。**






### 第３步:
ＶＢ程式先讀取［Ｄ／Ａ設定值］, 然後經由測試器輸出電壓, ECU擷取電壓轉換為A／D值, 再轉換為［壓力］，比對兩者是否一致


| ＶＢ＿ＰＲＧ | 測試器　—＞ | ＥＣＵ |
| -------- | -------- | -------- |
| 壓力值 ->斜率轉換   | 電壓     |  Ａ／Ｄ值　—＞壓力　     |

```sequence
Note left of VB: VB開始驗證 ->
Note over VB: 讀取 [ 壓力 ] 設定值
Note over VB: 壓力to電壓斜率轉換
VB->Tester: 設定電壓
Note over Tester: 經由MCP4728
Tester->ECU: 送出電壓
Note over VB,ECU: Delay
Note over ECU: 取值, 累加, 平圴
Note right of ECU: ECU取得電壓值
Note right of ECU: 電壓to壓力斜率轉換

ECU-->VB: ECU傳回 [壓力]
Note over VB: 比對是否正確
Note left of VB: VB完成驗證 <-
```

**確認ＥＣＵ的　Ａ／Ｄ　轉換　［壓力值］的機能是正確的。**


---


# AD変換に関するテスト手法
FreescaleのこのMCUでは,AD変換の解析は12bit,最大解析値は4095である

3つのステップに分けてテストします

## ステップ1:
VBプログラムはD / A設定値を読み込み、テスタを介して電圧を出力し、ECUは電圧を取り、両者が一致するかどうかを比較する

| ＶＢ＿ＰＲＧ | 測試器　—＞ | ＥＣＵ |
| -------- | -------- | -------- |
| Ｄ／Ａ值    | 電壓     |  Ａ／Ｄ值     |




```sequence
Note left of VB: VB開始驗證 ->
Note over VB: 取值D/A設定值
VB->Tester: 設定電壓
Note over Tester: 經由MCP4728
Tester->ECU: 送出電壓
Note over VB,ECU: Delay
Note over ECU: 取值, 累加, 平圴
Note right of ECU: ECU取得電壓值
Note right of ECU: ECU取樣機能驗證

ECU-->VB: ECU傳回A/D轉換值
Note over VB: 比對是否正確
Note left of VB: VB完成驗證 <-
```


ECUのA / Dサンプリングの機能が正しいことを確認する。


## ステップ2:
VBプログラムはD / A設定値を読み込み、テスタを介して電圧を出力し、ECUは電圧を取り込みA / D値に変換し、さらに温度に変換して両者が一致するかどうかを調べる

| ＶＢ＿ＰＲＧ | 測試器　—＞ | ＥＣＵ |
| -------- | -------- | -------- |
| 溫度值 ->B_Const計算    |  電壓     |  Ａ／Ｄ值　—＞溫度　     |


```sequence
Note left of VB: VB開始驗證 ->
Note over VB: 讀取 [ 溫度 ] 設定值
Note over VB: B定數求阻抗&分壓
VB->Tester: 設定電壓
Note over Tester: 經由MCP4728
Tester->ECU: 送出電壓
Note over VB,ECU: Delay
Note over ECU: 取值, 累加, 平圴
Note right of ECU: ECU取得電壓值
Note right of ECU: ECU電壓值查表轉溫度

ECU-->VB: ECU傳回 [溫度]
Note over VB: 比對是否正確
Note left of VB: VB完成驗證 <-
```

ECUのA / Dルックアップテーブル[温度]の機能が正しいことを確認する


## ステップ３:
VBプログラムは最初に[D / A設定値]を読み込み、それからテスタを介して電圧を出力し、ECUは電圧を取り、A / D値に変換し、更に[圧力]に変換し、両者が一致するかどうかを比較する

| ＶＢ＿ＰＲＧ | 測試器　—＞ | ＥＣＵ |
| -------- | -------- | -------- |
| 壓力值 ->斜率轉換   | 電壓     |  Ａ／Ｄ值　—＞壓力　     |

```sequence
Note left of VB: VB開始驗證 ->
Note over VB: 讀取 [ 壓力 ] 設定值
Note over VB: 壓力to電壓斜率轉換
VB->Tester: 設定電壓
Note over Tester: 經由MCP4728
Tester->ECU: 送出電壓
Note over VB,ECU: Delay
Note over ECU: 取值, 累加, 平圴
Note right of ECU: ECU取得電壓值
Note right of ECU: 電壓to壓力斜率轉換

ECU-->VB: ECU傳回 [壓力]
Note over VB: 比對是否正確
Note left of VB: VB完成驗證 <-
```

ECUのA / D変換[圧力値]の機能が正しいことを確認する





