{"id":27636995,"url":"https://github.com/christiantsounguiobama/dht11uart","last_synced_at":"2026-06-30T09:31:33.681Z","repository":{"id":288502459,"uuid":"968324729","full_name":"christianTsounguiObama/dht11UART","owner":"christianTsounguiObama","description":"Projet utilisant la programmation registres, pour interfacer un capteur de température et d'humidité DHT11 avec un ATmega2560, implémentant le protocole 1-wire pour la transmission des données via UART.","archived":false,"fork":false,"pushed_at":"2025-04-17T23:50:18.000Z","size":20,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-23T21:15:41.670Z","etag":null,"topics":["1-wire","arduino","atmega2560","avr","bare-metal","bare-metal-programming","c","dht11","embedded-c","embedded-systems","hardware-interface","humidity-sensor","microcontroller","sensor-interfacing","temperature-sensor","uart-protocol"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/christianTsounguiObama.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-04-17T22:15:21.000Z","updated_at":"2025-04-17T23:50:22.000Z","dependencies_parsed_at":"2025-04-18T12:27:44.991Z","dependency_job_id":"a2245372-037e-4993-93b4-3ff48f9e1a54","html_url":"https://github.com/christianTsounguiObama/dht11UART","commit_stats":null,"previous_names":["christiantsounguiobama/dht11uart"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/christianTsounguiObama%2Fdht11UART","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/christianTsounguiObama%2Fdht11UART/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/christianTsounguiObama%2Fdht11UART/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/christianTsounguiObama%2Fdht11UART/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/christianTsounguiObama","download_url":"https://codeload.github.com/christianTsounguiObama/dht11UART/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250514777,"owners_count":21443219,"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":["1-wire","arduino","atmega2560","avr","bare-metal","bare-metal-programming","c","dht11","embedded-c","embedded-systems","hardware-interface","humidity-sensor","microcontroller","sensor-interfacing","temperature-sensor","uart-protocol"],"created_at":"2025-04-23T21:15:45.290Z","updated_at":"2026-06-30T09:31:33.626Z","avatar_url":"https://github.com/christianTsounguiObama.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Lecture de capteur DHT11 et transmission UART en C bas-niveau sur ATmega2560\n\nCe projet implémente, en langage C bare-metal, une interface directe entre un microcontrôleur ATmega2560 (Arduino Mega) et un capteur de température et d’humidité DHT11, sans utiliser de bibliothèques externes. Les données mesurées sont ensuite transmises via le protocole UART à un terminal série ou un autre périphérique. L’objectif est de comprendre le protocole de communication 1-Wire spécifique au DHT11, de le mettre en œuvre via des manipulations de registres, et de configurer l’UART pour envoyer les données en ASCII.\n\n## Structure du projet\ndht11_ws/ ├── include/ # Fichiers d'en-tête (headers)\u003c/br\u003e\n\t\t  │ ├── dht11.h \u003c/br\u003e\n\t      │ ├── uart.h \u003c/br\u003e\n\t\t  │ └── gpio.h \u003c/br\u003e\n          ├── drivers/ # Fichiers source pour les pilotes bas-niveau \u003c/br\u003e\n          │ ├── dht11/dht11.c \u003c/br\u003e\n\t      │ ├── uart/uart.c\u003c/br\u003e\n\t\t  │ └── gpio/gpio.c\u003c/br\u003e\n\t\t  ├── main/ # Logique principale de l’application \u003c/br\u003e\n          │ └── main.c \u003c/br\u003e\n\t\t  ├── build/ # Fichiers compilés (ignorés par Git) \u003c/br\u003e\n\t\t  ├── Makefile # Système de compilation \u003c/br\u003e\n\t\t  └── .gitignore\u003c/br\u003e\n\n## Fonctionnalités\n\n- Lecture des données du capteur DHT11 via le protocole 1-Wire.\n- Traitement du signal (timing précis, gestion des bits de données).\n- Configuration et utilisation du module UART interne du microcontrôleur.\n- Transmission des mesures température/humidité vers un terminal série.\n- Codé sans bibliothèques Arduino, uniquement en accès registre.\n\n## Prérequis\n\n- **Matériel** : Arduino Mega 2560, capteur DHT11\n- **Outils** :\n  - `avr-gcc`\n  - `avrdude`\n- **Système** : Linux (testé sous Ubuntu 20.04+)\n\n## Schema\n\n![DHT11](https://github.com/user-attachments/assets/e688fa36-a29f-4332-aeab-f1ea92af6b25)\n\n## Démarrage rapide\n\n### 1. Cloner le dépôt\n\n```bash\ngit clone https://github.com/christianTsounguiObama/dht11UART.git\ncd dht11UART/dht11_ws\n```\n\n### 2. Compiler le projet\n```bash\nmake\n```\n\n### 3. Flasher le fichier binaire\nAssurez-vous que votre carte est connectée via USB et ajustez PORT dans le Makefile si nécessaire.\n```bash\nmake flash\n```\n\n### 4. Lire les données sur le port série\nUtilisez un outil comme screen :\n```bash\nscreen /dev/ttyUSB0 9600\n```\n\n## Licence\nCe projet est open source et disponible sous la Licence Apache2.0.\n\n### Contribuer\nLes contributions sont les bienvenues. Si vous trouvez des problèmes, n’hésitez pas à ouvrir une issue ou à proposer des améliorations.\n\n### Remerciements\nCe projet fait partie de mon initiative pour te montrer comment construire des systèmes embarqués à partir de zéro au travers de projets \ndont le niveau de difficulté augmente progressivement. Happy Coding!\n\n\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchristiantsounguiobama%2Fdht11uart","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchristiantsounguiobama%2Fdht11uart","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchristiantsounguiobama%2Fdht11uart/lists"}