STM32CubeMX下载地址:

下载界面

1:时钟

CS

2:模块

3:代码配置

u8 SPI_WriteByte(u8 Byte)
{u8 rxdata = 1;HAL_GPIO_WritePin(GPIOB, GPIO_PIN_11, GPIO_PIN_RESET);HAL_SPI_Transmit(&hspi2,&Byte,1,100);HAL_GPIO_WritePin(GPIOB, GPIO_PIN_11, GPIO_PIN_SET);return rxdata;
}

使用库函数一定要包含头文件 #include "main.h"
接口 HAL_SPI_Transmit(&hspi2,&Byte,1,100);中1代表1个字节(8bit),100代表超时。

引脚拉低拉高:

//GPIO置位(拉高)
#define LCD_CS_SET  HAL_GPIO_WritePin(GPIOB, GPIO_PIN_11, GPIO_PIN_SET);//GPIO_TYPE->BSRR=1<<LCD_CS    //片选端口     PB11
#define LCD_RS_SET  HAL_GPIO_WritePin(GPIOB, GPIO_PIN_10, GPIO_PIN_SET)//GPIO_TYPE->BSRR=1<<LCD_RS    //数据/命令  PB10
#define LCD_RST_SET HAL_GPIO_WritePin(GPIOB, GPIO_PIN_12, GPIO_PIN_SET)//GPIO_TYPE->BSRR=1<<LCD_RST   //复位              PB12//GPIO复位(拉低)
#define LCD_CS_CLR  HAL_GPIO_WritePin(GPIOB, GPIO_PIN_11, GPIO_PIN_RESET)//GPIO_TYPE->BRR=1<<LCD_CS     //片选端口    PB11
#define LCD_RS_CLR  HAL_GPIO_WritePin(GPIOB, GPIO_PIN_10, GPIO_PIN_RESET)//GPIO_TYPE->BRR=1<<LCD_RS     //数据/命令  PB10
#define LCD_RST_CLR HAL_GPIO_WritePin(GPIOB, GPIO_PIN_12, GPIO_PIN_RESET)//GPIO_TYPE->BRR=1<<LCD_RST    //复位            PB12

延时程序

//SysTick->LOAD=nus*9;中的9是 主频/8M
//比如主频72M,此数值为9,如果8M,此数值为1
void delay_us(u32 nus)
{       u32 temp;            SysTick->LOAD=nus*9; //时间加载             SysTick->VAL=0x00;        //清空计数器SysTick->CTRL=0x01 ;      //开始倒数   do{temp=SysTick->CTRL;}while(temp&0x01&&!(temp&(1<<16)));//等待时间到达   SysTick->CTRL=0x00;       //关闭计数器SysTick->VAL =0X00;       //清空计数器
}
void delay_ms(u16 nms)
{                 u32 temp;        SysTick->LOAD=(u32)nms*9000;//时间加载(SysTick->LOAD为24bit)SysTick->VAL =0x00;           //清空计数器SysTick->CTRL=0x01 ;          //开始倒数  do{temp=SysTick->CTRL;}while(temp&0x01&&!(temp&(1<<16)));//等待时间到达   SysTick->CTRL=0x00;       //关闭计数器SysTick->VAL =0X00;       //清空计数器
}

下面介绍IGF320240A显示屏配置方法

适配

u8 SPI1_ReadWriteByte(u8 TxData)
{       u8 rxdata = 1;#if onlysend //如果只配置了发送 使用HAL_SPI_TransmitHAL_SPI_Transmit(&hspi1,&TxData,1,100);//while(HAL_SPI_GetState(&hspi1) == HAL_SPI_STATE_READY);#else//如果配置了发送和接收 使用HAL_SPI_TransmitReceiveif(HAL_OK == HAL_SPI_TransmitReceive(&hspi1,&TxData,&rxdata,1,100)){    return rxdata;  };#endifreturn rxdata;
}void write_cmd(unsigned char cmd)  //发送寄存器地址
{LCD_DC_Clr();//写命令LCD_CS_Clr();HAL_SPI_Transmit(&hspi1,&cmd,1,100);delay(1);LCD_CS_Set();
}void write_dat(unsigned char dat)  //发送寄存器参数
{LCD_DC_Set();//写数据LCD_CS_Clr();SPI1_ReadWriteByte(dat);LCD_CS_Set();
}

2:STM32CubeMX配置STM32F103C8T6驱动-SPI驱动相关推荐

  1. 总线驱动--SPI驱动

    总线驱动–SPI驱动 文章目录 总线驱动--SPI驱动 SPI主机驱动 1.spi_master 申请与释放 2.spi_master 的注册与注销 SPI设备驱动 SPI 设备和驱动匹配过程 I.M ...

  2. 1:STM32CubeMX配置STM32F103C8T6驱动-下载软件配置RCC,CAN1,USART1

    1:下载软件 点击 这里立即下载,共454M. 2:通过STM32CubeMX配置USART1,CAN1 1:创建工程 创建文件夹存放工程 添加工程名称及路径: 为每个驱动单独创建.c和.h文件. 2 ...

  3. 2:STM32CubeMX配置STM32F103C8T6驱动-TIM1配置

    1:STM32CubeMX配置 1:确定时钟 2:设置1ms触发一次,72M/72/1000= 1000/s 定时器触发中断: 2:代码配置 在main.c中 /* USER CODE BEGIN 2 ...

  4. [转载]Linux驱动-SPI驱动 之二:SPI通用接口层

    通过上一篇文章的介绍,我们知道,SPI通用接口层用于把具体SPI设备的协议驱动和SPI控制器驱动联接在一起,通用接口层除了为协议驱动和控制器驱动提供一系列的标准接口API,同时还为这些接口API定义了 ...

  5. 3:STM32CubeMX配置STM32F103C8T6驱动-RTC驱动

    时钟配置 配置RTC 代码配置 Rte_Timer.h typedef struct {uint8 WeekDay; /*!< Specifies the RTC Date WeekDay (n ...

  6. 0.96OLED STM32 SPI驱动(一)

    闲来无聊,翻出了一个OLED,本来想串流做个小显示器用,感觉难度太大.将就变成了下面这 个样子,姑且叫火柴人大乱斗之OLED. 火柴人之OLED 分两步走,先驱动OLED能显示一副图片,本篇讲述此内容 ...

  7. 4412 SPI驱动

    1.Linux主机驱动和外设驱动分离思想(I2C驱动里有) SPI驱动总线架构:SPI核心层(x),SPI控制器驱动层(x),SPI设备驱动层(√).前面两个设备驱动搞明白了可以去看 2.教程中介绍: ...

  8. STM32CubeMX 配置CAN总线进行双板通信(STM32F103C8T6)

    本篇详细的记录了如何使用STM32CubeMX配置 STM32F103C8T6 的硬件CAN接口与另一个开发板之间通信. 1.硬件设计 我这里使用的TJA1050T作为CAN通信收发器,连接f103的 ...

  9. STM32CubeMX | 基于STM32使用HAL库硬件SPI驱动WK2124一拖四SPI转四路串口芯片

    STM32CubeMX | 基于STM32使用HAL库硬件SPI驱动WK2124一拖四SPI转四路串口芯片 STM32基础工程生成 首先使用STM32CUBEMX生成STM32的基础工程,配置时钟到7 ...

最新文章

  1. Bag标签之中的一个行代码实行中文分词实例2
  2. 同一个商户周结数据中既有分账交易又有非分账交易的处理方式
  3. 华为P50系列旗舰恐延期至5月发布:首发预装鸿蒙系统
  4. Spring如何优雅地发送异步发送通知?
  5. JP-Word 简谱编辑(JPW简谱)打谱软件免费版下载 WiN
  6. 声道测试音频_一音成佛的尺八音色,电吹管的单声道和双声道录音对比(2)
  7. 写在博士旅程之前|博士第一年|博士第三年|博士第四年
  8. 自训练和半监督学习介绍
  9. 台式计算机那里可以录音,录音机怎么录音?电脑录音介绍
  10. 基于 Node.js + Koa 构建完整的 Web API 项目
  11. 高效工程师系列(一) 如何找到一个利于自己成长的环境
  12. 高电平输入好还是rca输入好_德国伊顿ETON 7.1 DSP测评:为大系统而生
  13. response的响应头,下载文件
  14. linux低级挖矿病毒的查找定位
  15. delphi控件切图界面闪烁_8、控件系列之_加载占位图+页面指示器
  16. php curl常用的5个例子
  17. 书写历史的甲骨文--ORACLE公司传奇(转)
  18. Python高级:数据库CRUD操作
  19. 看我如何发送匿名邮件(.NET)
  20. 毕业学生就业数据可视化平台。

热门文章

  1. pyqt:让qlabel的图片根据鼠标指向的位置进行放缩
  2. Extending Air
  3. 浙江宁波天童禅寺重阳节前夕慰问鄞州区东吴福利院
  4. 真无线蓝牙耳机排名前十的品牌,公认佩戴舒适性好的蓝牙耳机分享
  5. steam、DOTA2或者steam下的游戏双击没反应怎么解决
  6. 支付宝|微信|h5|个人收款免签约支付系统源码
  7. 汽车销量查询小助手(小程序)开发心路历程
  8. Kong 网关 | Rate Limiting 限流
  9. 常用的表情和含义 各种笑脸;-)
  10. Mac远程控制Mac和Windows