aboutsummaryrefslogtreecommitdiff
path: root/stmhal
AgeCommit message (Collapse)Author
2014-04-29stmhal: Add documentation in comments, and script to generate HTML.Damien George
Decided to write own script to pull documentation from comments in C code. Style for writing auto generated documentation is: start line with /// and then use standard markdown to write the comment. Keywords recognised by the scraper begin with backslash. See code for examples. Running: python gendoc.py modpyb.c accel.c adc.c dac.c extint.c i2c.c led.c pin.c rng.c servo.c spi.c uart.c usrsw.c, will generate a HTML structure in gendoc-out/. gendoc.py is crude but functional. Needed something quick, and this was it.
2014-04-26Simplify names for argcheck.c / arg parsing.Damien George
2014-04-26Add ARRAY_SIZE macro, and use it where possible.Damien George
2014-04-21stmhal: Update help text.Damien George
2014-04-21stmhal: Fix bug with pin GPIO reading.Damien George
2014-04-21stmhal, usrsw: Wrap usrsw.c in #if, for when switch is not available.Damien George
2014-04-21stmhal, accel: Add TODO comment.Damien George
2014-04-21stmhal, usrsw: Update comments for new switch API.Damien George
2014-04-21stmhal: Make switch a class, to follow suit of all other modules.Damien George
Instead of pyb.switch() as a function, it's more consistent (with respect to all the other modules and peripherals) to have pyb.Switch() create a switch object. This then generalises to having multiple switches. Call the object to get its state. Use sw.callback to set the callback function for when the switch is pressed.
2014-04-21stmhal, servo: Rename calibrate method to calibration.Damien George
It should be a noun, since it supports getting and setting depending on the number of arguments given.
2014-04-21stmhal, timer: Remove obsolete global variable.Damien George
2014-04-21stmhal: Add Timer class: simple TIM control, incl callback on IRQ.Damien George
Simple but functional timer control. More sophistication will eventually be added, or for now just use direct register access :) Also added pyb.freq() function to get MCU clock frequencies.
2014-04-21stmhal: Make DAC dynamically allocate instances; rename dma->write_timed.Damien George
2014-04-21stmhal: Clean up rtc.c a bit.Damien George
2014-04-21stmhal: Rename USART to UART.Damien George
It's really a UART because there is no external clock line (and hence no synchronous ability, at least in the implementation of this module). USART should be reserved for a module that has "S"ynchronous capabilities. Also, UART is shorter and easier to type :)
2014-04-21stmhal: Add some documentation to I2C, SPI and USART modules.Damien George
2014-04-21stmhal: Improve USART class, to be more like SPI and I2C.Damien George
The three classes I2C, SPI and USART now have a fairly uniform (Python) API. All are constructed, initialised and deinitialised in the same way. They can have most of their parameters set, using keyword arguments. All have send and recv (although slightly different with I2C requiring an address in master mode). recv can do inplace receiving (ie store the data in a previously-created bytearray). It's just polling mode at the moment, but interrupt and DMA would be nice to add.
2014-04-21stmhal, SPI and I2C: Improvements to functionality and consistency.Damien George
2014-04-20stmhal: Improved configurability for I2C and SPI busses.Damien George
The HAL handles for the I2C/SPI objects are rather large, so we don't want to unnecessarily include them.
2014-04-20Fix i2c and spi to compile for Netduino Plus 2Dave Hylands
2014-04-20stmhal: Small bug fixes and simplifications.Damien George
2014-04-20stmhal: Only init RNG if it's used.Damien George
2014-04-20stmhal: Update ExtInt to allow keyword arguments in constructor.Damien George
2014-04-20stmhal: Tidy up and improve consistency across modules.Damien George
2014-04-20stmhal: Add SPI class.Damien George
Also some updates to compile with latest changes to core py.
2014-04-19Merge branch 'master' of github.com:micropython/micropythonDamien George
2014-04-19stmhal: Add pyb.Pin.init method to re-init GPIO pin mode.Damien George
2014-04-19stmhal: Improve RTC class; make fatfs use RTC for time stamping files.Damien George
2014-04-19stmhal: Add pyb.unique_id, to get unique id of MCU.Damien George
2014-04-19stmhal: Update for mp_binary_get_size() refactor.Paul Sokolovsky
2014-04-19stmhal: Rename pyb.Led to pyb.LED to conform to naming rules.Damien George
It's Light Emitting Diode, so should be LED.
2014-04-19stmhal: Remove pyb.input (use sys.stdio.read(1) instead).Damien George
2014-04-19stmhal: Add lots of constants to stm module.Damien George
2014-04-18stmhal: Update ADC, DAC and I2C objects to use new buffer protocol.Damien George
Main reason for expanding buffer protocol API was to support writes to a buffer in ADC module (see read_timed). With this change you can now create an array of arbitrary type and ADC.read_timed will store into that array in the correct format (byte, int, float). I wonder though if all these changes were really worth it to support just this function. Hopefully this enhanced buffer protocol API (with typecode specified) will be used elsewhere.
2014-04-18stmhal: Update help and comments re gpio changing to Pin.Damien George
2014-04-18stmhal: Big cleanup; merge gpio into Pin; make names consistent.Damien George
This is an attempt to clean up the Micro Python API on the pyboard. Gpio functionality is now in the Pin object, which seems more natural. Constants for MODE and PULL are now in pyb.Pin. Names of some classes have been adjusted to conform to CamelCase. Other miscellaneous changes and clean up here and there.
2014-04-18stmhal: Remove non-ascii character from include file.Damien George
2014-04-17py: Rename USE_COMPUTED_GOTOS to USE_COMPUTED_GOTO and enable on stmhal.Damien George
On stmhal, computed gotos make the binary about 1k bigger, but makes it run faster, and we have the room, so why not. All tests pass on pyboard using computed gotos.
2014-04-17py: Fix pfenv_print_strn to return correct number of chars printed.Damien George
With this fix, all tests in tests/basics pass on pyboard.
2014-04-17build: Simplify build directory layout by putting all headers in genhdr.Damien George
Any generated headers go in $(BUILD)/genhdr/, and are #included as 'genhdr/xxx.h'.
2014-04-17Merge branch 'relocatable-build-dir' of github.com:lurch/micropython into ↵Damien George
lurch-relocatable-build-dir
2014-04-17Merge branch 'master' of github.com:micropython/micropythonDamien George
2014-04-17stmhal: Clean up fatality indications; remove long-obsolete malloc0.c.Damien George
2014-04-17stmhal: Change VID to 0xf055=FOSS, and PID to a random number.Damien George
Needs a better solution.
2014-04-17Merge pull request #500 from dhylands/fix-sdcard-removedDamien George
Fix to allow usbd_msc_storage.c to compile when MICROPY_HW_HAS_SDCARD is...
2014-04-17stmhal: Add more math functions.Damien George
Taken straight from musl and newlib. License seems compatible with MIT.
2014-04-17stmhal: Fix 64-byte USB packet bug properly.Damien George
A 64-byte packet is now followed by a 0-byte packet if there is nothing more to send. This flushes the USB endpoint.
2014-04-16stmhal: Replace magic number 3 with CDC_IN_EP define.Damien George
2014-04-16stmhal: Improve flash storage cache management.Damien George
Internal flash used for the filesystem is now written (from the cache) only after a 5s delay, or when a file is closed, or when the drive is unmounted from the host. This delay means that multiple writes can accumulate in the cache, and leads to less writes to the flash, making it last longer. It's implemented by a high-priority interrupt that takes care of flash erase and write, and flushing the cache. This is still only an interim solution for the flash filesystem. It eventually needs to be replaced with something that uses less RAM for the cache, something that can use more of the flash, and something that does proper wear levelling.
2014-04-16build directory can now be renamedAndrew Scheller
The autogenerated header files have been moved about, and an extra include dir has been added, which means you can give a custom BUILD=newbuilddir option to make, and everything "just works" Also tidied up the way the different Makefiles build their include- directory flags