Commit Graph

90 Commits

Author SHA1 Message Date
Armando
7e6bf9f987 esp_adc: added adc filter doc, and filter migration guides 2023-02-10 16:46:20 +00:00
Armando
3afa671069 esp_adc: added adc digital filter feature 2023-02-10 16:46:20 +00:00
Armando
c71c0996e3 esp_adc: added an all-in-one API to get calibrated voltage 2023-01-18 16:38:18 +08:00
Armando
5be3c21cfc adc: improve power logic 2023-01-09 17:10:04 +08:00
Cao Sen Miao
4713a9a7f2 ESP32H2: Introduce new chip target esp32h2, hello_world example supported 2022-12-29 12:29:14 +08:00
laokaiyao
5333ac81bf adc: support ADC on esp32c6 (driver/test/example) 2022-12-23 11:24:06 +08:00
Chen Yudong
b5eebc490f CI: add generic to xtal_40mhz jobs 2022-12-21 11:53:38 +08:00
Armando
ded528e188 adc: no longer support adc2 oneshot mode on esp32c3
Due to HW limitation, we don't support this anymore. On c3, ADC2 under oneshot mode is not stable.

However, you can enable CONFIG_ADC_ONESHOT_FORCE_USE_ADC2_ON_C3 to force use
ADC2.

Refer to errata to know more details:
https://www.espressif.com/sites/default/files/documentation/esp32-s3_errata_en.pdf
https://www.espressif.com/sites/default/files/documentation/esp32-c3_errata_en.pdf
2022-12-16 02:06:03 +00:00
Armando
b4c90c44d2 adc: no longer support adc2 continuous mode on esp32c3 and esp32s3
Due to HW limitation, we don't support this anymore. On s3 and c3, ADC2 under continuous  mode is not stable.

However, you can enable CONFIG_ADC_CONTINUOUS_FORCE_USE_ADC2_ON_C3_S3 to force use
ADC2.

Refer to errata to know more details:
https://www.espressif.com/sites/default/files/documentation/esp32-s3_errata_en.pdf
https://www.espressif.com/sites/default/files/documentation/esp32-c3_errata_en.pdf
2022-12-16 02:06:03 +00:00
Cao Sen Miao
86aa4df5b5 ESP32-H2: Introduce new target for ESP32H2 2022-11-23 14:38:05 +08:00
laokaiyao
8677216576 esp32h2: renaming esp32h2 to esp32h4 2022-11-08 17:05:33 +08:00
Song Ruo Jing
2557e24a28 ci: Enable esp32c6 example, test_apps, and unit tests CI build stage 2022-11-01 11:23:21 +08:00
Armando
d592d983ce esp_adc: added esp32c2 adc runners 2022-10-17 16:23:22 +08:00
Armando
9cb1006b2b esp_adc: make c2 atten0 calibration experimental 2022-10-13 21:03:51 +08:00
Armando
f905f6ab7c esp_adc: add esp32c2 adc high/low test threshold and expected val 2022-10-13 21:03:51 +08:00
Armando
508935c457 esp_adc: refacotr tests for all supported attenuations 2022-10-13 21:03:51 +08:00
Armando
f29eda26e6 esp_adc: replace hardcoded calibration version to a macro
On esp32c3 and esp32s3, we support calibration version 1. This commit
replace it with ESP_EFUSE_ADC_CALIB_VER to avoid hardcode.
2022-10-13 21:03:51 +08:00
Armando
ccfbba5994 esp_adc: support adc calibration on esp32c2 2022-10-13 21:03:51 +08:00
Armando
ef3d2008fc esp_adc: remove blank file
`adc_lock.c` and `adc_lock.h` are removed.
Content in these two files are moved to `adc_share_hw_ctrl.c` and
`adc_share_hw_ctrl.h`, in commit 4f80c0f2.

`adc_lock.c` and `adc_lock.h` are left due to auto-solving conflicts.
This commit removes these two blank files.
2022-10-10 11:46:05 +08:00
Armando
5fd4dbad12 esp_adc: improve adc continuous iram test aim
This commit increases adc continuous iram test period of cache disabling
time. Now time is: 1 second

- The aim of this test is to make sure the continuous mode driver ISR
callbacks can run in an IRAM-Safe context.
- Closing cache takes time. WHereas the code to close the cache is
updated. This time gets changed.
2022-10-09 02:35:22 +00:00
wuzhenghui
fca7d70e05 esp32c6: add minimal ci support
- enable build_template_app
- enable check public headers
- enable g0 components dependency check
2022-09-26 20:32:13 +08:00
wuzhenghui
5115e31175 driver: Minor update for esp32c6
Leave TODO for esp_adc and legacy adc driver
HAL/SOC update for spi and i2s
2022-09-26 20:32:13 +08:00
Armando
7be7a3e996 esp_adc: added comments to c3 test thresh, also sync to legacy tests 2022-09-16 03:21:29 +00:00
Armando
eee5085281 ci: use adc dedicated test runners for adc tests 2022-09-16 03:21:29 +00:00
Armando (Dou Yiwen)
49dc1a32c5 Merge branch 'bugfix/remove_esp_adc_wno_flag' into 'master'
esp_adc: remove wno flag

Closes IDF-5765

See merge request espressif/esp-idf!19791
2022-08-26 22:32:24 +08:00
Armando
50a8d8412e esp_adc: remove wno flag 2022-08-26 15:08:18 +08:00
morris
995b89fbb6 gptimer: add API to get captured count value 2022-08-25 17:55:19 +08:00
Armando
a8c0f1feb6 esp_adc: migrate adc wifi test to test app 2022-08-23 21:23:21 +08:00
Armando
236ba48efc esp_adc: add a kconfig to disable dac on certain adc IOs
Added a kconfig option. By default, when using ADC oneshot
driver, it will disable
DAC channels:
- ESP32:   IO25, IO26
- ESP32S2: IO17, IO18
if ADC2 is in use.

You can disable this option, to measure DAC output, via internal ADC.
This is for test usage.
2022-08-22 18:04:55 +08:00
Armando
5e31d4bb2b esp_adc: add adc ulp mode disable enum
Prior to this commit, adc ulp is disabled by setting
adc_oneshot_unit_init_cfg_t::ulp_mode to false.

After this commit, a new enum `ADC_ULP_MODE_DISABLE` is added. So
setting `ulp_mode` to `ADC_ULP_MODE_DISABLE`, instead of `false`, to
disable the ulp mode.
2022-08-22 11:00:28 +08:00
songruojing
304a8f142d esp32c6: introduce the target
Add esp32c6 target to tools and Kconfig
Create directories and files that are essential for `idf.py --preview set-target esp32c6`
2022-08-19 11:13:02 +08:00
Ivan Grokhotkov
401c10ecfb build system: re-add -Wno-format as private flag for some components 2022-08-03 16:42:47 +04:00
morris
cf4cfc69ed esp_adc: add test with -O0 2022-08-02 23:07:06 +08:00
Armando
5e6a16380a esp_adc: move adc common hw related code into esp_hw_support 2022-07-28 03:49:48 +00:00
Armando
0e6c8aef19 esp_adc: increase adc continuous iram test time overhead a bit
Prior to this commit, overhead is 0us on esp32s2, s3, c3, c2. However
when the conv_done event happens, software takes some time to do
necessary operations.
2022-07-26 18:19:14 +08:00
Darian
c8ee369a7c Merge branch 'feature/deprecate-old-cpu-api' into 'master'
HAL: Deprecate old CPU/SoC/Interrupt Controller HAL API

Closes IDF-4919 and IDF-5032

See merge request espressif/esp-idf!18987
2022-07-23 00:37:33 +08:00
morris
5dbae0c2cd esp_adc: fix dead code reported by coverity 2022-07-22 00:12:36 +00:00
Guillaume Souchere
0bac33ed41 esp_system: Remove deprecate section from esp_cpu.h
- Remove esp_cpu_in_ocd_mode() from esp_cpu.h. Users should call esp_cpu_dbgr_is_attached() instead.
- Remove esp_cpu_get_ccount() from esp_cpu.h. Users should call esp_cpu_get_cycle_count() instead.
- Remove esp_cpu_set_ccount() from esp_cpu.h. Users should call esp_cpu_set_cycle_count() instead.
- Other IDF components updated to call esp_cpu_dbgr_is_attached(), esp_cpu_get_cycle_count() and esp_cpu_set_cycle_count() as well.
2022-07-22 00:06:06 +08:00
Darian Leung
781d06af73 esp_hw_support: Remove compare_set.h API
This function removes the following legacy atomic CAS functions:

From compare_set.h (file removed):
- compare_and_set_native()
- compare_and_set_extram()

From portmacro.h
- uxPortCompareSet()
- uxPortCompareSetExtram()

Users should call esp_cpu_compare_and_set() instead as this function hides the details
of atomic CAS on internal and external RAM addresses.

Due to the removal of compare_set.h, some missing header includes are also fixed in this commit.
2022-07-22 00:06:06 +08:00
Armando
5b523a3313 esp_adc: new esp_adc component and adc drivers 2022-07-15 18:31:00 +08:00