Search found 1656 matches

by ESP_igrr
Sun Apr 19, 2020 8:27 pm
Forum: ESP32 IDF
Topic: An Issue with high level interrupt
Replies: 15
Views: 2642

Re: An Issue with high level interrupt

Regarding synchronization — if the task and the ISR are running on the same CPU, then you can implement the critical section in a task by disabling the interrupt. If they are running on different CPUs, you need to use the S32C1I (atomic compare and set) instruction.
by ESP_igrr
Sat Apr 18, 2020 11:03 pm
Forum: IDEs for ESP-IDF
Topic: Debugging fails using VSC with Intellisense
Replies: 1
Views: 2345

Re: Debugging fails using VSC with Intellisense

Hi Werner, just to check, you aren't using the official ESP-IDF VS Code extension (https://marketplace.visualstudio.com/items?itemName=espressif.esp-idf-extension), are you? If no, perhaps you could try it? The installation guide can be found here: https://github.com/espressif/vscode-esp-idf-extensi...
by ESP_igrr
Sat Apr 18, 2020 10:57 pm
Forum: ESP32 IDF
Topic: Issues: latest toolchain install on Windows
Replies: 11
Views: 3961

Re: Issues: latest toolchain install on Windows

Hi Kamil,

could you try adding the following line to tools/cmake/toolchain-esp32.cmake file in ESP-IDF?

Code: Select all

set(CMAKE_EXE_LINKER_FLAGS "-fno-use-linker-plugin" CACHE STRING "Linker Base Flags")
then delete the "build" directory in your project, and try building again.
by ESP_igrr
Sat Apr 18, 2020 10:43 pm
Forum: ESP32 IDF
Topic: An Issue with high level interrupt
Replies: 15
Views: 2642

Re: An Issue with high level interrupt

Hi opcode_x64, That's quite a lot of code to digest... One thing i've noticed so far is: // the follwing 8 assembly lines are doing "*(aADCBUF+SampleCounter*4)" // multiplication by 4 is done, cause only 4 adc channels are used. l32i temp, aSampleCounter, 0 // load the content of the SampleCounter i...
by ESP_igrr
Sat Apr 18, 2020 7:19 pm
Forum: ESP32 IDF
Topic: An Issue with high level interrupt
Replies: 15
Views: 2642

Re: An Issue with high level interrupt

That's correct, you need to find the PC (program counter) in the disassembled code. Sometimes you may get better results by running xtensa-esp32-elf-gdb <your elf file> and then executing "disassemble /m <0xaddr>" to get the disassembly. If you can't get an exact match, it might help to open the .ma...
by ESP_igrr
Sat Apr 18, 2020 7:22 am
Forum: General Discussion
Topic: What files to keep from a specific revision build, and how to flash
Replies: 4
Views: 1438

Re: What files to keep from a specific revision build, and how to flash

One more thing, the build systems produces some metadata files with flashing information. Please check https://docs.espressif.com/projects/esp ... -arguments
by ESP_igrr
Sat Apr 18, 2020 7:16 am
Forum: ESP32 IDF
Topic: An Issue with high level interrupt
Replies: 15
Views: 2642

Re: An Issue with high level interrupt

Also you may post the new version of your interrupt handler, with the register saving/restoring code added. Maybe there is some issue there.
by ESP_igrr
Sat Apr 18, 2020 7:15 am
Forum: ESP32 IDF
Topic: An Issue with high level interrupt
Replies: 15
Views: 2642

Re: An Issue with high level interrupt

Hi opcode_x64, Pretty hard to say what is wrong based on this information. Please study the panic handler output. LoadProhibited indicates an attempt to load from an invalid address. EXCVADDR register will show the address of the attempted load. The PC will show the location in the program where it ...
by ESP_igrr
Sat Apr 18, 2020 7:05 am
Forum: ESP-IDF 中文讨论版
Topic: ESP32获取chipID
Replies: 1
Views: 1759

Re: ESP32获取chipID

You can use esp_efuse_mac_get_default to get the factory-programmed MAC, which is unique. esp_efuse_mac_get_custom returns the custom MAC address, if it was programmed in BLK3 eFuse. More details here: https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-reference/system/system.html#custo...
by ESP_igrr
Fri Apr 17, 2020 11:07 am
Forum: ESP32 IDF
Topic: An Issue with high level interrupt
Replies: 15
Views: 2642

Re: An Issue with high level interrupt

Please note that the level 5 interrupt can happen at any time. Your interrupt handler simply overwrites the registers and doesn't save/restore their original values. If the code which was interrupted is using the same registers, then upon return from your interrupt handler, the values of the registe...

Go to advanced search