Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Register
  • Sign in
  • F firmware
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Graph
    • Compare revisions
  • Issues 74
    • Issues 74
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 29
    • Merge requests 29
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Releases
  • External wiki
    • External wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • card10card10
  • firmware
  • Merge requests
  • !314

Add serial_flush function

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Rahix requested to merge rahix/flush into master Sep 15, 2019
  • Overview 1
  • Commits 1
  • Pipelines 1
  • Changes 2

serial_flush() allows flushing the serial buffer from anywhere in Epicardium.

  • When run from thread mode it will flush to UART, CDC-ACM and BLE. This is similar to what the serial task would do once it is rescheduled.
  • When run inside an exception handler, it will only flush to UART because CDC-ACM and BLE cannot be flushed from an ISR. Note that characters flushed this way will never appear on the other outputs, even if the serial task is scheduled at some point afterwards.

The main use of this function is to ensure output of messages even in cases of critical failures.

Closes #164 (closed).

Edited Sep 15, 2019 by Rahix
Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: rahix/flush