File tree 2 files changed +28
-6
lines changed
2 files changed +28
-6
lines changed Original file line number Diff line number Diff line change @@ -19,10 +19,21 @@ autoexamples = true
19
19
r0 = " 0.2.2"
20
20
cortex-m-rt-macros = { path = " macros" , version = " 0.1.5" }
21
21
22
+ [target .thumbv7em-none-eabihf .dev-dependencies ]
23
+ cortex-m-semihosting = " 0.3.1"
24
+
25
+ [target .thumbv7em-none-eabi .dev-dependencies ]
26
+ cortex-m-semihosting = " 0.3.1"
27
+
28
+ [target .thumbv7m-none-eabi .dev-dependencies ]
29
+ cortex-m-semihosting = " 0.3.1"
30
+
31
+ [target .thumbv6m-none-eabi .dev-dependencies ]
32
+ cortex-m-semihosting = " 0.3.1"
33
+
22
34
[dev-dependencies ]
23
- cortex-m = " >= 0.5.7, <0.7 "
35
+ cortex-m = " 0.6 "
24
36
panic-halt = " 0.2.0"
25
- cortex-m-semihosting = " 0.3.1"
26
37
27
38
[dev-dependencies .rand ]
28
39
default-features = false
Original file line number Diff line number Diff line change 2
2
#![ no_main]
3
3
#![ no_std]
4
4
5
- extern crate cortex_m;
6
5
6
+ extern crate cortex_m;
7
7
extern crate cortex_m_rt as rt;
8
+
9
+ #[ cfg( not( armv8m) ) ]
8
10
extern crate cortex_m_semihosting as semihosting;
11
+
9
12
extern crate panic_halt;
10
13
11
- use core:: fmt:: Write ;
12
14
use cortex_m:: asm;
13
15
use rt:: entry;
14
16
17
+ #[ cfg( not( armv8m) ) ]
15
18
#[ entry]
16
19
fn main ( ) -> ! {
20
+ use core:: fmt:: Write ;
17
21
let x = 42 ;
18
22
19
23
loop {
20
24
asm:: nop ( ) ;
21
25
22
26
// write something through semihosting interface
23
27
let mut hstdout = semihosting:: hio:: hstdout ( ) . unwrap ( ) ;
24
- write ! ( hstdout, "x = {}\n " , x) ;
25
-
28
+ write ! ( hstdout, "x = {}\n " , x) . unwrap ( ) ;
26
29
// exit from qemu
27
30
semihosting:: debug:: exit ( semihosting:: debug:: EXIT_SUCCESS ) ;
28
31
}
29
32
}
33
+
34
+ #[ cfg( armv8m) ]
35
+ #[ entry]
36
+ fn main ( ) -> ! {
37
+ loop {
38
+ asm:: nop ( ) ;
39
+ }
40
+ }
You can’t perform that action at this time.
0 commit comments