Skip to main content
Ctrl+K
Jörg Faschingbauer - Home Jörg Faschingbauer - Home
  • Training Courses
  • About
  • Blog
  • Training Courses
  • About
  • Blog

Section Navigation

  • Course Descriptions
  • Pricing, Organizational
  • Log Of Past Courses
  • Complete Slide Material
    • Linux: Introduction, Userland/Kernel Programming, Hardware/Embedded
      • Linux Basics
      • Linux Systems Programming
      • SSH: Secure Shell
      • Toolchain, And Cross Development
      • Linux Hardware Interfaces
      • Reasons To Prefer An Operating System Over Bare Metal
        • Overview: Terminology
        • Interrupt Handling
        • Spinlocks
        • Threads: Scheduling, Blocking, And Realtime
        • Message Queues: Easy Communication
        • Semaphores: At The Basis Of Waiting
        • Timers, And Timer Callbacks
        • Polling: Event Driven Programming
        • WhyOS: Documentation
        • Controlling Critical Things: A Semi-Realistic Project
          • The Thing To Control
          • Firmware: Initial Version (Driven By Interrupts)
          • Firmware: Fixing Interrupt Concurrency Bugs (Spinlock)
          • Hardware: CAN Controller JF0815
          • Firmware: Emit CAN “State Change Notification” Frames
          • Device Driver: CAN Controller JF0815
          • Firmware: Not So Well Anymore
          • Firmware: Dedicated Thread For CAN Transmission
          • Firmware: Dedicated Thread For Timer Tick
          • Firmware: Dedicated Thread For “Sensor Burning” Event
          • Firmware: Dedicated Thread For “Operator Button” Event
          • Firmware: Collapse Three Threads Into One (Eventloop)
        • Datalogger: A Semi-Realistic Project (Threaded Version)
        • Datalogger: A Semi-Realistic Project (Events Version)
      • Linux Kernel Driver Development
    • Python Programming
    • C Programming
    • C++ Programming
    • Build Tools, Unit Testing, Design, And More
  • Training Courses
  • Complete Slide Material
  • Linux: Introduction, Userland/Kernel Programming, Hardware/Embedded
  • Reasons To Prefer An Operating System Over Bare Metal
  • Controlling Critical Things: A Semi-Realistic Project

Controlling Critical Things: A Semi-Realistic Project#

  • The Thing To Control
  • Firmware: Initial Version (Driven By Interrupts)
  • Firmware: Fixing Interrupt Concurrency Bugs (Spinlock)
  • Hardware: CAN Controller JF0815
  • Firmware: Emit CAN “State Change Notification” Frames
  • Device Driver: CAN Controller JF0815
  • Firmware: Not So Well Anymore
  • Firmware: Dedicated Thread For CAN Transmission
  • Firmware: Dedicated Thread For Timer Tick
  • Firmware: Dedicated Thread For “Sensor Burning” Event
  • Firmware: Dedicated Thread For “Operator Button” Event
  • Firmware: Collapse Three Threads Into One (Eventloop)

© Copyright 2019-2026 (GPLv3), Jörg Faschingbauer.

Created using Sphinx 9.1.0.

Built with the PyData Sphinx Theme 0.17.1.

Show Source