You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Feb 17, 2024. It is now read-only.
Copy file name to clipboardExpand all lines: README.md
+6-4Lines changed: 6 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,17 +4,17 @@ Because of cost or supply problems, people look for alternatives to well-establi
4
4
5
5
- does not need USB
6
6
- does not need VBAT battery-backup
7
-
- does not need FPU floating point unit
7
+
- does not need hardware FPU floating point unit (software floating point is OK)
8
8
- needs only 12 kbyte RAM or less
9
9
10
10
This is an arduino for MM32SPIN27 and MM32SPIN25 processors.
11
11
12
-
This is modest but sufficient to write small projects. As a demo project, see the t12 soldering iron controller. XXX
12
+
This is modest but sufficient to write small projects. As a demo project, see the [t12-958 soldering iron controller](https://github.com/koendv/t12-958).
13
13
14
14
## compiling
15
15
16
16
- Install arduino IDE
17
-
- In __File ⇨ Preferences... ⇨ Additional Board Manager URLs__, put the URL of the ``package_seekfree_index.json`` file: XXX
17
+
- In __File ⇨ Preferences... ⇨ Additional Board Manager URLs__, put the URL of the _package_seekfree_index.json_ file: ``https://raw.githubusercontent.com/koendv/MM32SPIN27-Arduino/main/doc/package_seekfree_index.json``
@@ -29,7 +29,7 @@ This is modest but sufficient to write small projects. As a demo project, see t
29
29
MM32SPIN27 is an Arm Cortex-m0 processor. Cortex-M0 has no hardware FPU, no division instruction.
30
30
However, MM32SPIN27 has hardware acceleration for 32-bit integer division and remainder, integer square root and crc.
31
31
32
-
On a small processor like this, if there is hardware support, it's there for a reason. Use it.
32
+
On a small processor like this, if there is hardware support for something, it's there for a reason. Use it.
33
33
34
34
### hardware division
35
35
Standard libgcc on Cortex-M0 uses software integer division. Division in software works, but is slow. Using hardware division speeds up execution noticeably. This software patches libgcc to use MM32 hardware support for 32-bit signed and unsigned integer division. If you wish to use hardware division you have to replace the compiler ``libgcc.a`` by the patched version. See directory ``mm32-libgcc``
@@ -83,6 +83,8 @@ The following libraries are included:
83
83
-_SoftwareWire_ I2C in software
84
84
-_SPI_ in hardware
85
85
86
+
This list was determined in the following way: I wrote a demo project. If something was needed to implement the demo, I added it. If something was not needed, I did not add it.
87
+
86
88
## demo project
87
89
88
90
As a demo, a soldering station was implemented. This is an application with an SPI OLED display, a rotary encoder with pushbutton, analog and digital inputs, and PWM output. Standard arduino libraries were used for display, task scheduler, PID controller, and temperature sensors.
0 commit comments