mindroz

STM32F303DISCOVERY SPI

5 posts in this topic

mindroz    0

Здравствуйте.

Подскажите, пожалуйста, в чём ошибка. Я использую STM32f303 DISCOVERY и мне нужно передавать по SPI 16-ти битные сообщения. Я сконфигурировал SPI и хочу проверить, есть ли импульсы при отправке, проверил осциллографом на PB13, PB14, PB15, а там ничего нет. Осциллограф подключён с самого начала и по идее я должен увидить импульсы.
Вот мой код, скажите, пожалуйста, что в нём не так, почему на осциллографе ничего нет?

void SPI2_Configuration(void)
{
    RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOB, ENABLE);
    RCC_APB1PeriphClockCmd(RCC_APB1Periph_SPI2, ENABLE);
  
    GPIO_InitTypeDef GPIO_InitStructure;

    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13 | GPIO_Pin_14 | GPIO_Pin_15;
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
    GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
    GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;
    GPIO_Init(GPIOB, &GPIO_InitStructure);

    GPIO_PinAFConfig(GPIOB, GPIO_PinSource13, GPIO_AF_5);        // SCK
    GPIO_PinAFConfig(GPIOB, GPIO_PinSource14, GPIO_AF_5);        // MISO
    GPIO_PinAFConfig(GPIOB, GPIO_PinSource15, GPIO_AF_5);        // MOSI
    
    SPI_InitTypeDef SPI_InitStructure;
    SPI_StructInit(&SPI_InitStructure);
   
    SPI_I2S_DeInit(SPI2);
    SPI_InitStructure.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_256;
    SPI_InitStructure.SPI_CPHA              = SPI_CPHA_1Edge;
    SPI_InitStructure.SPI_CPOL              = SPI_CPOL_Low;
    SPI_InitStructure.SPI_DataSize          = SPI_DataSize_16b;
    SPI_InitStructure.SPI_Direction         = SPI_Direction_2Lines_FullDuplex;
    SPI_InitStructure.SPI_FirstBit          = SPI_FirstBit_MSB;
    SPI_InitStructure.SPI_Mode              = SPI_Mode_Master;
    SPI_InitStructure.SPI_NSS               = SPI_NSS_Soft;   
    SPI_InitStructure.SPI_CRCPolynomial     = 7;
    SPI_Init(SPI2, &SPI_InitStructure);

    SPI_Cmd(SPI2, ENABLE);
}

int main(void)
{
    SPI2_Configuration();

    SPI_I2S_SendData16(SPI2, 0x8000);
    while(!SPI_I2S_GetFlagStatus(SPI2,SPI_I2S_FLAG_RXNE));
}

 

Share this post


Link to post
Share on other sites
Alex    589
32 минуты назад, mindroz сказал:

Осциллограф подключён с самого начала и по идее я должен увидить импульсы.

Поставьте задержку и зациклите отправку, тогда точно будете видеть, отправляются ли данные.

Share this post


Link to post
Share on other sites
mindroz    0
10 часов назад, Alex сказал:

Поставьте задержку и зациклите отправку, тогда точно будете видеть, отправляются ли данные.

Сделал, крутится в цикле, все равно ничего нет

Share this post


Link to post
Share on other sites

Бюджетные Wi-Fi-/ Bluetooth-решения для IoT-применения

Обзор основной линейки поставок и новинок Espressif Systems – экономически выгодных SoC Wi-Fi-/ Bluetooth-чипов и модулей для IoT-применений: от простых портативных устройств до промышленных решений.

Подробнее...

Sancta    19

Попробуй некошерным кубом для начала. И возможно снизить скорость в настройках пина.

Share this post


Link to post
Share on other sites
BARS_    966
12 часа назад, mindroz сказал:

почему на осциллографе ничего нет?

На осцилле настроен захват сигнала или пытаетесь увидеть глазами?

Share this post


Link to post
Share on other sites

Управляемый свет интернета вещей: Philips и протокол DALI 2.0

Полностью программируемые драйверы Philips Xitanium поддерживают все варианты регулировки яркости света и силы тока. Надежность системы значительно повышается при интеллектуальном мониторинге температуры светодиодного источника света. Разнообразие моделей в семействе обеспечивает максимальную гибкость в настройке рабочих параметров.

Подробнее...

Your content will need to be approved by a moderator

Guest
You are commenting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoticons maximum are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Сообщения

    • Я писал выше. 1. 100% падает сигнал шум. Не сказать что намного но падает. 2. При подключении источника, а он включен пусть даже в туже розетку что и УМ. На экране кабеля (сигнальной земле) будет наводка эта наводка с кабеля попадает в сигнальную землю УМ в том числе на холодный конец R1 и катод первой лампы. Ну и всё это дело усилится в 20 с лишним дБ. Хочу добавить падение С/Ш с этим резистором для меня было значительным при Rвх УМ 48кОм по этому пришлось отказаться от него. При более высоком входном сопротивлении думаю шум будет поболее.  
    •        Морской устав Петра статья  116, третьей книги: «Аще кто девицу изнасильничает, да сказнен будет смертию». За этою статьей следует такое толкование: «При суждении о сих делах судья должен поступить с великим рассуждением: где и когда сие учинено, кричала она или не кричала, есть ли у нее ссадины или кровоподтеки, когда она на то жалобу принесла, тотчас же или промедлив день или два... тогда часто по всему видимому видно бывает, что и она к тому немалую охоту имела. Некоторые, правда, полагают, что публичная девка изнасилована быть не может, но сие неправильно, ибо насилие всегда есть насилие и надо на самое дело и обстоятельства смотреть невзирая на персону, над коею учинено». Не юмор, но поучительно.
    • Это если нагрузка  индуктивная
    • вопрос по пушпульному преобразователю. Собран по этой схеме http://cxem.net/sound/amps/amp146.php с чем связана такая осциллограмма на затворе Сток - исток осциллограмма следующая пока нет снаббера по первичке, надо подбирать. На хх потребление 170мА, кольцо 40х24х16, первичка 4+4, частота 42кГц.
    • Он одинаково комфортно варит и на 140А и на 40А ? Я сильно сомневаюсь. 
    • Я так понимаю, мои ролики ни кто не смотрит, тогда может послушаете, всего часовой ролик, который вам всё объяснит.
      Включили, и слушаете, а в другой вкладке браузера форум шарьте.   Уважаемый Марк! Боюсь, нам достаточно просто осознать, кто мы есть. И тогда всякие разговоры про СССР, и прочее- канут в лету.
      По гражданству- безусловно, мы все граждане СССР, и ни кто не сможет этого оспорить.
      А по факту- мы живые люди. И именно для нас РФ подписала Декларацию, о правах человека? Не так ли?
      А она стоит выше всех законов РФ! Посмотрите, она в свободном доступе пока ещё.