Përmbajtje:
2025 Autor: John Day | [email protected]. E modifikuara e fundit: 2025-01-13 06:58
Unë pashë shumë video të njerëzve të turpëruar kur ata nuk vunë re se mikrofoni ose kamera e tyre ishte ndezur, dhe kjo më dha idenë e këtij projekti.
Kam shkruar një aplikacion të thjeshtë në C# që zbulon kur kamera ose mikrofoni po përdoren dhe shfaq një njoftim me emrin e programit. Për më tepër, kam një tabelë të thjeshtë me 2 LED WS2812B dhe zile që bien dhe ndizen kur merr njoftim nga softueri.
Pajisja është e bazuar në Arduino dhe komunikimi bëhet përmes serialit për ta mbajtur atë të thjeshtë dhe për t'u lejuar fillestarëve një program të lehtë fillimi për të luajtur.
Ju lutemi kontrolloni depon e projektit GitHub për kodin e plotë burimor:
Furnizimet
- 2 x WS2812B
- Zile 1 x 5v
- 1 x Pllakë shpërthimi Micro USB
- 1 x Pllakë shpërthimi USB e tipit A të Femrës
- Magnet neodymium rreth 8 x 3mm x 1.8mm
Hapi 1: Elektronikë
Elektronika këtu është shumë e thjeshtë Unë kam përdorur 2 LED të adresueshëm (WS2812B), zile dhe lidhës mikro USB. Çdo gjë është e lidhur sipas skemës së bashkangjitur.
Nga ana Arduino, është vetëm një lidhës i thjeshtë USB i tipit A që lidhet me 5v, GND dhe kunjat 8 & 9.
Hapi 2: Shtypja 3D e Rastit
Unë kam hartuar një kuti të thjeshtë që përmban elektronikën me dy çarje për shenjat akrilike. Rreth LED -ve kam vendosur mbështetje për shenjat në mënyrë që të mos anojnë. Në pjesën e poshtme të kasës kam vendosur 4 magnete kështu mund të përshtatet lehtësisht në montimin në ekran.
Shtypni një nga secilin skedar stl.
Hapi 3: Gdhendje akrilike këndon
Kam përdorur makinën time CNC, SainSmart CNC 3018-PROVer. Unë kam kërkuar për ikona falas dhe i kam kthyer ato në vektor me softuer inkview
Hapi 4: Programimi
Këtu kemi aplikacionin e klientit që është C# (për Windows) dhe kodin Arduino. Mund t'i gjeni këtu.
Për të monitoruar kur përdoret kamera ose mikrofoni, unë jam duke monitoruar rrugën e mëposhtme në Regjistrin e Windows: HKEY_CURRENT_USER / SOFTWARE / Microsoft / Windows / CurrentVersion / CapabilityAccessManager / ConsentStore / webcam
dhe
HKEY_CURRENT_USER / SOFTWARE / Microsoft / Windows / CurrentVersion / CapabilityAccessManager / ConsentStore / mikrofon
Sa herë që marrim njoftimin e ndryshimit, ne duhet të kërkojmë pemën për ndryshime. Kur pajisja po përdoret, LastUsedTimeStop është 0, kështu që ne e kërkojmë atë dhe analizojmë çelësin për të marrë emrin e aplikacionit për ta treguar atë në njoftim.
Komunikimi midis Arduino dhe programit C# bëhet përmes serisë. Mesazhet janë JSON kështu që do të jetë e lehtë të migroni komunikimin në diçka tjetër nëse duam ta bëjmë këtë në të ardhmen.