1. 09 Feb, 2016 1 commit
  2. 22 Dec, 2015 1 commit
    • Damien George's avatar
      stmhal: Add pyb.irq_stats() to get statistics about IRQ calls. · 401af50d
      Damien George authored
      Adds a lot of code, makes IRQs a bit less efficient, but is very useful
      for debugging.  Usage: pyb.irq_stats() returns a memory view that can be
      read and written, eg:
      
          list(pyb.irq_stats())
          pyb.irq_stats()[0]
          pyb.irq_stats()[0] = 0
      
      The patch provides general IRQ_ENTER() and IRQ_EXIT() macros that can be
      modified to provide further IRQ statistics if desired.
      401af50d
  3. 25 Nov, 2015 1 commit
  4. 09 Nov, 2015 1 commit
  5. 19 Oct, 2015 3 commits
  6. 07 Aug, 2015 1 commit
  7. 05 Aug, 2015 2 commits
  8. 29 Jul, 2015 2 commits
  9. 22 Mar, 2015 2 commits
  10. 04 Mar, 2015 2 commits
  11. 13 Feb, 2015 2 commits
  12. 21 Jan, 2015 1 commit
  13. 07 Jan, 2015 1 commit
  14. 01 Jan, 2015 1 commit
  15. 27 Dec, 2014 1 commit
  16. 08 Dec, 2014 1 commit
  17. 30 Nov, 2014 1 commit
  18. 29 Nov, 2014 1 commit
  19. 02 Nov, 2014 1 commit
  20. 22 Oct, 2014 1 commit
  21. 09 Oct, 2014 1 commit
  22. 05 Oct, 2014 2 commits
  23. 04 Oct, 2014 1 commit
    • Damien George's avatar
      stmhal: Allow pyb.freq() function to change SYSCLK frequency. · 24119176
      Damien George authored
      Eg pyb.freq(120000000) sets the CPU to 120MHz.  The frequency can be set
      at any point in the code, and can be changed as many times as you like.
      Note that any active timers will need to be reconfigured after a freq
      change.
      
      Valid range is 24MHz to 168MHz (but not all freqs are supported).  The
      code maintains a 48MHz clock for the USB at all times and it's possible
      to change the frequency at a USB REPL and keep the REPL alive (well,
      most of the time it stays, sometimes it resets the USB for some reason).
      Note that USB does not work with pyb.freq of 24MHz.
      24119176
  24. 02 Oct, 2014 1 commit
  25. 28 Sep, 2014 1 commit
  26. 25 Aug, 2014 3 commits
  27. 16 Aug, 2014 1 commit
  28. 31 Jul, 2014 2 commits
    • Damien George's avatar
      stmhal: Change 0:/ and 1:/ to /flash and /sd; add CWD support. · 65dd7bc1
      Damien George authored
      Some important changes to the way the file system is structured on the
      pyboard:
      
      1. 0: and 1: drive names are now replaced with POSIX inspired
      directories, namely /flash and /sd.
      
      2. Filesystem now supports the notion of a current working directory.
      Supports the standard Python way of manipulating it: os.chdir and
      os.getcwd.
      
      3. On boot up, current directory is /flash if no SD inserted, else /sd
      if SD inserted.  Then runs boot.py and main.py from the current dir.
      This is the same as the old behaviour, but is much more consistent and
      flexible (eg you can os.chdir in boot.py to change where main.py is run
      from).
      
      4. sys.path (for import) is now set to '' (current dir), plus /flash
      and /flash/lib, and then /sd and /sd/lib if SD inserted.  This, along
      with CWD, means that import now works properly.  You can import a file
      from the current directory.
      
      5. os.listdir is fixed to return just the basename, not the full path.
      
      See issue #537 for background and discussion.
      65dd7bc1
    • Damien George's avatar
      stmhal: Add USB_VCP class/object, for direct USB VCP control. · 3c4db9f9
      Damien George authored
      Before, pyb.stdin/pyb.stdout allowed some kind of access to the USB VCP
      device, but it was basic access.
      
      This patch adds a proper USB_VCP class and object with much more control
      over the USB VCP device.  Create an object with pyb.USB_VCP(), then use
      this object as if it were a UART object.  It has send, recv, read,
      write, and other methods.  send and recv allow a timeout to be specified.
      
      Addresses issue 774.
      3c4db9f9
  29. 20 Jul, 2014 1 commit