Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Latest commit

 

History

History
History
48 lines (39 loc) · 1.04 KB

File metadata and controls

48 lines (39 loc) · 1.04 KB
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
/*
* Copyright (c) 2021, Jeff McBride
*
* This file is part of the modm project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/
#include <modm/board.hpp>
using namespace modm::platform;
int main()
{
// Test SPI send and receive in loopback mode. If we receive the expected
// characters back, flash slowly. Otherwise, flash fast.
Board::initialize();
SpiMaster0::connect<GpioB0::Sck, GpioA9::Miso, GpioA10::Mosi>();
SpiMaster0::initialize<Board::SystemClock, 1_MHz>();
SpiMaster0::setLocalLoopback(true);
while (true)
{
uint32_t flash_time_ms;
uint8_t tx[] = {0xa5, 0x21};
uint8_t rx[2];
SpiMaster0::transfer(tx, rx, 2);
if(rx[0] == 0xa5 && rx[1] == 0x21) {
flash_time_ms = 500;
} else {
flash_time_ms = 100;
}
for(uint32_t i=0; i<5; i++)
{
Board::Led::set();
modm::delay_ms(flash_time_ms);
Board::Led::reset();
modm::delay_ms(flash_time_ms);
}
}
}
Morty Proxy This is a proxified and sanitized view of the page, visit original site.