Commit Graph

115 Commits

Author SHA1 Message Date
Roy_01 dfaed7fc5a fix: "DEF_PULSE_E_LOAD_01" replaced with "DEF_PULSE_E_LOAD_10" 2024-05-27 18:01:34 +08:00
Roy_01 aaaa331bcb fix: 1.Measure OUT=L、Measure OUT=H是不同relay, Anode, Cathode 的訊號
2.更改dev mode指令:
0x60: 打pulse+設定阻值+ADC讀ouput_r1/r2/vo/vc/ve
0x61: 把ouput_r1/r2/vo/vc/ve 傳給 central
0xF0: pel io init
0xF1: start/stop testing output pin task
2024-05-24 13:37:31 +08:00
chain40 17f3120ed9 fix: 修改 pel10_io_init() 命名, 並將 elite_board_init() 改為 pel10_io_init() 減少藕合 2024-05-22 19:55:22 +08:00
Roy_01 2d7dbb6b4a fix: 1. pel_pins are low when pel init
2. 選定Input檔位 = high
3. 新增 0x3000FF08 = elite_board_init()
2024-05-22 17:55:58 +08:00
Roy_01 1a39199666 feat: new dev_mode:
0x3000FF06 is create test_gpio_task task
0x3000FF07 is delete test_gpio_task task
2024-05-22 13:15:10 +08:00
Roy_01 1beb237590 fix: updated CATHODE_PIN pin number 2024-05-22 11:32:59 +08:00
chain40 316f00c8f9 test: 暫用 edc 名稱及版號, 讓 pi 可以識別 2024-05-21 21:39:58 +08:00
chain40 f4cb22f436 feat: undefine CONFIG_GPIO_AS_PINRESET 2024-05-21 21:39:25 +08:00
chain40 5892bffd3c feat: 支援 Pulse-E-Load 1.0 初版
1. 實作 Dev mode
2. 實作 cis_version
3. ADC_DRV 新增 adc_read_mutiple_channels()/adc_read_mutiple_channels_ex(), 連續轉換多個 ADC channel

備註: 目前設定使用 adc_read_mutiple_channels()/adc_read_mutiple_channels_ex() 每筆 ADC 需要 sample 40us
2024-05-21 21:36:36 +08:00
chain40 24df573e7c fix: 修正回傳 data char 的資料時, 需要前䮕加上資料長度欄位
1. 如果要傳送的資料長度小於 20 bytes 請補 0 湊滿 20 bytes (pi 相容性)
2024-05-21 21:21:15 +08:00
chain40 306177a647 bugfix: 每次收到指令要寫入 data char 2024-05-21 21:20:34 +08:00
chain40 46ce36d71c feat: 專案整理及架構調整, 使用 #define 致能/禁用各功能 2024-05-21 21:20:29 +08:00
chain40 a4e6d59996 feat: ignore *.zip 2024-05-01 21:53:54 +08:00
Roy_01 643d3230a1 modify:
1. elite init setting add: adc_gain use GAIN_3P000
2. [test] adc read AIN2 only
3. ads8691 read twice
2024-04-26 14:54:54 +08:00
Roy_01 0ce9377eb1 modify:
1. update dev_mode_circuit_selection function
2. elite init setting: circuit_selection_dac_fune_tune_f2
2024-04-26 10:41:47 +08:00
Roy_01 28df9885e3 modify: update dev_mode_set_adc function 2024-04-26 10:41:13 +08:00
Roy_01 03106860f7 feat: new dev_mode: dev_mode_circuit_selection 2024-04-26 10:40:22 +08:00
Roy_01 1edd217b5c modify:
1. modify range_sel of adc_convert_volt
2024-04-26 10:40:14 +08:00
Roy_01 5b52d39bba modify:
1. remove vo_mode_config & cv_or_cc_mode_config
2024-04-26 10:38:43 +08:00
Roy_01 00413b5098 style: update code style 2024-04-26 10:38:24 +08:00
Roy_01 c144c6ff27 Merge branch 'j-scope' into EDC/develop_tool 2024-04-26 10:38:05 +08:00
chain40 ca3e0ebb69 j_scope 2024-04-26 00:49:33 +08:00
chain40 9c8300c31b workaround: 修正 ads8691 ACQ State 時間不夠的問題 2024-04-25 06:56:10 +08:00
chain40 3c0822efe3 feat: 實作檔案系統 fs_dir, 輸出目錄 2024-04-10 21:26:34 +08:00
Roy_01 10856ca6dd style: update comments and update parentheses 2024-04-10 14:50:55 +08:00
chain40 939f4034da feat: 實作檔案系統 fs
1) spi 傳送的資料長度定為 2 byte (easyDMA 支援最大長度)
2) 建立 block_dev_drv_if
3) 實作 gd25d10c driver
4) 移植 littleFS
5) 建立讀寫測試範例
2024-04-10 08:01:20 +08:00
chain40 669f0f0c48 feat: 實作 dac / adc / timer 功能整合測試 (測試中)
1. DAC 使用 TIME2 控制輸出的間隔時間, 最短週期可至 100us

2. ADC 使用 TIME3 控制輸出的間隔時間
2-1. 如果是 1 CH, 最短週期可至 100us
2-2. 如果是 2 CH, 最短週期可至 200us
2-3. 如果是 3 CH, 最短週期可至 300us
2-6. 如果是 6 CH, 最短週期可至 600us
... 依此類推. TIMER3 可支援 6 組比較值

3. SW 控制未實作
2024-04-03 00:38:52 +08:00
chain40 f915dd3b9a feat: adc/dac/sw 的 spi 改用 spim3
1. 使用 32MHz (僅 spim3 支援)

2. 使用 NRF_SPIM3->PSEL.CSN 自動控制 cs pin (僅 spim3 支援), 但是必需在 spim3 disable 的狀態下才能變更

3. 直接使用 __disable_irq /__enable_irq 防止不同 task 同時存取 spim3 (因為 spi 使用 32MHz, 因此設定 dac 只需要 1us, 讀取 adc 只要  1.28us, 設定 sw 只要 0.64 us)

4. spim_xfer() 支援 spi_mode 設定, 所以不同的 spi_mode 的可以共用 mosi, niso, sclk
2024-04-01 23:23:18 +08:00
chain40 77071869b2 feat: 新增 builtin-saadc driver 使用 mcu 內建的讀取 adc 值
1. 參考電壓只有兩個選擇 a. 0.6v (預設), b. VDD/4
2. 訊號輸入方式 a. single end(預設), b. differntial
3. 由於 ref 預設是 0.6v 在 gain = 1 的條件下, 輸入訊號不得大於 0.6v
4. 承上, 在 gain = 1/6 的條件下, 輸入訊號不得大於 3.6v
5. ads8691 的 gain 設定目前暫只支援 VREF_NP_xPxxx, 不支援 VREF_P_xPxxx
2024-04-01 09:57:54 +08:00
chain40 3532dfe8e3 fix: 將 adc_drv_if_t ads8691 改為 const adc_drv_if_t ads8691, 2024-03-30 20:55:40 +08:00
chain40 3522da08b0 feat: 實作 builtin_adc driver 2024-03-30 20:52:12 +08:00
Roy_01 3741c79e97 update testing functionality for dev_mode(switch) 2024-03-30 09:28:21 +08:00
chain40 76d08f50bf 1. set adc_gain default to NP_GAIN_3P000
2. add testing functionality for dev_mode (ex: led、dac、adc、gpio、spi)
2024-03-30 09:28:16 +08:00
Roy_01 4e21ae6934 feat: updated LED driver - new rainbow-colored LED and could control the color of an LED 2024-03-30 09:24:26 +08:00
Roy_01 d10a7b95cc test: add adc_convert_volt(), a function to test ADC calibration 2024-03-30 09:24:21 +08:00
chain40 901aa2b860 fix: 修正 adgs141 drv 在 daisy chain 模式下, 送出的 sw data 資料位元固定都是 2 bytes 的問題
1) sw data 資料位元必需跟 ASGS1412_COUNT 一致
2024-03-29 10:49:54 +08:00
chain40 5223e2a782 feat: spim2 上的裝置統一使用 mode 0 2024-03-29 00:30:50 +08:00
chain40 d9a2a7b4e2 feat: 實作 sw_drv, sw_drv_if, adgs1412 driver
1. sw_t 是一個 64位元的資料結構, 最大可支援 64 pin sw (adgs1412 最多支援 16 顆)
2024-03-29 00:28:42 +08:00
chain40 84ace26dd6 fix: 調整 ads8691 的初始化流程, 確定使用 spi mode 2 可通訊(讀取 device id 正確), 才進一步執行其它 reg 讀取跟重置 channel 設定 2024-03-22 22:35:22 +08:00
chain40 fba64e0716 fix: 修正 ads8691 輸出的 adc 數值為 uint32_t 格式, 並以 18 bits 的資料長度輸出 2024-03-22 22:35:10 +08:00
chain40 31c691c7c5 feat: 實作 ads8691 driver 以及 adc_drv_if 實作
1. 預設 spi2 為 mode 0, 當 ads8691 初始化完成後, 將 spi2 切為 mode 2
2. 承上, 所以 adc driver 要比 dac driver 更早初始化
3. 將來會將 spi mode 整合 spi transfer, 雖然週邊共用 spi 但是可以每個週邊使用自己的 mode
4. 當調整增益, 更改輸出格式, 切換輸入來源時會把 m_flush_data 設為 1, 在讀 ad 值時會先預讀一次更新量測的結果
2024-03-22 07:29:06 +08:00
chain40 7f5337d0c8 fix: 修改 max5136 driver 傳送的 data bits 是 msb leading 2024-03-13 10:39:28 +08:00
chain40 d163394faf feat: 實作 max5136 driver, 並調整 dac_drv_if 實作 2024-03-13 00:08:21 +08:00
chain40 0d40e8a2bc fix: 將 spi2 設定為 mode 2, 配合 MAX5136 / ADS8691 2024-03-12 22:34:09 +08:00
chain40 e3c969b3e1 feat: 移植並實作 vis_rst(), 建立 dac_drv 架構 2024-03-11 23:40:55 +08:00
chain40 3968bb1a5b add dev_mode 2024-03-08 22:52:57 +08:00
Roy_01 566101b7c8 update led driver 2024-03-08 15:39:35 +08:00
Roy_01 6d8edfbf40 gpio相關的函式都放在edc20_pin_ctrl.c (包含gpio、spi、i2c) 2024-03-08 11:16:01 +08:00
Roy_01 0c9b8d2b8d 1. gpio_init() before initializing TWI and SPI
2. spi2 use spi mode 0
MAX5136 (spi mode 2, maybe it can't work, but it's actually work)
ADS8691 (spi mode 0~3)
ADGS1412 (spi mode 0/3)
GD25D10CTIGR (spi mode 0/3)
2024-03-05 17:27:40 +08:00
Roy_01 e6621dee5a define each series of Elite 2024-03-05 17:25:47 +08:00