Interfacing with the Arduino

بواسطة: Coursera

Overview

Arduino senses the environment by receiving inputs from add-on devices such as sensors, and can control the world around it by adjusting lights, motors, and other actuators. In this class you will learn how and when to use the different types of sensors and how to connect them to the Arduino. Since the external world uses continuous or analog signals and the hardware is digital you will learn how these signals are converted back-and-forth and how this must be considered as you program your device. You'll also learn about the use of Arduino-specific shields and the shields software libraries to interface with the real world. Please note that this course does not include discussion forums.

Syllabus

  • Module 1
    • IoT devices involve a combination of software and hardware. This module provides background on the basics of hardware design and wiring needed to build useful circuits. This module describes the functions of basic passive components and describes how to use them in simple circuits. This module also describes how to wire circuits together using a breadboard. The goal of this module is to enable students to design and implement the circuits they need to interact with basic sensors and actuators.
  • Module 2
    • This module introduces sensors and actuators and discusses how to interface with them. We’ll examine different classes of sensors and actuators. For each type of sensor/actuator, we’ll examine the circuitry needed to interface with it. Additionally, we’ll take a look at the Arduino code needed to communicate with the sensors and actuators.

  • Module 3
    • This module introduces the use of software libraries with an Arduino sketch. One of the best aspects of the Arduino environment is that the use of good libraries allows a programmer to use complicated hardware without dealing with the complexity. The Arduino environment is supported by many libraries and this module examines the use of several of the more common libraries that allow the use of hardware peripherals in the microprocessor.
  • Module 4
    • In this module we’ll examine Arduino shields and how they are used to extend the capabilities of an Arduino-based system. Shields are printed circuit boards that are stacked on top of the Arduino together with libraries that enable the new hardware to be used through an Arduino sketch. We’ll describe the benefits of shields and their basic construction as well as the use of libraries in interfacing with each shield.

      This module also describes how to connect your IoT device to the Internet using shields. We focus on an Ethernet shield in order to establish a wired network connection, and a WiFi shield to establish a wireless connection.

Taught by

Ian Harris

Interfacing with the Arduino
الذهاب الي الدورة

Interfacing with the Arduino

بواسطة: Coursera

  • Coursera
  • مجانية
  • الإنجليزية
  • متاح شهادة
  • متاح في أي وقت
  • الجميع
  • Arabic, French, Portuguese, Italian, German, Russian, English, Spanish, Thai, Indonesian, Kazakh, Hindi, Swedish, Korean, Greek, Chinese, Ukrainian, Japanese, Polish, Dutch, Turkish
8.1.2PHP Version356msRequest Duration2MBMemory UsageGET ar/الدورات/{slug}Route
    • Booting (242ms)
    • Application (113ms)
    • 1 x Booting (67.9%)
      241.71ms
      1 x Application (31.88%)
      113.47ms
      14 templates were rendered
      • public.courses.show (resources/views/public/courses/show.blade.php)3bladefile
        Params
        0
        course
        1
        links
        2
        config
      • public.courses.partials.breadcrumbs (resources/views/public/courses/partials/breadcrumbs.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.heading (resources/views/public/courses/partials/heading.blade.php)7bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        classes
      • public.courses.partials.details (resources/views/public/courses/partials/details.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.breadcrumbs (resources/views/public/courses/partials/breadcrumbs.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.heading (resources/views/public/courses/partials/heading.blade.php)7bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        classes
      • public.layouts.main (resources/views/public/layouts/main.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.layouts.partials.meta (resources/views/public/layouts/partials/meta.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.layouts.partials.navbar (resources/views/public/layouts/partials/navbar.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.auth.profile.partials.links (resources/views/public/auth/profile/partials/links.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.layouts.partials.flash-session (resources/views/public/layouts/partials/flash-session.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      uri
      GET ar/الدورات/{slug}
      middleware
      web, localize:ar
      controller
      App\Http\Controllers\CourseController@show
      as
      ar.courses.show
      namespace
      prefix
      /ar
      where
      file
      app/Http/Controllers/CourseController.php:17-35
      7 statements were executed3.97ms
      • select * from `courses` where `slug_ar` = 'interfacing-with-the-arduino' limit 1
        2.34ms/app/Http/Controllers/CourseController.php:20corspedia
        Metadata
        Bindings
        • 0. interfacing-with-the-arduino
        Backtrace
        • 17. /app/Http/Controllers/CourseController.php:20
        • 18. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 19. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • update `courses` set `visitors` = `visitors` + 1, `courses`.`updated_at` = '2025-04-13 02:21:20' where `id` = 60
        800μs/app/Http/Controllers/CourseController.php:21corspedia
        Metadata
        Bindings
        • 0. 2025-04-13 02:21:20
        • 1. 60
        Backtrace
        • 17. /app/Http/Controllers/CourseController.php:21
        • 18. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 19. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select `id`, `name_en`, `name_ar`, `topic_id`, `slug_en`, `slug_ar` from `subjects` where `subjects`.`id` in (14)
        180μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select `id`, `name_en`, `name_ar`, `slug_en`, `slug_ar` from `topics` where `topics`.`id` in (1)
        140μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 25. /app/Http/Controllers/CourseController.php:23
        • 26. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 27. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 28. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 29. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `institutions` where `institutions`.`id` in (20) and `institutions`.`deleted_at` is null
        170μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `providers` where `providers`.`id` in (2) and `providers`.`deleted_at` is null
        140μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `html_files` where `html_files`.`id` = 60 limit 1
        200μs/app/Models/Course.php:84corspedia
        Metadata
        Bindings
        • 0. 60
        Backtrace
        • 21. /app/Models/Course.php:84
        • 28. view::public.courses.show:29
        • 30. /vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:125
        • 31. /vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:58
        • 32. /vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php:72
      App\Models\HtmlFile
      1
      App\Models\Provider
      1
      App\Models\Institution
      1
      App\Models\Topic
      1
      App\Models\Subject
      1
      App\Models\Course
      1
        _token
        7F8QAgXgwcXucxVNY8ovQwt9eLqa9Zgcei3rsavT
        locale
        ar
        _previous
        array:1 [ "url" => "https://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/interf...
        _flash
        array:2 [ "old" => [] "new" => [] ]
        PHPDEBUGBAR_STACK_DATA
        []
        path_info
        /ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/interfacing-with-the-arduino
        status_code
        200
        
        status_text
        OK
        format
        html
        content_type
        text/html; charset=UTF-8
        request_query
        []
        
        request_request
        []
        
        request_headers
        0 of 0
        array:24 [ "sec-ch-ua-mobile" => array:1 [ 0 => "?0" ] "sec-ch-ua" => array:1 [ 0 => ""HeadlessChrome";v="129", "Not=A?Brand";v="8", "Chromium";v="129"" ] "cache-control" => array:1 [ 0 => "no-cache" ] "pragma" => array:1 [ 0 => "no-cache" ] "upgrade-insecure-requests" => array:1 [ 0 => "1" ] "priority" => array:1 [ 0 => "u=0, i" ] "user-agent" => array:1 [ 0 => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" ] "cf-ipcountry" => array:1 [ 0 => "US" ] "cf-connecting-ip" => array:1 [ 0 => "18.190.159.202" ] "accept" => array:1 [ 0 => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" ] "sec-fetch-site" => array:1 [ 0 => "none" ] "cf-visitor" => array:1 [ 0 => "{"scheme":"https"}" ] "sec-fetch-mode" => array:1 [ 0 => "navigate" ] "sec-fetch-user" => array:1 [ 0 => "?1" ] "x-forwarded-proto" => array:1 [ 0 => "https" ] "cdn-loop" => array:1 [ 0 => "cloudflare; loops=1" ] "accept-encoding" => array:1 [ 0 => "gzip, br" ] "sec-fetch-dest" => array:1 [ 0 => "document" ] "sec-ch-ua-platform" => array:1 [ 0 => ""Windows"" ] "x-forwarded-for" => array:1 [ 0 => "18.190.159.202" ] "cf-ray" => array:1 [ 0 => "92f77d461db50006-ORD" ] "host" => array:1 [ 0 => "www.corspedia.com" ] "content-length" => array:1 [ 0 => "" ] "content-type" => array:1 [ 0 => "" ] ]
        request_server
        0 of 0
        array:50 [ "USER" => "www-data" "HOME" => "/var/www" "HTTP_SEC_CH_UA_MOBILE" => "?0" "HTTP_SEC_CH_UA" => ""HeadlessChrome";v="129", "Not=A?Brand";v="8", "Chromium";v="129"" "HTTP_CACHE_CONTROL" => "no-cache" "HTTP_PRAGMA" => "no-cache" "HTTP_UPGRADE_INSECURE_REQUESTS" => "1" "HTTP_PRIORITY" => "u=0, i" "HTTP_USER_AGENT" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" "HTTP_CF_IPCOUNTRY" => "US" "HTTP_CF_CONNECTING_IP" => "18.190.159.202" "HTTP_ACCEPT" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" "HTTP_SEC_FETCH_SITE" => "none" "HTTP_CF_VISITOR" => "{"scheme":"https"}" "HTTP_SEC_FETCH_MODE" => "navigate" "HTTP_SEC_FETCH_USER" => "?1" "HTTP_X_FORWARDED_PROTO" => "https" "HTTP_CDN_LOOP" => "cloudflare; loops=1" "HTTP_ACCEPT_ENCODING" => "gzip, br" "HTTP_SEC_FETCH_DEST" => "document" "HTTP_SEC_CH_UA_PLATFORM" => ""Windows"" "HTTP_X_FORWARDED_FOR" => "18.190.159.202" "HTTP_CF_RAY" => "92f77d461db50006-ORD" "HTTP_HOST" => "www.corspedia.com" "REDIRECT_STATUS" => "200" "SERVER_NAME" => "corspedia.com" "SERVER_PORT" => "443" "SERVER_ADDR" => "141.95.147.152" "REMOTE_USER" => "" "REMOTE_PORT" => "13942" "REMOTE_ADDR" => "172.70.126.133" "SERVER_SOFTWARE" => "nginx/1.18.0" "GATEWAY_INTERFACE" => "CGI/1.1" "HTTPS" => "on" "REQUEST_SCHEME" => "https" "SERVER_PROTOCOL" => "HTTP/2.0" "DOCUMENT_ROOT" => "/var/www/corspedia/public" "DOCUMENT_URI" => "/index.php" "REQUEST_URI" => "/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/interfacing-with-the-arduino" "SCRIPT_NAME" => "/index.php" "CONTENT_LENGTH" => "" "CONTENT_TYPE" => "" "REQUEST_METHOD" => "GET" "QUERY_STRING" => "" "SCRIPT_FILENAME" => "/var/www/corspedia/public/index.php" "PATH_INFO" => "" "FCGI_ROLE" => "RESPONDER" "PHP_SELF" => "/index.php" "REQUEST_TIME_FLOAT" => 1744510879.9546 "REQUEST_TIME" => 1744510879 ]
        request_cookies
        []
        
        response_headers
        0 of 0
        array:5 [ "content-type" => array:1 [ 0 => "text/html; charset=UTF-8" ] "cache-control" => array:1 [ 0 => "no-cache, private" ] "date" => array:1 [ 0 => "Sun, 13 Apr 2025 02:21:20 GMT" ] "set-cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6ImthcVlPNmkwTlh2K1NVcDhsUGxBYWc9PSIsInZhbHVlIjoiVUp0Tit5cERzcVA4Q3ZGTmxBRUNoT1puelBvQUVCQjdCa29STFdJeklMQjFlSkwxckZ4Yi9Oc1VSZ0lXWTZ6bnBRQS9MMkNFeDVUOGdNSllnTkJoUmdVdFFUbjFjb1Q5N2lTdG1wZDBhZnBuUU5GeGdhSHFBZGt4UTZnZG8wZEsiLCJtYWMiOiJjYjQ3MDY5NjMxMWRmN2UxMzc5NmNjODk0MDMyZDJmY2Y0OGE5MDExMWRjNjliODQyN2E5OGRhZDk3YmExMmVkIiwidGFnIjoiIn0%3D; expires=Sun, 13 Apr 2025 04:21:20 GMT; Max-Age=7200; path=/; samesite=laxXSRF-TOKEN=eyJpdiI6ImthcVlPNmkwTlh2K1NVcDhsUGxBYWc9PSIsInZhbHVlIjoiVUp0Tit5cERzcVA4Q3ZGTmxBRUNoT1puelBvQUVCQjdCa29STFdJeklMQjFlSkwxckZ4Yi9Oc1VSZ0lXWTZ6bnBRQS9MM" 1 => "laravel_session=eyJpdiI6Ikt5Zit0RlBHSWFxcVAzMi9xMGUwT0E9PSIsInZhbHVlIjoiaUN5encrak1IaFdSQk9JUkJZa0NidDBIS0kyYU1xZzNyaUlnTVlXNXV5MUdVRmJab1VTQlhlc2ZBSS90NGUwSFVGK0FsYTIvc0FJSUd3bnk5RGh1Y3NmbmFMcWFjMzF3cVh3SWNsalhMRk0xcEw5ZFl4TGhXWG1rUmtVQ3YxczYiLCJtYWMiOiIyOTkyMTA2YjNjYzFiNjVmOTMxYjNkMzI0MDgwNjY4ZTc1ZDg0YzYwZmE1YjIwZTQwYWEwNWRlODNiNGQyNmIxIiwidGFnIjoiIn0%3D; expires=Sun, 13 Apr 2025 04:21:20 GMT; Max-Age=7200; path=/; httponly; samesite=laxlaravel_session=eyJpdiI6Ikt5Zit0RlBHSWFxcVAzMi9xMGUwT0E9PSIsInZhbHVlIjoiaUN5encrak1IaFdSQk9JUkJZa0NidDBIS0kyYU1xZzNyaUlnTVlXNXV5MUdVRmJab1VTQlhlc2ZBSS90NGUwSFVG" ] "Set-Cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6ImthcVlPNmkwTlh2K1NVcDhsUGxBYWc9PSIsInZhbHVlIjoiVUp0Tit5cERzcVA4Q3ZGTmxBRUNoT1puelBvQUVCQjdCa29STFdJeklMQjFlSkwxckZ4Yi9Oc1VSZ0lXWTZ6bnBRQS9MMkNFeDVUOGdNSllnTkJoUmdVdFFUbjFjb1Q5N2lTdG1wZDBhZnBuUU5GeGdhSHFBZGt4UTZnZG8wZEsiLCJtYWMiOiJjYjQ3MDY5NjMxMWRmN2UxMzc5NmNjODk0MDMyZDJmY2Y0OGE5MDExMWRjNjliODQyN2E5OGRhZDk3YmExMmVkIiwidGFnIjoiIn0%3D; expires=Sun, 13-Apr-2025 04:21:20 GMT; path=/XSRF-TOKEN=eyJpdiI6ImthcVlPNmkwTlh2K1NVcDhsUGxBYWc9PSIsInZhbHVlIjoiVUp0Tit5cERzcVA4Q3ZGTmxBRUNoT1puelBvQUVCQjdCa29STFdJeklMQjFlSkwxckZ4Yi9Oc1VSZ0lXWTZ6bnBRQS9MM" 1 => "laravel_session=eyJpdiI6Ikt5Zit0RlBHSWFxcVAzMi9xMGUwT0E9PSIsInZhbHVlIjoiaUN5encrak1IaFdSQk9JUkJZa0NidDBIS0kyYU1xZzNyaUlnTVlXNXV5MUdVRmJab1VTQlhlc2ZBSS90NGUwSFVGK0FsYTIvc0FJSUd3bnk5RGh1Y3NmbmFMcWFjMzF3cVh3SWNsalhMRk0xcEw5ZFl4TGhXWG1rUmtVQ3YxczYiLCJtYWMiOiIyOTkyMTA2YjNjYzFiNjVmOTMxYjNkMzI0MDgwNjY4ZTc1ZDg0YzYwZmE1YjIwZTQwYWEwNWRlODNiNGQyNmIxIiwidGFnIjoiIn0%3D; expires=Sun, 13-Apr-2025 04:21:20 GMT; path=/; httponlylaravel_session=eyJpdiI6Ikt5Zit0RlBHSWFxcVAzMi9xMGUwT0E9PSIsInZhbHVlIjoiaUN5encrak1IaFdSQk9JUkJZa0NidDBIS0kyYU1xZzNyaUlnTVlXNXV5MUdVRmJab1VTQlhlc2ZBSS90NGUwSFVG" ] ]
        session_attributes
        0 of 0
        array:5 [ "_token" => "7F8QAgXgwcXucxVNY8ovQwt9eLqa9Zgcei3rsavT" "locale" => "ar" "_previous" => array:1 [ "url" => "https://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/interfacing-with-the-arduino" ] "_flash" => array:2 [ "old" => [] "new" => [] ] "PHPDEBUGBAR_STACK_DATA" => [] ]