{"id":27997235,"url":"https://github.com/amir-kedis/embedded-systems-labs","last_synced_at":"2025-05-08T21:57:52.990Z","repository":{"id":290026064,"uuid":"929535182","full_name":"amir-kedis/embedded-systems-labs","owner":"amir-kedis","description":"Labs and Assignment of Embedded Systems Course solved by @amir-kedis and @g-magdy from CMP26","archived":false,"fork":false,"pushed_at":"2025-04-27T17:42:56.000Z","size":25437,"stargazers_count":7,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-05-08T21:57:45.683Z","etag":null,"topics":["adc","calibration","embedded-systems","imu","interrupts","port-program","spi","timers"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/amir-kedis.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,"zenodo":null}},"created_at":"2025-02-08T19:14:25.000Z","updated_at":"2025-05-08T08:30:05.000Z","dependencies_parsed_at":"2025-04-26T12:35:55.168Z","dependency_job_id":null,"html_url":"https://github.com/amir-kedis/embedded-systems-labs","commit_stats":null,"previous_names":["amir-kedis/embedded-systems-labs"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amir-kedis%2Fembedded-systems-labs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amir-kedis%2Fembedded-systems-labs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amir-kedis%2Fembedded-systems-labs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amir-kedis%2Fembedded-systems-labs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/amir-kedis","download_url":"https://codeload.github.com/amir-kedis/embedded-systems-labs/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253154983,"owners_count":21862621,"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":["adc","calibration","embedded-systems","imu","interrupts","port-program","spi","timers"],"created_at":"2025-05-08T21:57:52.483Z","updated_at":"2025-05-08T21:57:52.983Z","avatar_url":"https://github.com/amir-kedis.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align= \u003e\n\n# \u003cimg align=center width=75px height=75px src=\"https://media1.giphy.com/media/v1.Y2lkPTc5MGI3NjExNHRhNmlibzNnN3JlaXMwODNncGF3b3ZocmoweHhjNWhkODdsdW9jNiZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9cw/8Lq2QCUhC4ZN2O2S7f/giphy.gif\"\u003e Embedded Systems Labs\n\u003c/div\u003e\n\u003cdiv align=\"center\"\u003e\n   \u003cimg align=\"center\" height=400px src=\"https://media3.giphy.com/media/v1.Y2lkPTc5MGI3NjExajZzY2s3d2FpczVvdDJsdWM3bmswaWJod3N3NTdmaW9lbmhtMm5xbCZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/jKYQYm26ViwB3ZFmwu/giphy.gif\" alt=\"logo\"\u003e\n\n\u003c/div\u003e\n\n\u003cp align=\"center\"\u003e \n    \u003cbr\u003e \n\u003c/p\u003e\n\n## \u003cimg align= \"center\" width=50px src=\"https://media4.giphy.com/media/xN3IbsXsm1pOtGOkx2/giphy.gif?cid=ecf05e47lnbd6mvq1joc1wjqtdh7aonlxeiin9t26d7qgrh1\u0026ep=v1_stickers_search\u0026rid=giphy.gif\u0026ct=s\"\u003e Table of Contents\n\n- \u003ca href =\"#about\"\u003e 📙 Overview\u003c/a\u003e\n- \u003ca href =\"#labs\"\u003e 📝 Labs\u003c/a\u003e\n  - \u003ca href =\"#lab1\"\u003e ☝️ Lab 1: I/O\u003c/a\u003e\n  - \u003ca href =\"#lab2\"\u003e ✌️ Lab 2: Interrupts\u003c/a\u003e\n  - \u003ca href =\"#lab3\"\u003e 👌 Lab 3: Timers\u003c/a\u003e\n  - \u003ca href =\"#lab4\"\u003e 🖖 Lab 4: ADC\u003c/a\u003e\n  - \u003ca href =\"#lab5\"\u003e 🖐️ Lab 5: SPI\u003c/a\u003e\n- \u003ca href =\"#assignment\"\u003e 📚 Assignment: IMU\u003c/a\u003e\n- \u003ca href =\"#lab-exam\"\u003e 📚 LAB EXAM\u003c/a\u003e\n- \u003ca href =\"#contributors\"\u003e ✨ Contributors\u003c/a\u003e\n- \u003ca href =\"#license\"\u003e 🔒 License\u003c/a\u003e\n\u003chr style=\"background-color: #4b4c60\"\u003e\u003c/hr\u003e\n\n \u003ca id = \"about\"\u003e\u003c/a\u003e\n\n## \u003cimg align=\"center\"  height =50px src=\"https://user-images.githubusercontent.com/71986226/154076110-1233d7a8-92c2-4d79-82c1-30e278aa518a.gif\"\u003e Overview\n\u003cbr\u003e\n\u003cul\u003e \n\u003cli\u003eThis repository contains solutions for Embedded Systems Labs and IMU Assignment\u003c/li\u003e\n\u003cli\u003eThe project includes 5 labs and 1 assignment covering embedded systems concepts:\u003c/li\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"#lab1\"\u003eLab 1: I/O Operations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"#lab2\"\u003eLab 2: Interrupt Handling\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"#lab3\"\u003eLab 3: Timer Programming\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"#lab4\"\u003eLab 4: Analog-to-Digital Conversion\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"#lab5\"\u003eLab 5: SPI Communication\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"#assignment\"\u003eAssignment: IMU Integration (Calibration, denoising)\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cli\u003eBuilt using embedded C and microcontroller peripherals\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr style=\"background-color: #4b4c60\"\u003e\u003c/hr\u003e\n\n\u003ca id=\"labs\"\u003e\u003c/a\u003e\n\n## \u003cimg align= \"center\" width=50px src=\"https://media4.giphy.com/media/xN3IbsXsm1pOtGOkx2/giphy.gif?cid=ecf05e47lnbd6mvq1joc1wjqtdh7aonlxeiin9t26d7qgrh1\u0026ep=v1_stickers_search\u0026rid=giphy.gif\u0026ct=s\"\u003e Labs \n\n\u003ca id=\"lab1\"\u003e\u003c/a\u003e\n\n### \u003cimg align= \"center\" width=60px src=\"https://media0.giphy.com/media/ksNc3DpgrXoVbfm55o/giphy.gif?cid=ecf05e47xx37ikbgcba0srqvlw511mrn6z2g65a20hc3tn00\u0026ep=v1_stickers_search\u0026rid=giphy.gif\u0026ct=s\"\u003e Lab 1: I/O Operations\n\u003cul\u003e\n\u003cli\u003eBasic input/output operations with microcontroller pins\u003c/li\u003e\n\u003cli\u003eLED control and button input handling\u003c/li\u003e\n\u003cli\u003eDigital signal processing and timing\u003c/li\u003e\n\u003cli\u003eView \u003ca href=\"lab1-io\"\u003eLab 1\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003ca id=\"lab2\"\u003e\u003c/a\u003e\n\n### \u003cimg align= \"center\" width=60px src=\"https://media2.giphy.com/media/3o3IJrFTTV6Vf8Mfgy/giphy.gif?cid=ecf05e471k7i9700r3t25juhe42xfdkg4qzmfd6wdgoupt6v\u0026ep=v1_stickers_search\u0026rid=giphy.gif\u0026ct=s\"\u003e Lab 2: Interrupts\n\u003cul\u003e\n\u003cli\u003eExternal interrupt handling\u003c/li\u003e\n\u003cli\u003eInterrupt service routines\u003c/li\u003e\n\u003cli\u003ePriority-based interrupt management\u003c/li\u003e\n\u003cli\u003eView \u003ca href=\"lab2-interrupt\"\u003eLab 2\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003ca id = \"lab3\"\u003e\u003c/a\u003e\n\n### \u003cimg align= \"center\" width=60px src=\"https://media1.giphy.com/media/v1.Y2lkPTc5MGI3NjExM3dxeHRrZGUzZW9kZzB2aDVjZjlqaG04OTFucm9oZDA5azBlODYxYyZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9cw/Lrge8fr6HFydZqahbw/giphy.gif\"\u003e Lab 3: Timers\n\u003cul\u003e\n\u003cli\u003eTimer configuration and initialization\u003c/li\u003e\n\u003cli\u003ePWM generation\u003c/li\u003e\n\u003cli\u003eTimer-based event scheduling\u003c/li\u003e\n\u003cli\u003eView \u003ca href=\"lab3-timers\"\u003eLab 3\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003ca id = \"lab4\"\u003e\u003c/a\u003e\n\n### \u003cimg align= \"center\" width=60px src=\"https://media0.giphy.com/media/v1.Y2lkPTc5MGI3NjExYmZmZ2xqbWYzeXIzaHF5bmplM2hneWU4dnI1dnlob3dwMmp0aG5wciZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9cw/EyT7PztEE8N4hDmHL2/giphy.gif\"\u003e Lab 4: ADC\n\u003cul\u003e\n\u003cli\u003eAnalog-to-Digital conversion setup\u003c/li\u003e\n\u003cli\u003eSensor data acquisition\u003c/li\u003e\n\u003cli\u003eADC calibration and error handling\u003c/li\u003e\n\u003cli\u003eView \u003ca href=\"lab4-adc\"\u003eLab 4\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003ca id = \"lab5\"\u003e\u003c/a\u003e\n\n### \u003cimg align= \"center\" width=60px src=\"https://media2.giphy.com/media/v1.Y2lkPTc5MGI3NjExbnJsMGVmeHM5c2llZ3hkbHhpNDMwanJucWh0Ym9yanRwYWx0MnB5NiZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9cw/5Ns14GiQ0LmHYoEisH/giphy.gif\"\u003e Lab 5: SPI\n\u003cul\u003e\n\u003cli\u003eSPI communication protocol implementation\u003c/li\u003e\n\u003cli\u003eMaster-Slave configuration\u003c/li\u003e\n\u003cli\u003eData transfer and synchronization\u003c/li\u003e\n\u003cli\u003eView \u003ca href=\"lab5-spi\"\u003eLab 5\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003ca id = \"assignment\"\u003e\u003c/a\u003e\n\n## \u003cimg align= \"center\" width=60px src=\"https://media3.giphy.com/media/v1.Y2lkPTc5MGI3NjExa3NubTI5bm0xZHcwcnNsczQxeWxhMDBhc2s1M3RqZDdla3VjbmpwZSZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9cw/KgbZY915BD64Kx5fnb/giphy.gif\"\u003e Assignment: IMU Integration\n\u003cul\u003e\n\u003cli\u003eInertial Measurement Unit (IMU) integration\u003c/li\u003e\n\u003cli\u003eSensor data processing and fusion\u003c/li\u003e\n\u003cli\u003eReal-time motion tracking\u003c/li\u003e\n\u003cli\u003eView \u003ca href=\"assignment-1-imu\"\u003eAssignment\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\n\u003ca id = \"lab-exam\"\u003e\u003c/a\u003e\n## \u003cimg align= \"center\" width=60px src=\"https://media3.giphy.com/media/v1.Y2lkPTc5MGI3NjExa3NubTI5bm0xZHcwcnNsczQxeWxhMDBhc2s1M3RqZDdla3VjbmpwZSZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9cw/KgbZY915BD64Kx5fnb/giphy.gif\"\u003e Lab Exam Solution\n\u003cul\u003e\n\u003cli\u003eView \u003ca href=\"lab-exam\"\u003eLab Exam with solution\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\n\u003chr style=\"background-color: #4b4c60\"\u003e\u003c/hr\u003e\n\u003ca id =\"contributors\"\u003e\u003c/a\u003e\n\n## \u003cimg  align=\"center\" width= 70px height =55px src=\"https://media0.giphy.com/media/Xy702eMOiGGPzk4Zkd/giphy.gif?cid=ecf05e475vmf48k83bvzye3w2m2xl03iyem3tkuw2krpkb7k\u0026rid=giphy.gif\u0026ct=s\"\u003e Contributors \n\n\u003ctable  \u003e\n  \u003ctr\u003e\n      \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/amir-kedis\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/amir-kedis?v=4\" width=\"150px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eAmir Kedis (labs, assignment)\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003c/td\u003e\n     \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/g-magdy\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/g-magdy?v=4\" width=\"150px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eGeorge Magdy (labs, assignment)\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003c/td\u003e\n     \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/Abdulrahman-Mostafa10\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/Abdulrahman-Mostafa10?v=4\" width=\"150px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eAbdulrahman Mostafa(labs, assignment)\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003c/td\u003e\n     \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/AbdelruhmanSamy\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/AbdelruhmanSamy?v=4\" width=\"150px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eAbdelruhman Samy (assignment)\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003c/td\u003e\n     \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/akramhany\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/akramhany?v=4\" width=\"150px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eAkram Hany (assignment)\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n## 🔒 License \u003ca id =\"license\"\u003e\u003c/a\u003e\n\n\u003eThis software is licensed under MIT License, See [License](LICENSE) for more information ©Amir. \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famir-kedis%2Fembedded-systems-labs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Famir-kedis%2Fembedded-systems-labs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famir-kedis%2Fembedded-systems-labs/lists"}