[{"data":1,"prerenderedAt":171},["ShallowReactive",2],{"blog-en-/en/blog/adc-integration-and-data-processing-in-embedded-systems":3},{"id":4,"title":5,"body":6,"description":154,"extension":155,"meta":156,"navigation":166,"path":167,"seo":168,"stem":169,"__hash__":170},"en_blog/en/blog/adc-integration-and-data-processing-in-embedded-systems.md","Analog to Digital Module Integration and Data Processing in Embedded Systems",{"type":7,"value":8,"toc":140},"minimark",[9,14,18,22,25,30,33,37,49,59,63,74,78,88,102,106,109,126,130,133],[10,11,13],"h2",{"id":12},"introduction","Introduction",[15,16,17],"p",{},"Even if everything is flawless on the hardware side, the raw numerical data coming from the ADC is not yet meaningful information for the end user. Processing, filtering, and converting this data into a physical unit is the task of embedded software. Discover the data processing strategies used by Amazeng engineers in the ZMA and GDT series and the technical depth of this process.",[10,19,21],{"id":20},"journey-from-raw-data-to-meaningful-information","Journey from Raw Data to Meaningful Information",[15,23,24],{},"The data coming from the ADC module is usually a large integer between 0 and 16,777,215 (for 24-bit). The processing steps of this raw data are:",[26,27,29],"h3",{"id":28},"_1-conditional-filtering-preprocessing","1. Conditional Filtering (Preprocessing)",[15,31,32],{},"Before the data is calibrated, it is passed through low-pass or moving average filters to clean up hardware noise. This allows the reading to be more stable.",[26,34,36],{"id":35},"_2-application-of-calibration-coefficients","2. Application of Calibration Coefficients",[15,38,39,40,44,45,48],{},"Software converts raw data into physical units using pre-recorded ",[41,42,43],"strong",{},"Zero"," and ",[41,46,47],{},"Span"," coefficients.",[50,51,52],"ul",{},[53,54,55,58],"li",{},[41,56,57],{},"Formula",": $MeasuredValue = (RawData - ZeroPoint) \\times CalibrationCoefficient$",[26,60,62],{"id":61},"_3-real-time-signal-processing","3. Real-Time Signal Processing",[15,64,65,66,73],{},"Especially in high-speed devices like ",[41,67,68],{},[69,70,72],"a",{"href":71},"/en/products/zma-data-acquisition","ZMA Data Acquisition",", \"Peak\" and \"Valley\" values are calculated instantaneously over the data coming every millisecond.",[10,75,77],{"id":76},"strong-architecture-in-embedded-software-zephyr-rtos","Strong Architecture in Embedded Software: Zephyr RTOS",[15,79,80,81,87],{},"As Amazeng, we use ",[41,82,83],{},[69,84,86],{"href":85},"/en/blog/why-we-use-zephyr-rtos","Zephyr RTOS"," in the firmware layer. This modern operating system offers us the following advantages in ADC integration:",[50,89,90,96],{},[53,91,92,95],{},[41,93,94],{},"Multi-threading",": The data reading process works in a high-priority thread, while Modbus communication or screen update works in different threads. In this way, no data loss occurs.",[53,97,98,101],{},[41,99,100],{},"Standard ADC API",": Our signal processing algorithms in the upper layer do not change even if we use different ADC chips.",[10,103,105],{"id":104},"product-placement-smart-firmware-layer-of-gdt-and-zma","Product Placement: \"Smart\" Firmware Layer of GDT and ZMA",[15,107,108],{},"Our devices are not just \"converters,\" but mini computers:",[50,110,111,120],{},[53,112,113,119],{},[41,114,115],{},[69,116,118],{"href":117},"/en/products/gdt-digital-transmitter","GDT Digital Transmitter",": The adaptive filter algorithms contained within it can set the filter hardness itself by analyzing the vibration characteristic in the field.",[53,121,122,125],{},[41,123,124],{},"Synchronization",": In the ZMA series, data coming from multiple channels is synchronized with a timestamp, so the correlation between them can be analyzed clearly.",[10,127,129],{"id":128},"conclusion","Conclusion",[15,131,132],{},"Data processing in embedded systems is a perfect dance between hardware and software. A transmitter equipped with correct algorithms produces laboratory-precision results even in the most challenging field conditions.",[15,134,135,139],{},[69,136,138],{"href":137},"/en/contact","Talk to our engineering team"," for our embedded system solutions and special firmware needs.",{"title":141,"searchDepth":142,"depth":142,"links":143},"",2,[144,145,151,152,153],{"id":12,"depth":142,"text":13},{"id":20,"depth":142,"text":21,"children":146},[147,149,150],{"id":28,"depth":148,"text":29},3,{"id":35,"depth":148,"text":36},{"id":61,"depth":148,"text":62},{"id":76,"depth":142,"text":77},{"id":104,"depth":142,"text":105},{"id":128,"depth":142,"text":129},"How raw data coming from ADC modules is processed in the embedded software world, calibration algorithms, and signal processing techniques.","md",{"date":157,"author":158,"readTime":159,"tags":160},"2025-12-06","Amazeng Technical Team",7,[161,162,163,164,165],"Embedded Systems","ADC Integration","Signal Processing","Firmware","Data Analysis",true,"/en/blog/adc-integration-and-data-processing-in-embedded-systems",{"title":5,"description":154},"en/blog/adc-integration-and-data-processing-in-embedded-systems","mw3p_ql5JTSDC9lmmo4mcMjcmJuzplxFZ9Mxv6yn1P8",1778229658940]