|
63 | 63 | * [3. Argument_None on STM32F7 Nucleo-144 NUCLEO_F767ZI](#3-argument_none-on-stm32f7-nucleo-144-nucleo_f767zi) |
64 | 64 | * [4. Change_Interval on STM32F7 Nucleo-144 NUCLEO_F767ZI](#4-change_interval-on-stm32f7-nucleo-144-nucleo_f767zi) |
65 | 65 | * [5. ISR_16_Timers_Array_Complex on STM32F7 Nucleo-144 NUCLEO_F767ZI](#5-isr_16_timers_array_complex-on-stm32f7-nucleo-144-nucleo_f767zi) |
| 66 | + * [6. ISR_16_Timers_Array_Complex on STM32F1 BLUEPILL_F103C8](#6-isr_16_timers_array_complex-on-stm32f1-bluepill_f103c8) |
66 | 67 | * [Debug](#debug) |
67 | 68 | * [Troubleshooting](#troubleshooting) |
68 | 69 | * [Releases](#releases) |
@@ -1302,6 +1303,160 @@ Timer : 14, programmed : 75000, actual : 75010 |
1302 | 1303 | Timer : 15, programmed : 80000, actual : 80009 |
1303 | 1304 | ``` |
1304 | 1305 |
|
| 1306 | +--- |
| 1307 | + |
| 1308 | +### 6. ISR_16_Timers_Array_Complex on STM32F1 BLUEPILL_F103C8 |
| 1309 | + |
| 1310 | +The following is the sample terminal output when running new example [ISR_16_Timers_Array_Complex](examples/ISR_16_Timers_Array_Complex) on **STM32F1 BLUEPILL_F103C8** to demonstrate the accuracy of ISR Hardware Timer, **especially when system is very busy or blocked**. The 16 independent ISR timers are **programmed to be activated repetitively after certain intervals, is activated exactly after that programmed interval !!!** |
| 1311 | + |
| 1312 | +While software timer, **programmed for 2s, is activated after 10.000s in loop()!!!**. |
| 1313 | + |
| 1314 | +In this example, 16 independent ISR Timers are used, yet utilized just one Hardware Timer. The Timer Intervals and Function Pointers are stored in arrays to facilitate the code modification. |
| 1315 | + |
| 1316 | +``` |
| 1317 | +Starting ISR_16_Timers_Array_Complex on BLUEPILL_F103C8 |
| 1318 | +STM32TimerInterrupt v1.2.0 |
| 1319 | +CPU Frequency = 72 MHz |
| 1320 | +Starting ITimer OK, millis() = 8880 |
| 1321 | +SimpleTimer : 2, ms : 18880, Dms : 10000 |
| 1322 | +Timer : 0, programmed : 5000, actual : 5001 |
| 1323 | +Timer : 1, programmed : 10000, actual : 0 |
| 1324 | +Timer : 2, programmed : 15000, actual : 0 |
| 1325 | +Timer : 3, programmed : 20000, actual : 0 |
| 1326 | +Timer : 4, programmed : 25000, actual : 0 |
| 1327 | +Timer : 5, programmed : 30000, actual : 0 |
| 1328 | +Timer : 6, programmed : 35000, actual : 0 |
| 1329 | +Timer : 7, programmed : 40000, actual : 0 |
| 1330 | +Timer : 8, programmed : 45000, actual : 0 |
| 1331 | +Timer : 9, programmed : 50000, actual : 0 |
| 1332 | +Timer : 10, programmed : 55000, actual : 0 |
| 1333 | +Timer : 11, programmed : 60000, actual : 0 |
| 1334 | +Timer : 12, programmed : 65000, actual : 0 |
| 1335 | +Timer : 13, programmed : 70000, actual : 0 |
| 1336 | +Timer : 14, programmed : 75000, actual : 0 |
| 1337 | +Timer : 15, programmed : 80000, actual : 0 |
| 1338 | +SimpleTimer : 2, ms : 28881, Dms : 10001 |
| 1339 | +Timer : 0, programmed : 5000, actual : 5000 |
| 1340 | +Timer : 1, programmed : 10000, actual : 10000 |
| 1341 | +Timer : 2, programmed : 15000, actual : 15000 |
| 1342 | +Timer : 3, programmed : 20000, actual : 20000 |
| 1343 | +Timer : 4, programmed : 25000, actual : 0 |
| 1344 | +Timer : 5, programmed : 30000, actual : 0 |
| 1345 | +Timer : 6, programmed : 35000, actual : 0 |
| 1346 | +Timer : 7, programmed : 40000, actual : 0 |
| 1347 | +Timer : 8, programmed : 45000, actual : 0 |
| 1348 | +Timer : 9, programmed : 50000, actual : 0 |
| 1349 | +Timer : 10, programmed : 55000, actual : 0 |
| 1350 | +Timer : 11, programmed : 60000, actual : 0 |
| 1351 | +Timer : 12, programmed : 65000, actual : 0 |
| 1352 | +Timer : 13, programmed : 70000, actual : 0 |
| 1353 | +Timer : 14, programmed : 75000, actual : 0 |
| 1354 | +Timer : 15, programmed : 80000, actual : 0 |
| 1355 | +SimpleTimer : 2, ms : 38882, Dms : 10001 |
| 1356 | +Timer : 0, programmed : 5000, actual : 5000 |
| 1357 | +Timer : 1, programmed : 10000, actual : 10000 |
| 1358 | +Timer : 2, programmed : 15000, actual : 15000 |
| 1359 | +Timer : 3, programmed : 20000, actual : 20000 |
| 1360 | +Timer : 4, programmed : 25000, actual : 25000 |
| 1361 | +Timer : 5, programmed : 30000, actual : 30000 |
| 1362 | +Timer : 6, programmed : 35000, actual : 0 |
| 1363 | +Timer : 7, programmed : 40000, actual : 0 |
| 1364 | +Timer : 8, programmed : 45000, actual : 0 |
| 1365 | +Timer : 9, programmed : 50000, actual : 0 |
| 1366 | +Timer : 10, programmed : 55000, actual : 0 |
| 1367 | +Timer : 11, programmed : 60000, actual : 0 |
| 1368 | +Timer : 12, programmed : 65000, actual : 0 |
| 1369 | +Timer : 13, programmed : 70000, actual : 0 |
| 1370 | +Timer : 14, programmed : 75000, actual : 0 |
| 1371 | +Timer : 15, programmed : 80000, actual : 0 |
| 1372 | +SimpleTimer : 2, ms : 48883, Dms : 10001 |
| 1373 | +Timer : 0, programmed : 5000, actual : 5000 |
| 1374 | +Timer : 1, programmed : 10000, actual : 10000 |
| 1375 | +Timer : 2, programmed : 15000, actual : 15000 |
| 1376 | +Timer : 3, programmed : 20000, actual : 20000 |
| 1377 | +Timer : 4, programmed : 25000, actual : 25000 |
| 1378 | +Timer : 5, programmed : 30000, actual : 30000 |
| 1379 | +Timer : 6, programmed : 35000, actual : 35000 |
| 1380 | +Timer : 7, programmed : 40000, actual : 40000 |
| 1381 | +Timer : 8, programmed : 45000, actual : 0 |
| 1382 | +Timer : 9, programmed : 50000, actual : 0 |
| 1383 | +Timer : 10, programmed : 55000, actual : 0 |
| 1384 | +Timer : 11, programmed : 60000, actual : 0 |
| 1385 | +Timer : 12, programmed : 65000, actual : 0 |
| 1386 | +Timer : 13, programmed : 70000, actual : 0 |
| 1387 | +Timer : 14, programmed : 75000, actual : 0 |
| 1388 | +Timer : 15, programmed : 80000, actual : 0 |
| 1389 | +SimpleTimer : 2, ms : 58884, Dms : 10001 |
| 1390 | +Timer : 0, programmed : 5000, actual : 5000 |
| 1391 | +Timer : 1, programmed : 10000, actual : 10000 |
| 1392 | +Timer : 2, programmed : 15000, actual : 15000 |
| 1393 | +Timer : 3, programmed : 20000, actual : 20000 |
| 1394 | +Timer : 4, programmed : 25000, actual : 25000 |
| 1395 | +Timer : 5, programmed : 30000, actual : 30000 |
| 1396 | +Timer : 6, programmed : 35000, actual : 35000 |
| 1397 | +Timer : 7, programmed : 40000, actual : 40000 |
| 1398 | +Timer : 8, programmed : 45000, actual : 45000 |
| 1399 | +Timer : 9, programmed : 50000, actual : 50000 |
| 1400 | +Timer : 10, programmed : 55000, actual : 0 |
| 1401 | +Timer : 11, programmed : 60000, actual : 0 |
| 1402 | +Timer : 12, programmed : 65000, actual : 0 |
| 1403 | +Timer : 13, programmed : 70000, actual : 0 |
| 1404 | +Timer : 14, programmed : 75000, actual : 0 |
| 1405 | +Timer : 15, programmed : 80000, actual : 0 |
| 1406 | +SimpleTimer : 2, ms : 68885, Dms : 10001 |
| 1407 | +Timer : 0, programmed : 5000, actual : 5000 |
| 1408 | +Timer : 1, programmed : 10000, actual : 10000 |
| 1409 | +Timer : 2, programmed : 15000, actual : 15000 |
| 1410 | +Timer : 3, programmed : 20000, actual : 20000 |
| 1411 | +Timer : 4, programmed : 25000, actual : 25000 |
| 1412 | +Timer : 5, programmed : 30000, actual : 30000 |
| 1413 | +Timer : 6, programmed : 35000, actual : 35000 |
| 1414 | +Timer : 7, programmed : 40000, actual : 40000 |
| 1415 | +Timer : 8, programmed : 45000, actual : 45000 |
| 1416 | +Timer : 9, programmed : 50000, actual : 50000 |
| 1417 | +Timer : 10, programmed : 55000, actual : 55000 |
| 1418 | +Timer : 11, programmed : 60000, actual : 60000 |
| 1419 | +Timer : 12, programmed : 65000, actual : 0 |
| 1420 | +Timer : 13, programmed : 70000, actual : 0 |
| 1421 | +Timer : 14, programmed : 75000, actual : 0 |
| 1422 | +Timer : 15, programmed : 80000, actual : 0 |
| 1423 | +SimpleTimer : 2, ms : 78886, Dms : 10001 |
| 1424 | +Timer : 0, programmed : 5000, actual : 5000 |
| 1425 | +Timer : 1, programmed : 10000, actual : 10000 |
| 1426 | +Timer : 2, programmed : 15000, actual : 15000 |
| 1427 | +Timer : 3, programmed : 20000, actual : 20000 |
| 1428 | +Timer : 4, programmed : 25000, actual : 25000 |
| 1429 | +Timer : 5, programmed : 30000, actual : 30000 |
| 1430 | +Timer : 6, programmed : 35000, actual : 35000 |
| 1431 | +Timer : 7, programmed : 40000, actual : 40000 |
| 1432 | +Timer : 8, programmed : 45000, actual : 45000 |
| 1433 | +Timer : 9, programmed : 50000, actual : 50000 |
| 1434 | +Timer : 10, programmed : 55000, actual : 55000 |
| 1435 | +Timer : 11, programmed : 60000, actual : 60000 |
| 1436 | +Timer : 12, programmed : 65000, actual : 65000 |
| 1437 | +Timer : 13, programmed : 70000, actual : 70000 |
| 1438 | +Timer : 14, programmed : 75000, actual : 0 |
| 1439 | +Timer : 15, programmed : 80000, actual : 0 |
| 1440 | +SimpleTimer : 2, ms : 88887, Dms : 10001 |
| 1441 | +Timer : 0, programmed : 5000, actual : 5000 |
| 1442 | +Timer : 1, programmed : 10000, actual : 10000 |
| 1443 | +Timer : 2, programmed : 15000, actual : 15000 |
| 1444 | +Timer : 3, programmed : 20000, actual : 20000 |
| 1445 | +Timer : 4, programmed : 25000, actual : 25000 |
| 1446 | +Timer : 5, programmed : 30000, actual : 30000 |
| 1447 | +Timer : 6, programmed : 35000, actual : 35000 |
| 1448 | +Timer : 7, programmed : 40000, actual : 40000 |
| 1449 | +Timer : 8, programmed : 45000, actual : 45000 |
| 1450 | +Timer : 9, programmed : 50000, actual : 50000 |
| 1451 | +Timer : 10, programmed : 55000, actual : 55000 |
| 1452 | +Timer : 11, programmed : 60000, actual : 60000 |
| 1453 | +Timer : 12, programmed : 65000, actual : 65000 |
| 1454 | +Timer : 13, programmed : 70000, actual : 70000 |
| 1455 | +Timer : 14, programmed : 75000, actual : 75000 |
| 1456 | +Timer : 15, programmed : 80000, actual : 80000 |
| 1457 | +``` |
| 1458 | + |
| 1459 | + |
1305 | 1460 | --- |
1306 | 1461 | --- |
1307 | 1462 |
|
|
0 commit comments