File tree Expand file tree Collapse file tree 27 files changed +62506
-49351
lines changed
examples/raspberrypi/rp2xxx/src Expand file tree Collapse file tree 27 files changed +62506
-49351
lines changed Original file line number Diff line number Diff line change @@ -9,12 +9,12 @@ const Pin = rp2xxx.gpio.Pin;
9
9
10
10
/// The HAL provides a convenvience function for detecting which of the RP2XXX
11
11
/// family you're currently compiling for.
12
- const get_cpu = rp2xxx .compatibility .get_cpu ;
12
+ const cpu = rp2xxx .compatibility .cpu ;
13
13
14
14
// Use the system() preset helper to change the SYS and REF clock frequencies from default
15
15
const system_clock_cfg = clocks .config .preset .system (
16
16
// Reduce the system clock by a factor of 4 (different default clock speeds for RP2350/RP2040)
17
- switch (get_cpu () ) {
17
+ switch (cpu ) {
18
18
.RP2040 = > 125_000_000 / 4 ,
19
19
.RP2350 = > 150_000_000 / 4 ,
20
20
},
Original file line number Diff line number Diff line change @@ -10,7 +10,7 @@ const Pin = gpio.Pin;
10
10
11
11
/// The HAL provides a convenvience function for detecting which of the RP2XXX
12
12
/// family you're currently compiling for.
13
- const get_cpu = rp2xxx .compatibility .get_cpu ;
13
+ const cpu = rp2xxx .compatibility .cpu ;
14
14
15
15
const xosc_freq = microzig .board .xosc_freq ;
16
16
@@ -84,7 +84,7 @@ const system_clock_cfg: GlobalConfig = val: {
84
84
};
85
85
86
86
// GlobalConfig has a slight difference between RP2350 (has HSTX) and RP2040 (has RTC)
87
- switch (get_cpu () ) {
87
+ switch (cpu ) {
88
88
.RP2040 = > {
89
89
// Drive RTC off XOSC / 3 for a change of pace!
90
90
temp .rtc = .{
Original file line number Diff line number Diff line change @@ -6,6 +6,7 @@ const rp2xxx = microzig.hal;
6
6
const gpio = rp2xxx .gpio ;
7
7
const adc = rp2xxx .adc ;
8
8
const time = rp2xxx .time ;
9
+ const cpu = rp2xxx .compatibility .cpu ;
9
10
10
11
const uart = rp2xxx .uart .instance .num (0 );
11
12
const baud_rate = 115200 ;
@@ -21,8 +22,13 @@ pub fn main() void {
21
22
.temp_sensor_enabled = true ,
22
23
});
23
24
24
- inline for (&.{ uart_tx_pin , uart_rx_pin }) | pin | {
25
- pin .set_function (.uart );
25
+ switch (cpu ) {
26
+ .RP2040 = > inline for (&.{ uart_tx_pin , uart_rx_pin }) | pin | {
27
+ pin .set_function (.uart );
28
+ },
29
+ .RP2350 = > inline for (&.{ uart_tx_pin , uart_rx_pin }) | pin | {
30
+ pin .set_function (.uart_second );
31
+ },
26
32
}
27
33
28
34
uart .apply (.{
Original file line number Diff line number Diff line change @@ -5,6 +5,7 @@ const rp2xxx = microzig.hal;
5
5
const time = rp2xxx .time ;
6
6
const gpio = rp2xxx .gpio ;
7
7
const flash = rp2xxx .flash ;
8
+ const cpu = rp2xxx .compatibility .cpu ;
8
9
9
10
const uart = rp2xxx .uart .instance .num (0 );
10
11
const baud_rate = 115200 ;
@@ -23,8 +24,13 @@ pub const std_options = struct {
23
24
};
24
25
25
26
pub fn main () ! void {
26
- inline for (&.{ uart_tx_pin , uart_rx_pin }) | pin | {
27
- pin .set_function (.uart );
27
+ switch (cpu ) {
28
+ .RP2040 = > inline for (&.{ uart_tx_pin , uart_rx_pin }) | pin | {
29
+ pin .set_function (.uart );
30
+ },
31
+ .RP2350 = > inline for (&.{ uart_tx_pin , uart_rx_pin }) | pin | {
32
+ pin .set_function (.uart_second );
33
+ },
28
34
}
29
35
30
36
uart .apply (.{
Original file line number Diff line number Diff line change @@ -6,6 +6,7 @@ const flash = rp2xxx.flash;
6
6
const time = rp2xxx .time ;
7
7
const gpio = rp2xxx .gpio ;
8
8
const clocks = rp2xxx .clocks ;
9
+ const cpu = rp2xxx .compatibility .cpu ;
9
10
10
11
const led = gpio .num (25 );
11
12
const uart = rp2xxx .uart .instance .num (0 );
@@ -32,8 +33,13 @@ pub fn main() !void {
32
33
led .set_direction (.out );
33
34
led .put (1 );
34
35
35
- inline for (&.{ uart_tx_pin , uart_rx_pin }) | pin | {
36
- pin .set_function (.uart );
36
+ switch (cpu ) {
37
+ .RP2040 = > inline for (&.{ uart_tx_pin , uart_rx_pin }) | pin | {
38
+ pin .set_function (.uart );
39
+ },
40
+ .RP2350 = > inline for (&.{ uart_tx_pin , uart_rx_pin }) | pin | {
41
+ pin .set_function (.uart_second );
42
+ },
37
43
}
38
44
39
45
uart .apply (.{
Original file line number Diff line number Diff line change @@ -5,22 +5,32 @@ const rp2xxx = microzig.hal;
5
5
const i2c = rp2xxx .i2c ;
6
6
const gpio = rp2xxx .gpio ;
7
7
const peripherals = microzig .chip .peripherals ;
8
+ const cpu = rp2xxx .compatibility .cpu ;
8
9
9
10
pub const microzig_options = .{
10
11
.log_level = .info ,
11
12
.logFn = rp2xxx .uart .logFn ,
12
13
};
13
14
14
15
const uart = rp2xxx .uart .instance .num (0 );
16
+ const baud_rate = 115200 ;
17
+ const uart_tx_pin = gpio .num (0 );
18
+ const uart_rx_pin = gpio .num (1 );
19
+
15
20
const i2c0 = i2c .instance .num (0 );
16
21
17
22
pub fn main () ! void {
18
- inline for (&.{ gpio .num (0 ), gpio .num (1 ) }) | pin | {
19
- pin .set_function (.uart );
23
+ switch (cpu ) {
24
+ .RP2040 = > inline for (&.{ uart_tx_pin , uart_rx_pin }) | pin | {
25
+ pin .set_function (.uart );
26
+ },
27
+ .RP2350 = > inline for (&.{ uart_tx_pin , uart_rx_pin }) | pin | {
28
+ pin .set_function (.uart_second );
29
+ },
20
30
}
21
31
22
32
uart .apply (.{
23
- .baud_rate = 115200 ,
33
+ .baud_rate = baud_rate ,
24
34
.clock_config = rp2xxx .clock_config ,
25
35
});
26
36
rp2xxx .uart .init_logger (uart );
Original file line number Diff line number Diff line change @@ -9,6 +9,7 @@ const time = rp2xxx.time;
9
9
const gpio = rp2xxx .gpio ;
10
10
const clocks = rp2xxx .clocks ;
11
11
const rand = rp2xxx .rand ;
12
+ const cpu = rp2xxx .compatibility .cpu ;
12
13
13
14
const led = gpio .num (25 );
14
15
const uart = rp2xxx .uart .instance .num (0 );
@@ -32,8 +33,13 @@ pub fn main() !void {
32
33
led .set_direction (.out );
33
34
led .put (1 );
34
35
35
- inline for (&.{ uart_tx_pin , uart_rx_pin }) | pin | {
36
- pin .set_function (.uart );
36
+ switch (cpu ) {
37
+ .RP2040 = > inline for (&.{ uart_tx_pin , uart_rx_pin }) | pin | {
38
+ pin .set_function (.uart );
39
+ },
40
+ .RP2350 = > inline for (&.{ uart_tx_pin , uart_rx_pin }) | pin | {
41
+ pin .set_function (.uart_second );
42
+ },
37
43
}
38
44
39
45
uart .apply (.{
Original file line number Diff line number Diff line change @@ -5,6 +5,7 @@ const rp2xxx = microzig.hal;
5
5
const time = rp2xxx .time ;
6
6
const gpio = rp2xxx .gpio ;
7
7
const clocks = rp2xxx .clocks ;
8
+ const cpu = rp2xxx .compatibility .cpu ;
8
9
9
10
const led = gpio .num (25 );
10
11
const uart = rp2xxx .uart .instance .num (0 );
@@ -28,8 +29,13 @@ pub fn main() !void {
28
29
led .set_direction (.out );
29
30
led .put (1 );
30
31
31
- inline for (&.{ uart_tx_pin , uart_rx_pin }) | pin | {
32
- pin .set_function (.uart );
32
+ switch (cpu ) {
33
+ .RP2040 = > inline for (&.{ uart_tx_pin , uart_rx_pin }) | pin | {
34
+ pin .set_function (.uart );
35
+ },
36
+ .RP2350 = > inline for (&.{ uart_tx_pin , uart_rx_pin }) | pin | {
37
+ pin .set_function (.uart_second );
38
+ },
33
39
}
34
40
35
41
uart .apply (.{
Original file line number Diff line number Diff line change @@ -7,6 +7,7 @@ const time = rp2xxx.time;
7
7
const gpio = rp2xxx .gpio ;
8
8
const clocks = rp2xxx .clocks ;
9
9
const usb = rp2xxx .usb ;
10
+ const cpu = rp2xxx .compatibility .cpu ;
10
11
11
12
const led = gpio .num (25 );
12
13
const uart = rp2xxx .uart .instance .num (0 );
@@ -68,8 +69,13 @@ pub fn main() !void {
68
69
led .set_direction (.out );
69
70
led .put (1 );
70
71
71
- inline for (&.{ uart_tx_pin , uart_rx_pin }) | pin | {
72
- pin .set_function (.uart );
72
+ switch (cpu ) {
73
+ .RP2040 = > inline for (&.{ uart_tx_pin , uart_rx_pin }) | pin | {
74
+ pin .set_function (.uart );
75
+ },
76
+ .RP2350 = > inline for (&.{ uart_tx_pin , uart_rx_pin }) | pin | {
77
+ pin .set_function (.uart_second );
78
+ },
73
79
}
74
80
75
81
uart .apply (.{
Original file line number Diff line number Diff line change @@ -7,6 +7,7 @@ const time = rp2xxx.time;
7
7
const gpio = rp2xxx .gpio ;
8
8
const clocks = rp2xxx .clocks ;
9
9
const usb = rp2xxx .usb ;
10
+ const cpu = rp2xxx .compatibility .cpu ;
10
11
11
12
const led = gpio .num (25 );
12
13
const uart = rp2xxx .uart .instance .num (0 );
@@ -70,8 +71,13 @@ pub fn main() !void {
70
71
led .set_direction (.out );
71
72
led .put (1 );
72
73
73
- inline for (&.{ uart_tx_pin , uart_rx_pin }) | pin | {
74
- pin .set_function (.uart );
74
+ switch (cpu ) {
75
+ .RP2040 = > inline for (&.{ uart_tx_pin , uart_rx_pin }) | pin | {
76
+ pin .set_function (.uart );
77
+ },
78
+ .RP2350 = > inline for (&.{ uart_tx_pin , uart_rx_pin }) | pin | {
79
+ pin .set_function (.uart_second );
80
+ },
75
81
}
76
82
77
83
uart .apply (.{
You can’t perform that action at this time.
0 commit comments