Commit Graph

169 Commits

Author SHA1 Message Date
Roger Clark 54dd788f2b Fix warning caused by commit #f7a576f2e0efcee958bdfd737d9af7a2f6c76051 2017-07-06 10:57:20 +10:00
Roger Clark 385dfbf29c Merge pull request #270 from SukkoPera/Fix-ifSerial
Added "if serial" and deprecated isConnected()
2017-07-06 08:36:20 +10:00
Roger Clark 6891e40546 Merge pull request #288 from MicroBahner/pinmodeTimer
Added Pinmode timer fix by @MicroBahner
2017-07-03 15:35:30 +10:00
Roger Clark f7a576f2e0 Fixed issue with PB10 being set to OUTPUT for use as a USB Disconnect control on boards which do not have the additional USB disconnect hardware e.g. the Blue Pill. Note. Some variants seem to have the disconnect control on another pin, so I did not change those in case they were actually used 2017-06-25 13:08:30 +10:00
SukkoPera ef60992e20 Merge remote-tracking branch 'upstream/master' into Fix-ifSerial 2017-06-09 22:11:52 +02:00
Roger Clark 3c4307ebac Fix issue where USB Serial begin(xx) begin(xx,yy) did nothing, when they should ahave called begin() 2017-06-07 14:00:24 +10:00
Roger Clark 1e88fcfc61 Merge branch 'Avoid_USB_init_twice' of https://github.com/hanyazou/Arduino_STM32 into hanyazou-Avoid_USB_init_twice 2017-06-07 08:19:07 +10:00
Roger Clark 8477fba5d5 Merge branch 'master' into stevstrong-F1_SPI_development 2017-06-06 20:54:17 +10:00
Roger Clark df78777e98 Add yield() call in delay() to support the Arduino Scheduler library. Ref issue #299 2017-06-06 20:45:50 +10:00
Zou Hanya 9ae2f6fa78 Avoid initializing USB serial twice 2017-06-03 08:27:33 +09:00
Roger Clark 920b57a4a9 Merge pull request #272 from grafalex82/patch_2
Compiler warning fixed in gpio_get_mode
2017-05-29 10:43:42 +10:00
Roger Clark b19fc38e5e Applied change to fix issue in itoa.c and itoa.h with newer versions of GCC (using the changes from STM's fix, in Arduino_Core_STM32) 2017-05-26 17:00:47 +10:00
MicroBahner ba4f3808c2 channel output disabled in non pwm-mode
pwmMode disables the channel output in non pwm modes.
Attached ISRs are left unchanged
2017-05-20 16:11:00 +02:00
edogaldo 3d5c54e344 Make HardwareSerial.flush() compatible with Arduino 1.0 api 2017-05-16 00:00:59 +02:00
MicroBahner 20fbc3613d donot disable Timer in pinMode 2017-05-14 21:21:03 +02:00
SukkoPera ad51f6f8f8 Avoid usage of deprecated function 2017-05-09 23:16:47 +02:00
SukkoPera 54cd854161 Tag isConnected() with __attribute__(deprecated) 2017-05-09 23:16:10 +02:00
syfre 50e4d84db4 Add, setMasterModeTrGo to configure the TrGo mode
Use to trigger the ADC on TIMx_TRGO
2017-05-06 23:03:47 +02:00
syfre 30d1bf4900 Fix, add ADC_CR2_EXTTRIG to adc_set_extsel() to enable the external trigger mode 2017-05-06 23:02:54 +02:00
Oleksandr Masliuchenko 0590f27afa Compiler warning fixed 2017-04-22 16:27:30 +03:00
SukkoPera 81b1b08b95 Fix return type 2017-04-18 23:25:36 +02:00
Giorgioggì 38525521fd Update usb_serial.cpp 2017-04-18 12:44:10 +02:00
Giorgioggì 0be991b434 Update usb_serial.h 2017-04-18 12:43:01 +02:00
Giorgioggì cbfb87222f Fix indentation 2017-04-18 12:24:06 +02:00
stevstrong ff53626018 Merge remote-tracking branch 'refs/remotes/rogerclarkmelbourne/master' 2017-04-13 22:54:12 +02:00
stevstrong 83e5f48322 remove "deprecated" flag from dma_setup_transfer
remove deprecated flag
2017-04-13 22:34:37 +02:00
Roger Clark c2f4aa8566 Fixed tone() so it works is F_CPU is not 72Mhz 2017-01-09 21:17:28 +11:00
stevstrong 22fad7582d Merge remote-tracking branch 'refs/remotes/rogerclarkmelbourne/master' 2016-12-26 15:13:43 +01:00
Roger Clark 71a198a1d0 Fix problems with tone functions 2016-12-12 17:57:50 +11:00
stevstrong e7456e1916 further optimizations
- extend read function to 16bit
- add repeated write the same byte/word a specified number of time
- revert increment option to dmaSend
2016-12-10 22:36:21 +01:00
Roger Clark dd453357b3 Added shiftIn to F1 and F4 2016-12-08 20:00:20 +11:00
Roger Clark e71d176618 Fixed issue with tone for high density devices 2016-12-02 21:33:01 +11:00
Roger Clark 378cd2a6af Fixed #231 2016-11-30 17:27:21 +11:00
Roger Clark 9237d3afc8 Add new.cpp from Arduino SAMD to resolve issue with new operator pulling in loads of library functions and taking loads of flash 2016-11-30 10:14:27 +11:00
Roger Clark 20fa7b4f30 Fixed issue with tone not compiling 2016-11-29 15:52:16 +11:00
Roger Clark 71a1121c9f Fixed issue with tone files not actually being added to the repo in a previous commit 2016-11-29 15:18:16 +11:00
stevstrong b2e349ca36 Revert "Revert "improve SPI low level functions""
This reverts commit 3469ef291b.
2016-11-11 22:12:13 +01:00
stevstrong 3469ef291b Revert "improve SPI low level functions"
This reverts commit 5db2523284.
2016-11-11 22:04:16 +01:00
Roger Clark 8345e6f075 Copied individual files from @stevestong master 2016-11-10 20:06:23 +11:00
stevstrong 5db2523284 improve SPI low level functions
- optimize code and run-time
2016-10-31 22:29:40 +01:00
stevstrong 4bc4b1d6bd remove unused functions + adapt passed parameter
- remove unused functions form usb_reg_map
- change passed buffer type to uint8 *
2016-10-31 22:12:04 +01:00
stevstrong 529f844ff9 Merge remote-tracking branch 'refs/remotes/rogerclarkmelbourne/master' 2016-10-31 22:06:09 +01:00
stevstrong 42cb8b5bc8 small change
- revert local variable to uint8 in Serial.read
2016-10-21 23:01:45 +02:00
stevstrong 0ec7e72b01 improved USB serial Rx and implemented buffered Tx 2016-10-21 22:31:27 +02:00
xymopen 1d321b6b70 merge minor API changes of IPAddress, Print, Stream and WString from official Arduion core source. LookaheadMode is still under evaluation. 2016-10-22 03:57:13 +08:00
stevstrong 073aa23ed2 Merge remote-tracking branch 'refs/remotes/rogerclarkmelbourne/master' 2016-10-16 23:02:16 +02:00
stevstrong d0c5a952b0 Revert "solve sync problems"
This reverts commit fca26524a9.
2016-10-16 22:57:44 +02:00
stevstrong fca26524a9 solve sync problems 2016-10-16 22:55:40 +02:00
stevstrong a40898dbfe try to sync 2016-10-16 22:42:37 +02:00
stevstrong 19e89fd269 revert to Jaret's version 2016-10-16 20:14:11 +02:00
Roger Clark 0e6b2000c8 Merge branch 'bubulindo-master' 2016-10-16 13:19:37 +11:00
jaretburkett f9301a6acf USB core and CDC fixes 2016-10-13 07:06:29 -05:00
stevstrong 8f847cc786 Merge remote-tracking branch 'refs/remotes/rogerclarkmelbourne/master' 2016-10-12 19:19:03 +02:00
stevstrong 6d4965b5c8 improve USB serial Rx speed + make USB serial Tx blocking to avoid overflow 2016-10-12 19:18:38 +02:00
Roger Clark 9147a461e7 Merge branch 'master' of https://github.com/bubulindo/Arduino_STM32 into bubulindo-master 2016-09-26 10:42:42 +10:00
victzh 3efde692e7 Fix return value for Print::write(const void *buffer, uint32 size)
Print::write(const void *buffer, uint32 size) always returns 0, which is against specification. This patch fixes it.
2016-09-25 18:31:59 -04:00
Bubulindo 0b34af3b6a Minor bug fixes now that I have a ZET6
While using a different board, I realized that I did not configure the
ADC on all variants and there is a minor bug on the irq_num for
advanced 103 devices.
2016-09-25 13:14:12 +01:00
Bubulindo 5c13d8b0d4 Addition of a better way to deal with the Onboard ADC.
This modification adds support for a STM32ADC library. There are a
couple of examples on how to use it. The library allows usage of the
ADC with DMA in circular mode or scan mode, it allows the ADC to be
used in scan mode. And also to use the EOC interrupt.
More functionality needs to be added and will be in time.

Eventually the util files will be moved into the adc files in the core.
2016-09-23 16:35:18 +01:00
stevstrong 43b3376881 Merge remote-tracking branch 'refs/remotes/rogerclarkmelbourne/master' 2016-09-23 17:07:49 +02:00
stevstrong a98a47d379 Merge remote-tracking branch 'refs/remotes/rogerclarkmelbourne/master' 2016-07-25 23:30:10 +02:00
stevstrong efbbe6a4be Merge remote-tracking branch 'refs/remotes/rogerclarkmelbourne/master' 2016-07-25 23:22:02 +02:00
edogaldo 14b9f338f4 Merge remote-tracking branch 'refs/remotes/rogerclarkmelbourne/master' into F1-USART---buffered-interrupt-based-TX-(static-TX-buffer) 2016-07-19 13:13:20 +02:00
edogaldo d353dd3022 Slight changes 2016-07-19 12:56:11 +02:00
edogaldo 7ba9065895 Fix HardwareSerial::flush() 2016-07-18 11:49:46 +02:00
Roger Clark 388e8efeb6 Fixed issue in F1 and F3 with HardwareSerial read(), which should return -1 if no data in the input buffer, (be non-blocking) 2016-07-18 16:20:24 +10:00
edogaldo 3a5f8cfc1b Wait for TX completed in usart_disable() 2016-07-14 19:14:56 +02:00
edogaldo 51d2d9e0d9 F1 USART - buffered interrupt-based TX (static TX buffer)
usart.h: statically define TX buffer like RX buffer. TX buffer size
defined in USART_TX_BUF_SIZE
usart.h: add function usart_reset_tx() to reset TX buffer (same as for
RX bufferI)
usart.c: usart_init() changed to init TX buffer
usart.c: usart_disable() changed to reset TX buffer
usart.c: usart_tx() changed to use TX buffer and manage interrupt TXEIE
usart_f1.c: changed to instantiate TX buffers
usart_private.h: changed interrupt handler to manage TXEIE
2016-07-11 12:52:24 +02:00
roger@rogerclark.net b5a5e67ad0 Added missing API functions microsecondsToClockCycles etc 2016-05-13 06:17:59 +10:00
Roger Clark f1a394e4bc Merge branch '54-always_inline' of https://github.com/RickKimball/Arduino_STM32 into development 2016-05-05 11:28:59 +10:00
Rick Kimball f9aa37ed01 fix compiler warnings related to __always_inline 2016-05-03 13:04:54 -04:00
Roger Clark e9e9048a31 Added new file WCharacter.h, and updated String files to add missing Arduino API functionality 2016-05-03 21:01:09 +10:00
Roger Clark 0909f4c20d Changed defines for MOSI, MISO etc into const static vars, to address compatibility issues 2016-05-03 20:23:51 +10:00
Roger Clark f7c80bd73b Merge pull request #166 from martinayotte/master
Add toString() helper to IPAddress class (as already implemented on the F4)
2016-03-01 16:27:01 +11:00
Roger Clark 246a172250 Merge branch 'master' of https://github.com/geekylou/Arduino_STM32 into geekylou-master 2016-03-01 16:21:28 +11:00
Martin Ayotte 3d15c75a27 add toString() helper to IPAddress class 2016-02-29 12:12:57 -05:00
Louise Newberry 1f13f47552 The previous fix should probably be in is connected rather than the write function so moving it there. 2016-02-22 22:18:55 +00:00
Louise Newberry 618ffd069d Check USB DTR is active before sending data down the USB port (this should only be active when the port is connected to a terminal). 2016-02-22 22:02:45 +00:00
Louise Newberry 20331cea64 Make sure both USB_ISTR_SUSP & USB_ISTR_WKUP are both cleared when USB susppends or resumes. This is required as when we see a suspend event it looks like we immediately afterwords trigger a resume from the bit being set previously. 2016-02-13 11:35:44 +00:00
stevstrong 4932a309f2 reworked update SPI settings
remove entirely the disturbing glitches on SCK line
2015-12-06 16:15:00 +01:00
Roger Clark 9cfb240ec1 Merge branch 'stevstrong-master' into development 2015-11-20 20:23:57 +11:00
Roger Clark fe950a35db Merge branch 'master' of https://github.com/stevstrong/Arduino_STM32 into stevstrong-master 2015-11-20 20:23:34 +11:00
stevstrong b920cdc6a2 serial config when parity is enabled
When parity enabled the word length must be increased (CR1 bit 12 set).
Word length of 9 bit with parity is not supported.
2015-11-19 21:11:45 +01:00
stevstrong 7d2b43018f bugfix - serial config parameter cannot be set
function usart_init must be called before usart_config_gpios_async
2015-11-19 14:01:23 +01:00
stevstrong 17cbf256d1 corrected defines needed when parity is used
When the parity control is enabled, the computed parity is inserted at the MSB position (9th bit if M=1; 8th bit if M=0) and parity is checked on the received data. This excludes 9 bit long words + parity bit.
2015-11-19 11:50:13 +01:00
Roger Clark 842d8ee580 Manually updated fix by @jcw for serial usb slow down 2015-11-05 20:28:09 +11:00
Jean-Claude Wippler 85eb51aacb wait for time to elapse instead of a cycle-counting loop 2015-10-31 16:25:42 +01:00
Roger Clark 07cf09a358 Merge pull request #128 from Serasidis/master
Added missing Ethernet library files to STM32F1 (note the same needs to be done to GD32F1 eventually)
2015-10-31 16:36:34 +11:00
Vassilis Serasidis a56c92e0f4 Added missing Ethernet library files 2015-10-29 21:19:47 +02:00
rogerclarkmelbourne 784c7beac5 Added _BV macro fro AVR compatibility 2015-10-27 21:06:00 +11:00
Bubulindo 73f2301cad Timer as Encoder
Added support to use HardwareTimer as an encoder input
2015-09-11 15:24:37 +01:00
Roger Clark 88d2457f30 STM32F1 core: Implemented changes already made to the GD32F1 core to use F_CPU instead of hard coded values for 72000000 and (F_CPU -1) instead of 71999999 and to replace other hard coded values related to the clock freqency. Also updated the code so that the USB clock was disabled in setup_clock_prescalers to allow it to be changed in that function during initialisation, in case altermative prescaler values for USB are required, e.g. for operation at 48Mhz 2015-09-06 07:51:40 +10:00
victorpv 7564830669 Edits to move pinmap to flash
Initial comit, not tested, but copied from previous working folder.
2015-08-25 00:02:57 -05:00
Fergus 572b311c3a Fixed formatting to match existing style + Hardwire comments 2015-08-01 19:09:43 +01:00
Fergus 3b8b7a79f4 Bugfix for HardWire/I2C + configured/compiled dfu-util to work on Linux again
- Fixed 0 byte payload bug, stopping HardWire from sending only addresses to scan for devices
 - Fixed I2C bug accessing wrong status register for error flags
 - Improved Hardwire endTransmission() return flags to correspond with the actual I2C failure status
 - Removed dos endings from dfu-util autogen script breaking compilation
2015-08-01 18:58:14 +01:00
Roger Clark 6d18be66ad Move Timer ISR handlers from timer_f1.c to timer.c to resolve linker issue in which some ISR's were not being linked even though they were being used 2015-07-05 22:38:47 +10:00
Roger Clark 1d7a0bc21b Fix issue with default SPI pin definitions in wirish.h being incorrect (as they were the pin definitions for AVR boards). wirish.h now uses the pin definitions defined in board.h for whatever variant is selected 2015-07-05 03:08:34 +10:00
Roger Clark 657d6dae02 Alternative / better fix provided by @pico based on work by @victor_pv. Commented out AF REMAP of NSS in spi_f1.c 2015-06-10 10:33:13 +10:00
rogerclarkmelbourne ece9c3681d Added code to 'get' the gpio mode of a pin, and have used it in SPIClass::begin() to store and reinstate the pin mode of the SPI NSS pin. This is a work around for 'features' in the STM32 silicon, which seem to change the GPIO mode of the SPI NSS (hardware - 'Software Select' pin) 2015-06-10 10:25:22 +10:00
rogerclarkmelbourne f337329c89 Undid changes to isrs.s from last merge (its not practical to undo the remove, its easier just to replace the file in question with the older / working version 2015-06-02 08:05:32 +10:00
rogerclarkmelbourne 97604fe455 Replaced isrs.s with new version from victor_pv with improved system for weak refs to isr handlers 2015-06-01 19:19:37 +10:00