93 lines
2.4 KiB
C++
Executable File
93 lines
2.4 KiB
C++
Executable File
#include "bsp.h"
|
|
#include "prepherials.h"
|
|
//void spi_set_gpio() {
|
|
// gpio_settings s = gpio_default_settings;
|
|
// s.mode = AF;
|
|
//// s.ot = OPEN_DRAIN;
|
|
// s.af = 5;
|
|
// s.ot = PULL_PUSH;
|
|
// IF_ERROR_STUCK(gpio_init(gpioa_p, GGPIO_PIN_5, s)) // SCK
|
|
//// s.ot = PULL_PUSH;
|
|
// IF_ERROR_STUCK(gpio_init(gpioa_p, GGPIO_PIN_7, s)) // MOSI
|
|
// s.ot = OPEN_DRAIN;
|
|
// s.pull = LL_PULLUP;
|
|
// IF_ERROR_STUCK(gpio_init(gpioa_p, GGPIO_PIN_6, s)) // MISO
|
|
//
|
|
//}
|
|
|
|
#define SD_CMD0 0
|
|
#define SD_CMD8 8
|
|
|
|
|
|
int main() {
|
|
// system init and led init_old
|
|
// system_init();
|
|
// led_blue_init();
|
|
// // set up port for power on process
|
|
// // init_old cs pin(PB1) for sdcard
|
|
// gpio_settings s = gpio_default_settings;
|
|
// gpio_init(gpiod_p, GGPIO_PIN_12, s);
|
|
//
|
|
// spi_set_gpio(); // init_old spi port
|
|
// spi_init_options_s option = spi_default_option;
|
|
// spi_init(spi1_p, 20, spi_default_option); // init_old spi
|
|
//
|
|
// bool invert = false;
|
|
// // wait for 10 milliseconds for sdcard to power on
|
|
// delay_ms(10, false);
|
|
// if (invert)
|
|
// gpio_set_low(gpiod_p, GGPIO_PIN_12); ///////////// low
|
|
// else
|
|
// gpio_set_high(gpiod_p, GGPIO_PIN_12); ///////////// high
|
|
//
|
|
// // pull up CS high then send 74 clock cycles to sdcard
|
|
// delay_ms(300, false);
|
|
//
|
|
// uint8_t data[6] = {0, 0, 0, 0, 0, 0};
|
|
// spi_send(spi1_p, data, 6);
|
|
// spi_send(spi1_p, data, 6);
|
|
// // wairt for 10 milliseconds
|
|
// delay_ms(1000, false);
|
|
//
|
|
//
|
|
// gpio_set_high(gpiod_p, GGPIO_PIN_12); ///////////// high
|
|
//
|
|
// delay_ms(100, false);
|
|
//
|
|
// gpio_set_low(gpiod_p, GGPIO_PIN_12);
|
|
//
|
|
// delay_ms(100, false);
|
|
//
|
|
// data[0] = SD_CMD0 + (1 << 6);
|
|
// data[1] = 0x00;
|
|
// data[2] = 0x00;
|
|
// data[3] = 0x00;
|
|
// data[4] = 0x00;
|
|
// data[5] = 0x95;
|
|
// spi_send(spi1_p, data, 6);
|
|
// data[0] = 0xff;
|
|
// delay_ms(100, true);
|
|
// spi_send(spi1_p, data, 1);
|
|
// delay_ms(100, true);
|
|
// delay_ms(100, true);
|
|
//// spi_send(spi1_p, data, 6);
|
|
//// delay_ms(100, true);
|
|
//// data[0] = 0xff;
|
|
//// spi_send(spi1_p, data, 1);
|
|
// while (1) {
|
|
//
|
|
// data[0] = SD_CMD0 + (1 << 6);
|
|
// data[1] = 0x00;
|
|
// data[2] = 0x00;
|
|
// data[3] = 0x00;
|
|
// data[4] = 0x00;
|
|
// data[5] = 0x95;
|
|
// spi_send(spi1_p, data, 6);
|
|
// data[0] = 0xff;
|
|
// spi_send(spi1_p, data, 1);
|
|
// delay_ms(100, true);
|
|
// // the sd card will make di low.
|
|
// }
|
|
|
|
}
|