Skip to content

Commit e8a195d

Browse files
committed
Merge remote-tracking branch 'refs/remotes/rogerclarkmelbourne/master'
2 parents 20fa1df + 43299e4 commit e8a195d

14 files changed

Lines changed: 654 additions & 326 deletions

File tree

STM32F1/boards.txt

Lines changed: 29 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -25,17 +25,15 @@ mapleMini.upload.auto_reset=true
2525
mapleMini.menu.bootloader_version.original = Original (17k RAM,108k Flash)
2626
mapleMini.menu.bootloader_version.original.build.vect=VECT_TAB_ADDR=0x8005000
2727
mapleMini.menu.bootloader_version.original.build.ldscript=ld/flash.ld
28-
mapleMini.menu.bootloader_version.original.upload.ram.maximum_size=17408
29-
mapleMini.menu.bootloader_version.original.upload.flash.maximum_size=110592
3028
mapleMini.menu.bootloader_version.original.upload.maximum_size=110592
29+
mapleMini.menu.bootloader_version.original.upload.maximum_data_size=17408
3130
mapleMini.menu.bootloader_version.original.upload.altID=1
3231

3332
mapleMini.menu.bootloader_version.bootloader20 = Bootloader 2.0 (20k RAM,120k Flash)
3433
mapleMini.menu.bootloader_version.bootloader20.build.vect=VECT_TAB_ADDR=0x8002000
3534
mapleMini.menu.bootloader_version.bootloader20.build.ldscript=ld/bootloader_20.ld
36-
mapleMini.menu.bootloader_version.bootloader20.upload.ram.maximum_size=20480
37-
mapleMini.menu.bootloader_version.bootloader20.upload.flash.maximum_size=122880
3835
mapleMini.menu.bootloader_version.bootloader20.upload.maximum_size=122880
36+
mapleMini.menu.bootloader_version.bootloader20.upload.maximum_data_size=20480
3937
mapleMini.menu.bootloader_version.bootloader20.upload.altID=2
4038

4139
#-- CPU Clock frequency
@@ -54,10 +52,9 @@ maple.pid.0=0x0004
5452
maple.upload.tool=maple_upload
5553
maple.upload.protocol=maple_dfu
5654
maple.upload.maximum_size=108000
55+
maple.upload.maximum_data_size=17000
5756
maple.upload.use_1200bps_touch=false
5857
maple.upload.file_type=bin
59-
maple.upload.ram.maximum_size=17000
60-
maple.upload.flash.maximum_size=108000
6158
maple.upload.usbID=1EAF:0003
6259
maple.upload.altID=1
6360
maple.upload.auto_reset=true
@@ -85,10 +82,9 @@ mapleRET6.build.vect=VECT_TAB_ADDR=0x8005000
8582
mapleRET6.upload.tool=maple_upload
8683
mapleRET6.upload.protocol=maple_dfu
8784
mapleRET6.upload.maximum_size=262144
85+
mapleRET6.upload.maximum_data_size=49152
8886
mapleRET6.upload.use_1200bps_touch=false
8987
mapleRET6.upload.file_type=bin
90-
mapleRET6.upload.ram.maximum_size=49152
91-
mapleRET6.upload.flash.maximum_size=262144
9288
mapleRET6.upload.usbID=1EAF:0003
9389
mapleRET6.upload.altID=1
9490
mapleRET6.upload.auto_reset=true
@@ -102,10 +98,9 @@ microduino32_flash.pid.0=0x0004
10298
microduino32_flash.upload.tool=maple_upload
10399
microduino32_flash.upload.protocol=maple_dfu
104100
microduino32_flash.upload.maximum_size=108000
101+
microduino32_flash.upload.maximum_data_size=17000
105102
microduino32_flash.upload.use_1200bps_touch=false
106103
microduino32_flash.upload.file_type=bin
107-
microduino32_flash.upload.ram.maximum_size=17000
108-
microduino32_flash.upload.flash.maximum_size=108000
109104
microduino32_flash.upload.usbID=1EAF:0003
110105
microduino32_flash.upload.altID=1
111106
microduino32_flash.upload.auto_reset=true
@@ -131,10 +126,9 @@ nucleo_f103rb.name=STM Nucleo F103RB (STLink)
131126
nucleo_f103rb.upload.tool=stlink_upload
132127
nucleo_f103rb.upload.protocol=maple_dfu
133128
nucleo_f103rb.upload.maximum_size=108000
129+
nucleo_f103rb.upload.maximum_data_size=17000
134130
nucleo_f103rb.upload.use_1200bps_touch=false
135131
nucleo_f103rb.upload.file_type=bin
136-
nucleo_f103rb.upload.ram.maximum_size=17000
137-
nucleo_f103rb.upload.flash.maximum_size=108000
138132
nucleo_f103rb.upload.params.quiet=no
139133

140134
nucleo_f103rb.upload.usbID=1EAF:0003
@@ -182,16 +176,14 @@ genericSTM32F103C.menu.device_variant.STM32F103C8=STM32F103C8 (20k RAM. 64k Flas
182176
genericSTM32F103C.menu.device_variant.STM32F103C8.build.cpu_flags=-DMCU_STM32F103C8
183177
genericSTM32F103C.menu.device_variant.STM32F103C8.build.ldscript=ld/jtag_c8.ld
184178
genericSTM32F103C.menu.device_variant.STM32F103C8.upload.maximum_size=65536
185-
genericSTM32F103C.menu.device_variant.STM32F103C8.upload.ram.maximum_size=20480
186-
genericSTM32F103C.menu.device_variant.STM32F103C8.upload.flash.maximum_size=65536
179+
genericSTM32F103C.menu.device_variant.STM32F103C8.upload.maximum_data_size=20480
187180

188181
## STM32F103CB -------------------------
189182
genericSTM32F103C.menu.device_variant.STM32F103CB=STM32F103CB (20k RAM. 128k Flash)
190183
genericSTM32F103C.menu.device_variant.STM32F103CB.build.cpu_flags=-DMCU_STM32F103CB
191184
genericSTM32F103C.menu.device_variant.STM32F103CB.build.ldscript=ld/jtag.ld
192185
genericSTM32F103C.menu.device_variant.STM32F103CB.upload.maximum_size=131072
193-
genericSTM32F103C.menu.device_variant.STM32F103CB.upload.ram.maximum_size=20480
194-
genericSTM32F103C.menu.device_variant.STM32F103CB.upload.flash.maximum_size=131072
186+
genericSTM32F103C.menu.device_variant.STM32F103C8.upload.maximum_data_size=20480
195187

196188
#---------------------------- UPLOAD METHODS ---------------------------
197189

@@ -219,7 +211,6 @@ genericSTM32F103C.menu.upload_method.BMPMethod.upload.protocol=gdb_bmp
219211
genericSTM32F103C.menu.upload_method.BMPMethod.upload.tool=bmp_upload
220212
genericSTM32F103C.menu.upload_method.BMPMethod.build.upload_flags=-DCONFIG_MAPLE_MINI_NO_DISABLE_DEBUG
221213

222-
223214
genericSTM32F103C.menu.upload_method.jlinkMethod=JLink
224215
genericSTM32F103C.menu.upload_method.jlinkMethod.upload.protocol=jlink
225216
genericSTM32F103C.menu.upload_method.jlinkMethod.upload.tool=jlink_upload
@@ -249,22 +240,21 @@ genericSTM32F103R.menu.device_variant.STM32F103R8=STM32F103R8 (20k RAM. 64k Flas
249240
genericSTM32F103R.menu.device_variant.STM32F103R8.build.variant=generic_stm32f103r8
250241
genericSTM32F103R.menu.device_variant.STM32F103R8.build.cpu_flags=-DMCU_STM32F103R8
251242
genericSTM32F103R.menu.device_variant.STM32F103R8.upload.maximum_size=65536
252-
genericSTM32F103R.menu.device_variant.STM32F103R8.upload.ram.maximum_size=20480
253-
genericSTM32F103R.menu.device_variant.STM32F103R8.upload.flash.maximum_size=65536
243+
genericSTM32F103R.menu.device_variant.STM32F103R8.upload.maximum_data_size=20480
254244
genericSTM32F103R.menu.device_variant.STM32F103R8.build.ldscript=ld/stm32f103r8.ld
255245

256246
genericSTM32F103R.menu.device_variant.STM32F103RB=STM32F103RB (20k RAM. 128k Flash)
257247
genericSTM32F103R.menu.device_variant.STM32F103RB.build.variant=generic_stm32f103r8
258248
genericSTM32F103R.menu.device_variant.STM32F103RB.build.cpu_flags=-DMCU_STM32F103RB
259249
genericSTM32F103R.menu.device_variant.STM32F103RB.upload.maximum_size=131072
260-
genericSTM32F103R.menu.device_variant.STM32F103RB.upload.ram.maximum_size=20480
261-
genericSTM32F103R.menu.device_variant.STM32F103RB.upload.flash.maximum_size=131072
250+
genericSTM32F103R.menu.device_variant.STM32F103RB.upload.maximum_data_size=20480
262251
genericSTM32F103R.menu.device_variant.STM32F103RB.build.ldscript=ld/stm32f103rb.ld
263252

264253
genericSTM32F103R.menu.device_variant.STM32F103RC=STM32F103RC (48k RAM. 256k Flash)
265254
genericSTM32F103R.menu.device_variant.STM32F103RC.build.variant=generic_stm32f103r
266255
genericSTM32F103R.menu.device_variant.STM32F103RC.build.cpu_flags=-DMCU_STM32F103RC
267256
genericSTM32F103R.menu.device_variant.STM32F103RC.upload.maximum_size=262144
257+
genericSTM32F103R.menu.device_variant.STM32F103RC.upload.maximum_data_size=49152
268258
genericSTM32F103R.menu.device_variant.STM32F103RC.upload.ram.maximum_size=49152
269259
genericSTM32F103R.menu.device_variant.STM32F103RC.upload.flash.maximum_size=262144
270260
genericSTM32F103R.menu.device_variant.STM32F103RC.build.ldscript=ld/stm32f103rc.ld
@@ -273,8 +263,7 @@ genericSTM32F103R.menu.device_variant.STM32F103RE=STM32F103RE (64k RAM. 512k Fla
273263
genericSTM32F103R.menu.device_variant.STM32F103RE.build.variant=generic_stm32f103r
274264
genericSTM32F103R.menu.device_variant.STM32F103RE.build.cpu_flags=-DMCU_STM32F103RE
275265
genericSTM32F103R.menu.device_variant.STM32F103RE.upload.maximum_size=524288
276-
genericSTM32F103R.menu.device_variant.STM32F103RE.upload.ram.maximum_size=65536
277-
genericSTM32F103R.menu.device_variant.STM32F103RE.upload.flash.maximum_size=524288
266+
genericSTM32F103R.menu.device_variant.STM32F103RE.upload.maximum_data_size=65536
278267
genericSTM32F103R.menu.device_variant.STM32F103RE.build.ldscript=ld/stm32f103re.ld
279268

280269
#---------------------------- UPLOAD METHODS ---------------------------
@@ -321,16 +310,14 @@ genericSTM32F103T.menu.device_variant.STM32F103T8=STM32F103T8 (20k RAM. 64k Flas
321310
genericSTM32F103T.menu.device_variant.STM32F103T8.build.cpu_flags=-DMCU_STM32F103T8
322311
genericSTM32F103T.menu.device_variant.STM32F103T8.build.ldscript=ld/jtag_t8.ld
323312
genericSTM32F103T.menu.device_variant.STM32F103T8.upload.maximum_size=65536
324-
genericSTM32F103T.menu.device_variant.STM32F103T8.upload.ram.maximum_size=20480
325-
genericSTM32F103T.menu.device_variant.STM32F103T8.upload.flash.maximum_size=65536
313+
genericSTM32F103T.menu.device_variant.STM32F103T8.upload.maximum_data_size=20480
326314

327315
## STM32F103TB -------------------------
328316
genericSTM32F103T.menu.device_variant.STM32F103TB=STM32F103TB (20k RAM. 128k Flash)
329317
genericSTM32F103T.menu.device_variant.STM32F103TB.build.cpu_flags=-DMCU_STM32F103TB
330318
genericSTM32F103T.menu.device_variant.STM32F103TB.build.ldscript=ld/jtag.ld
331319
genericSTM32F103T.menu.device_variant.STM32F103TB.upload.maximum_size=131072
332-
genericSTM32F103T.menu.device_variant.STM32F103TB.upload.ram.maximum_size=20480
333-
genericSTM32F103T.menu.device_variant.STM32F103TB.upload.flash.maximum_size=131072
320+
genericSTM32F103T.menu.device_variant.STM32F103TB.upload.maximum_data_size=20480
334321

335322
#---------------------------- UPLOAD METHODS ---------------------------
336323

@@ -377,22 +364,19 @@ genericSTM32F103V.build.error_led_pin=6
377364
genericSTM32F103V.menu.device_variant.STM32F103VC=STM32F103VC
378365
genericSTM32F103V.menu.device_variant.STM32F103VC.build.cpu_flags=-DMCU_STM32F103VC
379366
genericSTM32F103V.menu.device_variant.STM32F103VC.upload.maximum_size=262144
380-
genericSTM32F103V.menu.device_variant.STM32F103VC.upload.ram.maximum_size=49152
381-
genericSTM32F103V.menu.device_variant.STM32F103VC.upload.flash.maximum_size=262144
367+
genericSTM32F103V.menu.device_variant.STM32F103VC.upload.maximum_data_size=49152
382368
genericSTM32F103V.menu.device_variant.STM32F103VC.build.ldscript=ld/stm32f103vc.ld
383369

384370
genericSTM32F103V.menu.device_variant.STM32F103VD=STM32F103VD
385371
genericSTM32F103V.menu.device_variant.STM32F103VD.build.cpu_flags=-DMCU_STM32F103VD
386372
genericSTM32F103V.menu.device_variant.STM32F103VD.upload.maximum_size=393216
387-
genericSTM32F103V.menu.device_variant.STM32F103VD.upload.ram.maximum_size=65536
388-
genericSTM32F103V.menu.device_variant.STM32F103VD.upload.flash.maximum_size=393216
373+
genericSTM32F103V.menu.device_variant.STM32F103VD.upload.maximum_data_size=65536
389374
genericSTM32F103V.menu.device_variant.STM32F103VD.build.ldscript=ld/stm32f103vd.ld
390375

391376
genericSTM32F103V.menu.device_variant.STM32F103VE=STM32F103VE
392377
genericSTM32F103V.menu.device_variant.STM32F103VE.build.cpu_flags=-DMCU_STM32F103VE
393378
genericSTM32F103V.menu.device_variant.STM32F103VE.upload.maximum_size=524288
394-
genericSTM32F103V.menu.device_variant.STM32F103VE.upload.ram.maximum_size=65536
395-
genericSTM32F103V.menu.device_variant.STM32F103VE.upload.flash.maximum_size=524288
379+
genericSTM32F103V.menu.device_variant.STM32F103VE.upload.maximum_data_size=65536
396380
genericSTM32F103V.menu.device_variant.STM32F103VE.build.ldscript=ld/stm32f103ve.ld
397381

398382
#---------------------------- UPLOAD METHODS ---------------------------
@@ -437,22 +421,19 @@ genericSTM32F103Z.upload.auto_reset=true
437421
genericSTM32F103Z.menu.device_variant.STM32F103ZC=STM32F103ZC
438422
genericSTM32F103Z.menu.device_variant.STM32F103ZC.build.cpu_flags=-DMCU_STM32F103ZC
439423
genericSTM32F103Z.menu.device_variant.STM32F103ZC.upload.maximum_size=262144
440-
genericSTM32F103Z.menu.device_variant.STM32F103ZC.upload.ram.maximum_size=49152
441-
genericSTM32F103Z.menu.device_variant.STM32F103ZC.upload.flash.maximum_size=262144
424+
genericSTM32F103Z.menu.device_variant.STM32F103ZC.upload.maximum_data_size=49152
442425
genericSTM32F103Z.menu.device_variant.STM32F103ZC.build.ldscript=ld/stm32f103zc.ld
443426

444427
genericSTM32F103Z.menu.device_variant.STM32F103ZD=STM32F103ZD
445428
genericSTM32F103Z.menu.device_variant.STM32F103ZD.build.cpu_flags=-DMCU_STM32F103ZD
446429
genericSTM32F103Z.menu.device_variant.STM32F103ZD.upload.maximum_size=393216
447-
genericSTM32F103Z.menu.device_variant.STM32F103ZD.upload.ram.maximum_size=65536
448-
genericSTM32F103Z.menu.device_variant.STM32F103ZD.upload.flash.maximum_size=393216
430+
genericSTM32F103Z.menu.device_variant.STM32F103ZD.upload.maximum_data_size=65536
449431
genericSTM32F103Z.menu.device_variant.STM32F103ZD.build.ldscript=ld/stm32f103zd.ld
450432

451433
genericSTM32F103Z.menu.device_variant.STM32F103ZE=STM32F103ZE
452434
genericSTM32F103Z.menu.device_variant.STM32F103ZE.build.cpu_flags=-DMCU_STM32F103ZE
453435
genericSTM32F103Z.menu.device_variant.STM32F103ZE.upload.maximum_size=524288
454-
genericSTM32F103Z.menu.device_variant.STM32F103ZE.upload.ram.maximum_size=65536
455-
genericSTM32F103Z.menu.device_variant.STM32F103ZE.upload.flash.maximum_size=524288
436+
genericSTM32F103Z.menu.device_variant.STM32F103ZE.upload.maximum_data_size=65536
456437
genericSTM32F103Z.menu.device_variant.STM32F103ZE.build.ldscript=ld/stm32f103ze.ld
457438

458439
#---------------------------- UPLOAD METHODS ---------------------------
@@ -498,9 +479,7 @@ hytiny-stm32f103t.upload.auto_reset=true
498479
hytiny-stm32f103t.build.cpu_flags=-DMCU_STM32F103CB
499480
hytiny-stm32f103t.build.ldscript=ld/jtag.ld
500481
hytiny-stm32f103t.upload.maximum_size=131072
501-
hytiny-stm32f103t.upload.ram.maximum_size=20480
502-
hytiny-stm32f103t.upload.flash.maximum_size=131072
503-
482+
hytiny-stm32f103t.upload.maximum_data_size=20480
504483

505484
#---------------------------- UPLOAD METHODS ---------------------------
506485

@@ -548,20 +527,17 @@ genericGD32F103C.upload.auto_reset=true
548527
genericGD32F103C.build.cpu_flags=-DMCU_STM32F103CB
549528
genericGD32F103C.build.f_cpu=72000000L
550529

551-
## GD32F103CB -------------------------
552-
genericGD32F103C.menu.device_variant.GD32F103CB=GD32F103CB (20k RAM. 128k Flash)
553-
genericGD32F103C.menu.device_variant.GD32F103CB.build.ldscript=ld/jtag.ld
554-
genericGD32F103C.menu.device_variant.GD32F103CB.upload.maximum_size=131072
555-
genericGD32F103C.menu.device_variant.GD32F103CB.upload.ram.maximum_size=20480
556-
genericGD32F103C.menu.device_variant.GD32F103CB.upload.flash.maximum_size=131072
557-
558-
559530
## GD32F103C8 -------------------------
560531
genericGD32F103C.menu.device_variant.GD32F103C8=GD32F103C8 (20k RAM. 64k Flash)
561532
genericGD32F103C.menu.device_variant.GD32F103C8.build.ldscript=ld/jtag_c8.ld
562533
genericGD32F103C.menu.device_variant.GD32F103C8.upload.maximum_size=65536
563-
genericGD32F103C.menu.device_variant.GD32F103C8.upload.ram.maximum_size=20480
564-
genericGD32F103C.menu.device_variant.GD32F103C8.upload.flash.maximum_size=65536
534+
genericGD32F103C.menu.device_variant.GD32F103C8.upload.maximum_data_size=20480
535+
536+
## GD32F103CB -------------------------
537+
genericGD32F103C.menu.device_variant.GD32F103CB=GD32F103CB (20k RAM. 128k Flash)
538+
genericGD32F103C.menu.device_variant.GD32F103CB.build.ldscript=ld/jtag.ld
539+
genericGD32F103C.menu.device_variant.GD32F103CB.upload.maximum_size=131072
540+
genericGD32F103C.menu.device_variant.GD32F103CB.upload.maximum_data_size=20480
565541

566542
#---------------------------- UPLOAD METHODS ---------------------------
567543

@@ -620,8 +596,8 @@ STM32VLD.upload.auto_reset=true
620596
STM32VLD.upload.params.quiet=no
621597

622598
STM32VLD.build.cpu_flags=-DMCU_STM32F100RB
623-
##---------------------------- UPLOAD METHODS ---------------------------
624599

600+
#---------------------------- UPLOAD METHODS ---------------------------
625601

626602
STM32VLD.menu.upload_method.STLinkMethod=STLink
627603
STM32VLD.menu.upload_method.STLinkMethod.upload.protocol=STLink

STM32F1/cores/maple/HardwareTimer.cpp

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -142,6 +142,11 @@ void HardwareTimer::refresh(void) {
142142
timer_generate_update(this->dev);
143143
}
144144

145+
void HardwareTimer::setMasterModeTrGo(uint32_t mode) {
146+
this->dev->regs.bas->CR2 &= ~TIMER_CR2_MMS;
147+
this->dev->regs.bas->CR2 |= mode;
148+
}
149+
145150
/* CARLOS Changes to add encoder mode.*/
146151

147152
//direction of movement. (to be better described).

STM32F1/cores/maple/HardwareTimer.h

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -209,6 +209,23 @@ class HardwareTimer {
209209
*/
210210
void refresh(void);
211211

212+
// SYFRE
213+
/**
214+
* @brief Set the Master mode TRGO signal
215+
* These bits allow to select the information to be sent in master mode to slave timers for
216+
* synchronization (TRGO).
217+
* mode:
218+
* TIMER_CR2_MMS_RESET
219+
* TIMER_CR2_MMS_ENABLE
220+
* TIMER_CR2_MMS_UPDATE
221+
* TIMER_CR2_MMS_COMPARE_PULSE
222+
* TIMER_CR2_MMS_COMPARE_OC1REF
223+
* TIMER_CR2_MMS_COMPARE_OC2REF
224+
* TIMER_CR2_MMS_COMPARE_OC3REF
225+
* TIMER_CR2_MMS_COMPARE_OC4REF
226+
*/
227+
void setMasterModeTrGo(uint32_t mode);
228+
212229
//CARLOS.
213230
/*
214231
added these functions to make sense for the encoder mode.

STM32F1/cores/maple/libmaple/adc.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@ void adc_set_extsel(adc_dev *dev, adc_extsel_event event) {
5959
uint32 cr2 = dev->regs->CR2;
6060
cr2 &= ~ADC_CR2_EXTSEL;
6161
cr2 |= event;
62+
cr2 |= ADC_CR2_EXTTRIG;
6263
dev->regs->CR2 = cr2;
6364
}
6465

STM32F1/cores/maple/usb_serial.cpp

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -168,6 +168,19 @@ uint32 USBSerial::read(uint8 * buf, uint32 len) {
168168
return rxed;
169169
}
170170

171+
size_t USBSerial::readBytes(char *buf, const size_t& len)
172+
{
173+
size_t rxed=0;
174+
unsigned long startMillis;
175+
startMillis = millis();
176+
if (len <= 0) return 0;
177+
do {
178+
rxed += usb_cdcacm_rx((uint8 *)buf + rxed, len - rxed);
179+
if (rxed == len) return rxed;
180+
} while(millis() - startMillis < _timeout);
181+
return rxed;
182+
}
183+
171184
/* Blocks forever until 1 byte is received */
172185
int USBSerial::read(void) {
173186
uint8 b;

STM32F1/cores/maple/usb_serial.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ class USBSerial : public Stream {
5151

5252
virtual int available(void);// Changed to virtual
5353

54+
size_t readBytes(char *buf, const size_t& len);
5455
uint32 read(uint8 * buf, uint32 len);
5556
// uint8 read(void);
5657

0 commit comments

Comments
 (0)