{"id":18026346,"url":"https://github.com/allanccwang/electronic_projects","last_synced_at":"2026-05-07T04:43:29.706Z","repository":{"id":259663849,"uuid":"864822537","full_name":"AllanccWang/electronic_projects","owner":"AllanccWang","description":"implement the circuit with microcontroller","archived":false,"fork":false,"pushed_at":"2025-01-04T09:57:16.000Z","size":3978,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-02-10T04:28:19.554Z","etag":null,"topics":["arduino","circuit-analysis","circuit-simulations","circuits-and-electronics","cpp","data-analysis","microcontroller","physics","python","wemos"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AllanccWang.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-09-29T09:00:11.000Z","updated_at":"2025-01-04T09:57:20.000Z","dependencies_parsed_at":"2024-10-27T07:27:58.393Z","dependency_job_id":"109eb3d4-36ed-4302-a4f2-ac682c3bcfd5","html_url":"https://github.com/AllanccWang/electronic_projects","commit_stats":null,"previous_names":["allanccwang/electronic_projects"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AllanccWang%2Felectronic_projects","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AllanccWang%2Felectronic_projects/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AllanccWang%2Felectronic_projects/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AllanccWang%2Felectronic_projects/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AllanccWang","download_url":"https://codeload.github.com/AllanccWang/electronic_projects/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247235176,"owners_count":20905904,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["arduino","circuit-analysis","circuit-simulations","circuits-and-electronics","cpp","data-analysis","microcontroller","physics","python","wemos"],"created_at":"2024-10-30T08:06:12.599Z","updated_at":"2026-05-07T04:43:29.700Z","avatar_url":"https://github.com/AllanccWang.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# About\nThis repository showcases a series of hands-on electronics experiments and microcontroller-based projects, primarily built around the MCU platform. Each lab explores a unique concept—from analog signal processing and sensor integration to web-controlled interfaces and transistor diagnostics. Designed for clarity, modularity, and reuse, these projects serve as both a personal learning archive and a collaborative resource for makers, educators, and engineers.\n\nExplore the labs below, sorted by progression and topic.\n\n# Project Index (Sorted by LAB Number)\n## 🔧 Project Index (Sorted by LAB Number)\n- [LAB1_RC_circuit/](LAB1_RC_circuit/)\n- [LAB2_Analog_Input_Voltage/](LAB2_Analog_Input_Voltage/)\n- [LAB3_binary_display_with_LED/](LAB3_binary_display_with_LED/)\n- [LAB4_Photoresistor_switch_circuit/](LAB4_Photoresistor_switch_circuit/)\n- [LAB5_Planck_constant_experiment/](LAB5_Planck_constant_experiment/)\n- [LAB6_ESP32_Based_Real_Time_Oscilloscope/](LAB6_ESP32_Based_Real_Time_Oscilloscope/)\n- [LAB7_ESP32_as_WIFI_Station/](LAB7_ESP32_as_WIFI_Station/)\n- [LAB8_R-2R_resistive_ladder/](LAB8_R-2R_resistive_ladder/)\n- [LAB9_ESP32_WebServer_control_Two_LEDs/](LAB9_ESP32_WebServer_control_Two_LEDs/)\n- [LAB10_ESP32_WebServer_slider_control_LED_PWM/](LAB10_ESP32_WebServer_slider_control_LED_PWM/)\n- [LAB11_Read_temperature_with_OLED_display/](LAB11_Read_temperature_with_OLED_display/)\n- [LAB12_practice_on_APDS9960_sensor/](LAB12_practice_on_APDS9960_sensor/)\n- [LAB13_555Timer_Function_Table_Test/](LAB13_555Timer_Function_Table_Test/)\n- [LAB14_Verify_P2N2222A_Amplifier-Transistor_Switching/](LAB14_Verify_P2N2222A_Amplifier-Transistor_Switching/)\n- [LAB15_P2N2222A-Amplifier-Transistor_voltage_validation/](LAB15_P2N2222A-Amplifier-Transistor_voltage_validation/)\n- [LAB16_NE555P_Astable_Test_validation/](LAB16_NE555P_Astable_Test_validation/)\n- [LAB17_APDS-9960_Proximity_Test/](LAB17_APDS-9960_Proximity_Test/)\n- [LAB18_Weight_Sensor_HX711_module_Load_Cell_Calibration/](LAB18_Weight_Sensor_HX711_module_Load_Cell_Calibration/)\n- [LAB19_Color_Sensor_and_OLED_Display_Integration_Test/](LAB19_Color_Sensor_and_OLED_Display_Integration_Test/)\n- [LAB20_Sensor_Fusion_by_using_HX711_and_APDS-9960_Modules/](LAB20_Sensor_Fusion_by_using_HX711_and_APDS-9960_Modules/)\n- [LAB21_Smart_Sorting_System_with_HX711_and_APDS-9960_Modules/](LAB21_Smart_Sorting_System_with_HX711_and_APDS-9960_Modules/)\n- [LAB22_Simple_Magnetic_Control_Light_using_a_Reed_Switch/](LAB22_Simple_Magnetic_Control_Light_using_a_Reed_Switch/)\n- [LAB23_STM32-ESP32_Dual_MCU_Communication_Setup/](LAB23_STM32-ESP32_Dual_MCU_Communication_Setup/)\n- [LAB24_STM32F103_DMA_Data_Acquisition_and_Analysis/](LAB24_STM32F103_DMA_Data_Acquisition_and_Analysis/)\n- [LAB25_STM32F103_DMA-Based_Analog_Signal_Acquisition_and_UART_Output_Practice/](LAB25_STM32F103_DMA-Based_Analog_Signal_Acquisition_and_UART_Output_Practice/)\n- [LAB26_Electronics_Circuit_System_Thinking_Experiment_with_NE555_RC_Oscillator/](LAB26_Electronics_Circuit_System_Thinking_Experiment_with_NE555_RC_Oscillator/)\n- [LAB27_Angle-Pressure_Chain_Reaction_for_Monitoring_Tilting_Structure/](LAB27_Angle-Pressure_Chain_Reaction_for_Monitoring_Tilting_Structure/)\n- [LAB28_Quantum-Scale_Stochastic_Resonance-QSR_Simulator/](LAB28_Quantum-Scale_Stochastic_Resonance-QSR_Simulator/)\n- [LAB29_Analog_Quantum_Dispersive_Readout_Simulator/](LAB29_Analog_Quantum_Dispersive_Readout_Simulator/)\n- [LAB30_Blochsphere-on-Hand_A_Sensor-Based_Interactive_Holographic_Projection/](LAB30_Blochsphere-on-Hand_A_Sensor-Based_Interactive_Holographic_Projection/)\n- [LAB31_Overshoot_and_Ringing_Detector_with_STM32_as_Oscilloscope/](LAB31_Overshoot_and_Ringing_Detector_with_STM32_as_Oscilloscope/)\n- [LAB32_ESP32+STM32_RLC_Qubit_Analog_Lab/](LAB32_ESP32+STM32_RLC_Qubit_Analog_Lab/)\n- [LAB33_A_Number_Guessing_Hangman_Game_with_ESP32_keypad_and_LED/](LAB33_A_Number_Guessing_Hangman_Game_with_ESP32_keypad_and_LED/)\n- [LAB34_Quantum_Readout_Fidelity_with_Analogy_Experiment/](LAB34_Quantum_Readout_Fidelity_with_Analogy_Experiment/)\n- [LAB35_Action_Recognizer_Based_on_Edge_Impulse_with_ESP32_and_MPU6050/](LAB35_Action_Recognizer_Based_on_Edge_Impulse_with_ESP32_and_MPU6050/)\n- [LAB36_Smart-Load_Adaptive_Regulator-An_Edge-Impulse-Based_Load_Adaptive_Calibration_System/](LAB36_Smart-Load_Adaptive_Regulator-An_Edge-Impulse-Based_Load_Adaptive_Calibration_System/)\n\n# Microcontroller, ESP32\n\u003cimg align=\"justify\" src=\"ESP32-WeMos-LOLIN-D32-pinout.jpg\" alt=\"CG\" style=\"width:80%\"\u003e\n\n# specs\n* Processors:\n  * CPU: Xtensa dual-core (or single-core) 32-bit LX6 microprocessor, operating at 160 or 240 MHz and performing at up to 600 DMIPS\n  * Ultra low power (ULP) co-processor\n* Memory: 520 KiB SRAM\n* Wireless connectivity:\n  * Wi-Fi: 802.11 b/g/n\n  * Bluetooth: v4.2 BR/EDR and BLE (shares the radio with Wi-Fi)\n* Peripheral interfaces:\n  * 12-bit SAR ADC up to 18 channels\n  * 2 × 8-bit DACs\n  * 10 × touch sensors (capacitive sensing GPIOs)\n  * 4 × SPI\n  * 2 × I²S interfaces\n  * 2 × I²C interfaces\n  * 3 × UART\n  * SD/SDIO/CE-ATA/MMC/eMMC host controller\n  * SDIO/SPI slave controller\n  * Ethernet MAC interface with dedicated DMA and IEEE 1588 Precision Time Protocol support\n  * CAN bus 2.0\n  * Infrared remote controller (TX/RX, up to 8 channels)\n  * Motor PWM\n  * LED PWM (up to 16 channels)\n  * Hall effect sensor\n  * Ultra low power analog pre-amplifier\n* Security:\n  * IEEE 802.11 standard security features all supported, including WFA, WPA/WPA2 and WAPI\n  * Secure boot\n  * Flash encryption\n  * 1024-bit OTP, up to 768-bit for customers\n  * Cryptographic hardware acceleration: AES, SHA-2, RSA, elliptic curve cryptography (ECC), random number generator (RNG)\n* Power management:\n  * Internal low-dropout regulator\n  * Individual power domain for RTC\n  * 5μA deep sleep current\n  * Wake up from GPIO interrupt, timer, ADC measurements, capacitive touch sensor interrupt\n* Battery management\n  * Connector for 3.7v battery (like 18650).\n\n# Microcontroller, STM32F103C8\n\u003cimg align=\"justify\" src=\"STM32F103C8_pinout.png\" alt=\"STM32F103C8_pinout_IMG\" style=\"width:80%\"\u003e\n\n# specs\n* ARM®32-bit Cortex®-M3 CPU Core\n  * 72 MHz maximum frequency,1.25 DMIPS/MHz (Dhrystone 2.1) performance at 0 wait state memory access\n  * Single-cycle multiplication and hardware division\n* Memories\n  * 64 or 128 Kbytes of Flash memory\n  * 20 Kbytes of SRAM\n* Clock, reset and supply management\n  * 2.0 to 3.6 V application supply and I/Os\n  * POR, PDR, and programmable voltage detector (PVD)\n  * 4-to-16 MHz crystal oscillator\n  * Internal 8 MHz factory-trimmed RC\n  * Internal 40 kHz RC\n  * PLL for CPU clock\n  * 32 kHz oscillator for RTC with calibration\n* Low-power\n  * Sleep, Stop and Standby modes\n  * VBAT supply for RTC and backup registers\n* 2 x 12-bit, 1 μs A/D converters (up to 16 channels)\n  * Conversion range: 0 to 3.6 V\n  * Dual-sample and hold capability\n  * Temperature sensor\n* DMA\n  * 7-channel DMA controller\n  * Peripherals supported: timers, ADC, SPIs, I2Cs and USARTs\n* Up to 80 fast I/O ports\n  * 26/37/51/80 I/Os, all mappable on 16 external interrupt vectors and almost all 5 V-tolerant\n* Debug mode\n  * Serial wire debug (SWD) \u0026 JTAG interfaces\n* 7 timers\n  * Three 16-bit timers, each with up to 4 IC/OC/PWM or pulse counter and quadrature (incremental) encoder input\n  * 16-bit, motor control PWM timer with dead-time generation and emergency stop\n  * 2 watchdog timers (Independent and Window)\n  * SysTick timer 24-bit down-counter\n* Up to 9 communication interfaces\n* Up to 2 x I2C interfaces (SMBus/PMBus)\n* Up to 3 USARTs (ISO 7816 interface, LIN, IrDA capability, modem control)\n* Up to 2 SPIs (18 Mbit/s)\n* CAN interface (2.0B Active)\n* USB 2.0 full-speed interface\n* CRC calculation unit, 96-bit unique ID","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fallanccwang%2Felectronic_projects","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fallanccwang%2Felectronic_projects","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fallanccwang%2Felectronic_projects/lists"}