1. 07 Dec, 2015 1 commit
  2. 04 Dec, 2015 2 commits
  3. 23 Nov, 2015 1 commit
    • T S's avatar
      stmhal: Implement delayed RTC initialization with LSI fallback. · 86aa16be
      T S authored
      If RTC is already running at boot then it's left alone.  Otherwise, RTC is
      started at boot but startup function returns straight away.  RTC startup
      is then finished the first time it is used.  Fallback to LSI if LSE fails
      to start in a certain time.
      
      Also included:
       MICROPY_HW_CLK_LAST_FREQ
              hold pyb.freq() parameters in RTC backup reg
       MICROPY_HW_RTC_USE_US
              option to present datetime sub-seconds in microseconds
       MICROPY_HW_RTC_USE_CALOUT
              option to enable RTC calibration output
      
      CLK_LAST_FREQ and RTC_USE_CALOUT are enabled for PYBv1.0.
      86aa16be
  4. 09 Nov, 2015 1 commit
  5. 31 Oct, 2015 1 commit
    • Damien George's avatar
      all: Add py/mphal.h and use it in all ports. · 731f3592
      Damien George authored
      py/mphal.h contains declarations for generic mp_hal_XXX functions, such
      as stdio and delay/ticks, which ports should provide definitions for.  A
      port will also provide mphalport.h with further HAL declarations.
      731f3592
  6. 19 Oct, 2015 1 commit
  7. 11 Oct, 2015 1 commit
  8. 12 Sep, 2015 1 commit
  9. 05 Aug, 2015 2 commits
  10. 02 Aug, 2015 1 commit
  11. 29 Jul, 2015 1 commit
  12. 06 May, 2015 1 commit
  13. 04 Mar, 2015 1 commit
  14. 15 Feb, 2015 1 commit
  15. 13 Feb, 2015 4 commits
  16. 09 Jan, 2015 1 commit
  17. 07 Jan, 2015 1 commit
  18. 01 Jan, 2015 1 commit
  19. 25 Oct, 2014 1 commit
  20. 22 Oct, 2014 1 commit
  21. 21 Oct, 2014 1 commit
    • Damien George's avatar
      stmhal: Overhaul UART class to use read/write, and improve it. · 481d714b
      Damien George authored
      UART object now uses a stream-like interface: read, readall, readline,
      readinto, readchar, write, writechar.
      
      Timeouts are configured when the UART object is initialised, using
      timeout and timeout_char keyword args.
      
      The object includes optional read buffering, using interrupts.  You can set
      the buffer size dynamically using read_buf_len keyword arg.  A size of 0
      disables buffering.
      481d714b
  22. 06 Oct, 2014 1 commit
  23. 30 Sep, 2014 1 commit
    • Damien George's avatar
      stmhal: Add network and usocket module. · 3a1c4c5b
      Damien George authored
      As per issue #876, the network module is used to configure NICs
      (hardware modules) and configure routing.  The usocket module is
      supposed to implement the normal Python socket module and selects the
      underlying NIC using routing logic.
      
      Right now the routing logic is brain dead: first-initialised,
      first-used.  And the routing table is just a list of registered NICs.
      
      cc3k and wiznet5k work, but not at the same time due to C name clashes
      (to be fixed).
      
      Note that the usocket module has alias socket, so that one can import
      socket and it works as normal.  But you can also override socket with
      your own module, using usocket at the backend.
      3a1c4c5b
  24. 29 Sep, 2014 1 commit
  25. 23 Sep, 2014 1 commit
    • Damien George's avatar
      stmhal: Initialise stack pointer correctly. · eaaebf32
      Damien George authored
      Stack is full descending and must be 8-byte aligned.  It must start off
      pointing to just above the last byte of RAM.
      
      Previously, stack started pointed to last byte of RAM (eg 0x2001ffff)
      and so was not 8-byte aligned.  This caused a bug in combination with
      alloca.
      
      This patch also updates some debug printing code.
      
      Addresses issue #872 (among many other undiscovered issues).
      eaaebf32
  26. 15 Sep, 2014 1 commit
    • Damien George's avatar
      py: Move definition of mp_sys_exit to core. · b92cbe61
      Damien George authored
      sys.exit always raises SystemExit so doesn't need a special
      implementation for each port.  If C exit() is really needed, use the
      standard os._exit function.
      
      Also initialise mp_sys_path and mp_sys_argv in teensy port.
      b92cbe61
  27. 25 Aug, 2014 1 commit
  28. 16 Aug, 2014 1 commit
  29. 10 Aug, 2014 1 commit
  30. 04 Aug, 2014 2 commits
    • Damien George's avatar
      stmhal: Clean up reset/soft-reset code; fix bug init'ing VCP exc. · ccacdf44
      Damien George authored
      Make a clearer distinction between init functions that must be done
      before any scripts can run (xxx_init0) and those that can be safely
      deferred (xxx_init).
      
      Fix bug initialising USB VCP exception.  Addresses issue #788.
      
      Re-order some init function to improve reliability of
      reset/soft-reset.
      ccacdf44
    • Damien George's avatar
      Put call to qstr_init and mp_init_emergency_exc_buf in mp_init. · 8dbbbbc7
      Damien George authored
      qstr_init is always called exactly before mp_init, so makes sense to
      just have mp_init call it.  Similarly with
      mp_init_emergency_exception_buf.  Doing this makes the ports simpler and
      less error prone (ie they can no longer forget to call these).
      8dbbbbc7
  31. 31 Jul, 2014 1 commit
    • 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
  32. 25 Jul, 2014 1 commit
    • Dave Hylands's avatar
      Add support for storing args during an exception raised by an irq. · 5b7fd20f
      Dave Hylands authored
      The user code should call micropython.alloc_emergency_exception_buf(size)
      where size is the size of the buffer used to print the argument
      passed to the exception.
      
      With the test code from #732, and a call to
      micropython.alloc_emergenncy_exception_buf(100) the following error is
      now printed:
      ```python
      >>> import heartbeat_irq
      Uncaught exception in Timer(4) interrupt handler
      Traceback (most recent call last):
        File "0://heartbeat_irq.py", line 14, in heartbeat_cb
      NameError: name 'led' is not defined
      ```
      5b7fd20f
  33. 20 Jul, 2014 1 commit
  34. 02 Jul, 2014 1 commit