Commit Graph

73 Commits

Author SHA1 Message Date
Romain Goyet
1b57bc39c0 [ion] Discard micros() as those aren't used for now 2018-11-15 14:12:17 +01:00
Damien Nicolet
24630011b1 [code] keep only CPython equivalent functions in utime module 2018-11-10 00:00:03 +01:00
Damien Nicolet
9b818bd963 [ion] fix sleep functions in emscripten build 2018-11-09 01:36:38 +01:00
Damien Nicolet
bc8d9746c8 [ion] Documenting micros() implementation 2018-11-09 01:30:22 +01:00
Damien Nicolet
4c520cab97 [ion] Use shutdownSysTick & initSysTick when entring/exiting DFU 2018-11-09 01:30:22 +01:00
Damien Nicolet
cb0822d312 [ion] initSysTick() & shutdownSysTick() methods 2018-11-09 01:30:22 +01:00
Damien Nicolet
e397f05894 [ion] Documenting systick counter reload value 2018-11-09 01:30:22 +01:00
Damien Nicolet
92e59f720f [ion] Renaming STCSR, STCVR and STRVR to SYST_CSR, SYST_CVR and SYST_RVR 2018-11-09 01:30:22 +01:00
Damien Nicolet
c0c0905b84 [ion] millis() and micros() returns uint32_t and are defined in their own header 2018-11-09 01:30:22 +01:00
Damien Nicolet
940270e78a [ion] add millis() and micros() using systick on device 2018-11-09 01:30:22 +01:00
Émilie Feral
52b81c0f98 [ion] Add code to active MPU and forbid memory access to the last 128
bytes of the stack
2018-09-18 16:10:17 +02:00
Émilie Feral
3177b26f30 [ion] Clean LED API 2018-08-27 09:53:47 +02:00
Émilie Feral
4613dd9d8f [ion] Change LED API 2018-08-23 17:40:47 +02:00
Émilie Feral
6add685ce0 [ion] Revert implementation of msleep using internal clock 2018-08-23 16:02:21 +02:00
Émilie Feral
7d358a2646 Merge branch 'rtc_part1' of https://github.com/boricj/epsilon into exam_mode_boricj 2018-08-22 17:20:04 +02:00
Romain Goyet
49e1b0e373 [ion/device] Give an opportunity to slow down the whole machine 2018-05-09 17:52:09 +02:00
Romain Goyet
bc3c517084 [ion] Discard useless small file 2018-05-08 14:31:35 +02:00
Romain Goyet
a29c775663 [ion] Encode the serial number in Base64
Also, expose serialNumber() in Ion and keep "copySerialNumber" in
Ion::Device. This allows the DFU bootloader to remain .bss-free.
2018-05-04 17:31:41 +02:00
Léa Saviot
ee6997a07d [usb] Implement jumpReset in assembly.
This avoids unwanted stack modifications emited by the compiler.

Change-Id: I2a2a13ee5395b95ed676f6634be86eeb148d55fd
2018-04-16 10:48:11 +02:00
Léa Saviot
555ced4941 [usb] If needed, reset the device inside Calculator::Poll
Change-Id: I2d9e2eef4e04b1042a2524a4267569324ad8bcce
2018-04-11 15:40:41 +02:00
Léa Saviot
b807938031 [ion] Add EPSILON_DEVICE_BENCH
Change-Id: I58de053755305fc610c410a139572f2d0eee2a2d
2018-04-09 10:52:32 +02:00
Léa Saviot
55d56b3927 [usb] Send real serial number in the device descriptor.
Change-Id: Ie64f2a0fb03913600c96986dab8171afaa6bf05b
2018-04-06 14:31:49 +02:00
Léa Saviot
d753e6e781 [ion] Move Ion::reset to Ion::Device::core/jumpReset
Change-Id: I3032c3e1b9a8f944cd321670c7be6586ba6d973b
2018-04-06 14:31:48 +02:00
Romain Goyet
c89055d4ad Preliminary work on the OTG registers
Change-Id: I39e9c79538d17ea76d5484083d87a52b9bdc34e0
2018-04-06 14:31:44 +02:00
Romain Goyet
d4d4cd359b Use the high-speed external oscillator
This is required to feed the USB controller an accurate 48 MHz clock.

Change-Id: If3b4490c931c18e1b917b3569ece1adec870477a
2018-04-06 14:31:44 +02:00
Romain Goyet
5c86a07481 [ion] Add the ability to perform a jump-reset 2018-04-04 10:38:52 +02:00
Damien Nicolet
a2c5e0b7f7 Full interrupt vector table definition, more registers and correct memory remap & vector table register after bootloader exit 2018-03-13 11:40:04 +01:00
Jean-Baptiste Boric
2d088473a5 Reimplement LED charging
Fixes #196
2018-02-04 20:08:32 +01:00
Jean-Baptiste Boric
b774ddf7e7 [ion] Use TIM6 to keep track of time during Ion::msleep 2018-02-02 18:57:08 +01:00
Émilie Feral
a8dc17a6cf [ion] Add TODO on implementations of usleep msleep 2018-01-22 15:32:59 +01:00
Émilie Feral
7993f7e906 [ion] Re-calibrate the delay methods (msleep and usleep) following the
increase of performance due to the instruction and data cache
2018-01-22 15:32:59 +01:00
Émilie Feral
d8963e33e3 [ion] Enable flash instructions fetching 2017-12-07 09:26:23 +01:00
Damien Nicolet
845337a042 Enable instruction and data cache 2017-12-06 18:39:09 +01:00
Jacob Young
4e6f673c03 Fix hex conversion for digits > 9. 2017-08-31 21:14:18 -04:00
Romain Goyet
be7b20e5a0 Proper letter ordering in the serial number
Change-Id: Ief7fbd7c4a80025831b2af21a970130dd31bfddd
2017-06-21 18:18:52 +02:00
Émilie Feral
94b6ad3488 [ion] In suspend, force the state of LED to avoid using a timer
Change-Id: I9565e278d99e3164faa03a65e7831e5e316b1542
2017-04-13 12:06:38 +02:00
Émilie Feral
c632f7c5ee [ion] Improve suspend implementation
Change-Id: Ic43b58f34379292c53a82ab6c85674c6f7a9b381
2017-04-13 12:06:37 +02:00
Émilie Feral
9467e6a23f [ion] In device, create a method to init clocks in standby
Change-Id: If536a7b943095c87b51a85dc1fb5c1ea9229088b
2017-04-12 09:37:49 +02:00
Émilie Feral
6c7a70e046 [ion] In device shutdown, enable LED persisting
Change-Id: Id65e8d8b488c2be3076d33a32ed6b052fbe7fcd1
2017-04-12 09:37:49 +02:00
Romain Goyet
37647d8537 [ion/device] Use DMA to send pixel data to the LCD controller
Change-Id: Ia607f18c6a7f57fb28cf9febe30f05d19e7b3e59
2017-04-10 15:29:24 +02:00
Émilie Feral
cebd5f69ed Merge commit 'refs/changes/64/1864/1' of ssh://git.numworks.com/CalcOS
Change-Id: I596a0df552272eaeab707170e1da0dbee9e8d1d4
2017-04-10 10:39:30 +02:00
Émilie Feral
3261701d2d [ion] Add a method to know if the USB is plugged
Change-Id: I040ce7996bbec121c71d57a5092ffae4f5f76025
2017-04-07 14:40:34 +02:00
Romain Goyet
c709d161af [ion/device] Proper ordering of console init and bench launch
Change-Id: Ic43ee84e2b2024a10d6704835736535b3d952f0c
2017-04-06 10:14:59 +02:00
Émilie Feral
6c2dabe7cc [ion] Enable/disable FSMC clock with all clocks
Change-Id: I541532b1803181109d788dd943a6384b3b09db63
2017-04-04 16:26:25 +02:00
Émilie Feral
7091b2ea35 [ion] Add software version, patch level and serial number
Change-Id: I011eeb2d8596f63e0c2fdedf353d544dc8a8a202
2017-04-04 14:18:11 +02:00
Romain Goyet
a58430e885 [ion] Calibrate the delay loops for the 96 MHz clock
Change-Id: I991d994c5c347c7d90a09b1daa2c2f3ca67dd1a1
2017-03-29 15:18:45 +02:00
Romain Goyet
311a6f985d [ion/device] Stop APB1
Change-Id: Icf84297e4c1539628c45804a8abf69e16117c294
2017-03-15 17:18:20 +01:00
Romain Goyet
4fde3a5304 [ion/device] Put all GPIOs except SWD as Analog/NoPuPd by default
Change-Id: I1c2874e0eceb5ea6fc7f98d91db9b6a454859bdd
2017-03-15 17:17:22 +01:00
Romain Goyet
1fc8e8ebd0 [ion/device] SWD powersave
Change-Id: I0550907f649829a4873ae2ffe8076f2c7132abc0
2017-03-15 16:16:43 +01:00
Romain Goyet
0cbc2cbaa2 GPIO power save should be mostly done by now
Change-Id: Ic4c5b8571cb3c95ef2347b1b1b387edab3aa3443
2017-03-15 16:16:13 +01:00