summaryrefslogtreecommitdiffstatshomepage
Commit message (Collapse)AuthorAge
* py: Try to autodetect machine endianness when not defined by port.Damien George2014-10-06
|
* tests: Add check for micropython.native and then skip relevant tests.Damien George2014-10-05
| | | | | | | | | If micropython.native decorator doesn't compile, then we skill all native/viper tests. This patch also re-enables the ujson_loads test on NT. Addresses issue #861, and partially addresses issue #856.
* unix: Detect and print compile error.Damien George2014-10-05
|
* stmhal: Use mp_uint_t where appropriate.Damien George2014-10-05
| | | | | | Found these by compiling stmhal with mp_uint_t of type uint32_t instead of unsigned int. This actually makes a difference to the code, but just a curiosity.
* py: Implement proper context save/restore for eval/exec; factor code.Damien George2014-10-05
| | | | | | | | | This has benefits all round: code factoring for parse/compile/execute, proper context save/restore for exec, allow to sepcify globals/locals for eval, and reduced ROM usage by >100 bytes on stmhal and unix. Also, the call to mp_parse_compile_execute is tail call optimised for the import code, so it doesn't increase stack memory usage.
* py: Make compiler return a proper exception on SyntaxError.Damien George2014-10-05
|
* stmhal: Add config option to disable/enable CAN driver.Damien George2014-10-05
|
* stmhal, timer: Fix timer.chanel so mode can be a keyword.Damien George2014-10-05
|
* stmhal, timer: Improve accuracy of freq computation.Damien George2014-10-05
|
* stmhal, timer: Set freq from float; get timer source freq.Damien George2014-10-05
| | | | | | | | Timers now have the following new features: - can init freq using floating point; eg tim.init(freq=0.1) - tim.source_freq() added to get freq of timer clock source - tim.freq() added to get/set freq - print(tim) now prints freq
* tests: Make printing of floats hopefully more portable.Damien George2014-10-05
|
* Merge pull request #891 from stinos/windows-testsDamien George2014-10-05
|\ | | | | windows tests fixes
| * Exclude some tests which always fail on windowsstijn2014-10-05
| |
| * Enable unicode for Windows port so unicode tests give correct uPy outputstijn2014-10-04
|/
* stmhal: Allow pyb.freq() function to change SYSCLK frequency.Damien George2014-10-04
| | | | | | | | | | | | | 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.
* stmhal: Adjust computation of SYSCLK to retain precision.Damien George2014-10-04
|
* Merge pull request #889 from Vogtinator/masterDamien George2014-10-04
|\ | | | | Implement missing ARM emitter functions for viper
| * Implement missing ARM emitter functions for viperFabian Vogt2014-10-04
|/
* py: Fix unix-cpy to compile with uint->mp_uint_t changes.Damien George2014-10-03
|
* py: Change [u]int to mp_[u]int_t in qstr.[ch], and some other places.Damien George2014-10-03
| | | | This should pretty much resolve issue #50.
* py: Use UINT_FMT instead of %d.Damien George2014-10-03
|
* py: Convert [u]int to mp_[u]int_t where appropriate.Damien George2014-10-03
| | | | Addressing issue #50.
* drivers: Add NRF24L01 driver (written in pure Python).Damien George2014-10-02
| | | | | Comes with test script. Copy both files to pyboard and run "import nrf24l01test".
* tests: Add simple CAN test.Damien George2014-10-02
|
* stmhal: Add basic CAN bus support.Damien George2014-10-02
|
* stmhal: Set is_enabled=false when creating UART object; fix doc typo.Damien George2014-10-02
|
* stmhal: Update help text.v1.3.3Damien George2014-10-02
| | | | | | | | | Remove reference to pyb.gc; add reference to pyb.millis. There are lots of functions not listed when you run help(), but it would be too much to list them all, so we list only some basic, useful ones. Addresses issue #846.
* Enable device keyword option when running pyboard.py --tests and run-tests ↵blmorris2014-10-01
| | | | --pyboard
* unix: Do a proper clean-up on sys.exit/SystemExit.Damien George2014-10-01
| | | | Addresses issue #859.
* Proposed fix for USB Mass Storage.Dave Hylands2014-10-01
|
* tools: Add network build to auto-build script.Damien George2014-09-30
|
* stmhal: Enable patch_program in cc3k driver, with key.Damien George2014-09-30
|
* stmhal: Fix wiznet5k init of SPI bus.Damien George2014-09-30
|
* drivers, cc3000: Wrap exported functions in a macro for renaming.Damien George2014-09-30
|
* drivers, wiznet5k: Wrap exported functions in a macro for renaming.Damien George2014-09-30
| | | | 3rd party drivers should not export generic names like "close".
* stmhal: Add network and usocket module.Damien George2014-09-30
| | | | | | | | | | | | | | | | | 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.
* stmhal: For spi_init, add argument to select if NSS pin is enabled.Damien George2014-09-30
| | | | | Most of the time you don't use the NSS pin of the SPI bus, and so it shouldn't be enabled by default (this gave some bugs in the past).
* py: Remove IOError since it's deprecated; use OSError instead.Damien George2014-09-30
| | | | | | | | | | | In CPython IOError (and EnvironmentError) is deprecated and aliased to OSError. All modules that used to raise IOError now raise OSError (or a derived exception). In Micro Python we never used IOError (except 1 place, incorrectly) and so don't need to keep it. See http://legacy.python.org/dev/peps/pep-3151/ for background.
* py: Allow x86-64 to mov r16 to rm16 with extended src reg.Damien George2014-09-29
| | | | Fixes bug with x86-64 viper ptr16.
* py: Fix viper store on x86; add tests for viper ptr16.Damien George2014-09-29
|
* py: Add casting to viper; add native mem stores to viper.Damien George2014-09-29
| | | | | | | | | | Viper can now do the following: def store(p:ptr8, c:int): p[0] = c This does a store of c to the memory pointed to by p using a machine instructions inline in the code.
* tests: Add tests for viper binary operations.Damien George2014-09-29
|
* py: Implement more binary ops for viper emitter.Damien George2014-09-29
| | | | | This included a bit of restructuring of the assembler backends. Note that the ARM backend is missing a few functions and won't compile.
* py: Allow viper to use ints as direct conditionals in jumps.Damien George2014-09-29
| | | | Allows things like: if 1: ...
* py: Fix types, uint -> mp_uint_t.Damien George2014-09-29
|
* py: Make macro names in assemblers consistent, and tidy up a bit.Damien George2014-09-29
|
* py: Add store r8 and store r16 ops to asm_x86 and asm_x64.Damien George2014-09-29
|
* py: In asmthumb, clean up unit/int types and ite ops.Damien George2014-09-29
|
* unix: Remove unnecessary #defines from config.Damien George2014-09-29
|
* stmhal, fatfs: Use stdlib for string fns; make all private fns static.Damien George2014-09-29
| | | | We save some code bytes by using builtin string functions.