標(biāo)題: 基于STM32f030c8t6的spi,iic,串口的初始化源程序 [打印本頁(yè)]

作者: 13692166934    時(shí)間: 2018-8-30 15:18
標(biāo)題: 基于STM32f030c8t6的spi,iic,串口的初始化源程序
串口采用控制器,IIC與spi采用了模擬時(shí)序


stm32單片機(jī)源程序如下:
  1. #include "spi.h"
  2. #include "uart.h"
  3. #include "stdio.h"
  4. #include "delay.h"



  5. void SPI1_Init(void)
  6. {

  7.         RCC ->AHBENR         |=0X01<<18;
  8.         RCC ->APB2ENR |=0x01<<12;
  9.        
  10.         //SCK(pb3) MOSI(pb5)配置為普通功能推挽輸出
  11.         //端口模式設(shè)置
  12.         //模式----通用輸出模式(01)
  13.         GPIOB->MODER &=~(0x03<<6 |0x03<<10);
  14.         GPIOB->MODER |=0X01<<6 | 0X01<<10;
  15.         //輸出類型----推挽
  16.         GPIOB->OTYPER &= ~(0X01<<3 | 0X01<<5);       
  17.         //輸出速度----100M
  18.         GPIOB->OSPEEDR |=0x03<<6 | 0x03<<10;
  19.         //上下拉-----無(wú)上拉或下拉
  20.         GPIOB->PUPDR &=~(0x03<<6 |0x03<<10);
  21.        

  22.         //MISO(pb4) 配置為浮空輸入
  23.         GPIOB->MODER &=~(0X03<<8);  //pB4為輸入模式
  24.         GPIOB->PUPDR &=~(0X03<<8);  //浮空輸入
  25.        
  26.         SCK_0;          //SCK空閑電平為低
  27. }
  28. //spi讀寫(xiě)函數(shù)--模式0
  29. //_data:待發(fā)送的數(shù)據(jù),如果是接收模式,發(fā)送的數(shù)據(jù)則應(yīng)該是0xff
  30. //返回值:接收到的數(shù)據(jù)。如果是發(fā)送模式,返回值可以丟棄

  31. u8 SPI1_ReadWriteByte(u8 _data)
  32. {
  33.         u8 i;
  34.         for(i=0;i<8;i++)
  35.         {
  36.        
  37.                 if(_data&0x80)      //高位在前
  38.                 {
  39.                         MOSI_1;
  40.                 }
  41.                 else
  42.                 {
  43.                         MOSI_0;
  44.                 }
  45.                 SCK_1;
  46.                 _data=_data<<1;
  47.                 delay_us(2);

  48.        
  49.                 if(GPIOB ->IDR&0x01<<4)                           //判斷收到的數(shù)據(jù)
  50.                 {
  51.                         _data=_data | 0X01;
  52.                 }
  53.                 SCK_0;
  54.                
  55.                 delay_us(2);
  56.         }
  57.         return _data;
  58. }


復(fù)制代碼

所有資料51hei提供下載:
串口spii2c.zip (4.63 KB, 下載次數(shù): 156)



作者: 13692166934    時(shí)間: 2018-11-5 11:38
SPI控制器的也搞好了,親測(cè)可以使用,可以驅(qū)動(dòng)OLED和w25q80

spi控制器.zip

1.93 KB, 下載次數(shù): 60, 下載積分: 黑幣 -5


作者: 13692166934    時(shí)間: 2019-2-28 10:08
自己頂自己
作者: 湯博    時(shí)間: 2019-7-1 15:55
就那樣

作者: 728996695    時(shí)間: 2020-7-7 17:12
請(qǐng)問(wèn)有這款芯片的NRF24L01配置的程序嘛
作者: 197988275    時(shí)間: 2020-10-23 17:48
全部寄存器,感覺(jué)沒(méi)啥用




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1