~/talk

Using C Libraries in your Modern C++ Embedded Project

Talkat CppCon 2021 · on Sunday, 2021-10-24· [rust]
links:none on file
slides:none on file

Project integrates a vendor C EtherCAT slave stack (code‑generated C, ssc) into a Modern C++ embedded product using extern "C" boundaries, layering a hardware abstraction over an Infineon XMC with on‑chip EtherCAT IP, and moving policy into a boost::sml state machine. Three integration levels evolve from a quick working pass to a cleaner layered design. Measured cycle times are ~100 μs with distributed‑clock jitter below 1 μs. The prototype forwards CAN data over EtherCAT and proves the approach; later passes clean up ownership and const issues.

AI-written summary · about

  1. 0:00Intro
  2. 0:34Welcome
  3. 1:52What is EtherCAT
  4. 3:00How EtherCAT works
  5. 7:00Synchronizing clocks
  6. 10:45Technical Debt
  7. 13:45Spark Fun Jet Bot
  8. 17:10Time Costs and Resources
  9. 19:15How it Works
  10. 20:35Main Loop
  11. 24:28externc
  12. 26:16const in interfaces
  13. 27:25passone
  14. 28:50value proposition
  15. 30:49main
  16. 33:41hardware
  17. 35:36abstraction
  18. 38:49Data members
  19. 40:11App loop
  20. 41:00Get status
  21. 42:43State machines
  22. 44:29Transition table
  23. 46:09Events
  24. 46:23Guards
  25. 47:19Actions
  26. 50:38Protocols
  27. 51:09Problem Solving
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.