加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入

第三四章-OLED使用和串口openmv图像处理小车硬件介绍-(全网最详细)基于STM32智能小车

06/07 11:31
2052
服务支持:
技术交流群

完成交易后在“购买成功”页面扫码入群,即可与技术大咖们分享疑惑和经验、收获成长和认同、领取优惠和红包等。

虚拟商品不可退

当前内容为数字版权作品,购买后不支持退换且无法转移使用。

加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论
放大
实物图
相关方案
  • 方案介绍
    • 第三章-OLED使用
    • 3.1-资料准备
    • 3.2-相关知识
    • 3.3-解决一些错误
    • 3.4-开始初始化OLED
    • 第四章-串口实验(简单输出)
    • 4.1-串口编写
    • 4.2-串口实验
  • 相关文件
  • 推荐器件
  • 相关推荐
  • 电子产业图谱
申请入驻 产业图谱

第三 四章-OLED使用 和串口openmv图像处理小车硬件介绍-(全网最详细)基于STM32智能小车-蓝牙遥控、避障、循迹、跟随、PID速度控制、视觉循迹、openmv与STM32通信

第三章-OLED使用

3.1-资料准备

我们先去下载这个OLED模块的资料

这里我们下载:优信电子–0.96寸 OLED显示液晶屏模块 IIC液晶屏 四引脚

淘宝链接:

https://item.taobao.com/item.htm?spm=a230r.1.14.16.504611e6WA3Clv&id=562145367495&ns=1&abbucket=3#detail

OLED资料链接:

0.96寸(4管脚)资料下载链接:

https://pan.baidu.com/s/1J57Izsv-PKmbwVrA2ynDzg 提取码:vktz

找到我们要的历程–中景园电子0.96OLED显示屏_STM32F103C8_IIC_V1.0

3.2-相关知识

这个OLED是IIC协议,很多都是单片机模拟IIC和模块通信的,这个也是模拟IIC控制OLED的

我们先看一下这个历程

所谓我们移植的时候替换相关初始化内容和GPIO置为函数就行

3.3-解决一些错误

把OLED文件复制过去

添加组和包含文件

选择添加路径

编译一下–找不到sys.h 删掉sys.h

编译一下–把所有的u8都替换成uint8_t u32 替换成uint32_t

编译报错 找不到uint8_t 包含一下#include “main.h” 解决

有警告 声明加上void

下面是一些GPIO的错误,我要解决初始化问题了

3.4-开始初始化OLED

先看原理图 SDA-PB12 SCL-PA15

然后我们开始初始两个GPIO为输出模式–上拉输出模式

然后我们生成代码,更改一下IIC协议的GPIO设置,和初始化部分

#define OLED_SCLK_Clr() HAL_GPIO_WritePin(OLED_SCL_GPIO_Port, OLED_SCL_Pin, GPIO_PIN_RESET)//设置SCL低电平
#define OLED_SCLK_Set() HAL_GPIO_WritePin(OLED_SCL_GPIO_Port, OLED_SCL_Pin, GPIO_PIN_SET)//设置SCL高电平

#define OLED_SDIN_Clr() HAL_GPIO_WritePin(OLED_SDA_GPIO_Port,OLED_SDA_Pin,GPIO_PIN_RESET)//设置SDA低电平
#define OLED_SDIN_Set() HAL_GPIO_WritePin(OLED_SDA_GPIO_Port,OLED_SDA_Pin,GPIO_PIN_SET)//设置SDA高电平

下面delay函数出现报错 我们替换成HAL_Delay

编译没有报错了,我们在主函数添加初始化和测试代码

  OLED_Init();			//初始化OLED  
  OLED_Clear(); 
  
  		OLED_ShowCHinese(0,0,0);//中
		OLED_ShowCHinese(18,0,1);//景
		OLED_ShowCHinese(36,0,2);//园
		OLED_ShowCHinese(54,0,3);//电
		OLED_ShowCHinese(72,0,4);//子
		OLED_ShowCHinese(90,0,5);//科
		OLED_ShowCHinese(108,0,6);//技

烧录下载 现象OLED屏幕显示-中景园电子科技

第四章-串口实验(简单输出)

这里我们先初始化串口一、实现数据输出。

4.1-串口编写

软件初始化

然后我们实现串口数据输出

方法一:

	uint8_t c_Data[] = "串口输出测试:好家伙VCCrn";
	HAL_UART_Transmit(&huart1,c_Data,sizeof(c_Data),0xFFFF);
	HAL_Delay(1000);

方法二:实现printf函数

打开微库

重定向fputc

/**
* @brief 重定向printf (重定向fputc),
					使用时候记得勾选上魔法棒->Target->UseMicro LIB 
					可能需要在C文件加typedef struct __FILE FILE;
					包含这个文件#include "stdio.h"
* @param 
* @return 
*/
int fputc(int ch,FILE *stream)
{
	HAL_UART_Transmit(&huart1,( uint8_t *)&ch,1,0xFFFF);
	return ch;
}

如果有错误

usart.c添加这个typedef struct __FILE FILE;

添加一下测试(记得包含"stdio.h")

printf("printf:好家伙VCC测试rn");

4.2-串口实验

接线图
先烧录好,再连接串口查看现象

连接串口 可以使用 USB转TTL如CH340模块 或者 用DAP的串口功能

使用USB转TTL如CH340模块

使用DAP

然后我们打开串口助手,选择串口端口和波特率,就可以看到输出

蓝牙模块使用

蓝牙模式使用在后面章节讲解

联系:Q,1930299709

  • 联系方式.txt

推荐器件

更多器件
器件型号 数量 器件厂商 器件描述 数据手册 ECAD模型 风险等级 参考价格 更多信息
E10GSFPSR 1 Intel Corporation Transceiver,
$92.62 查看
CB3LV-3C-10M0000 1 CTS Corporation HCMOS/TTL Output Clock Oscillator, 1.5MHz Min, 107MHz Max, 10MHz Nom, GREEN, CERAMIC PACKAGE-4

ECAD模型

下载ECAD模型
$2.19 查看
NRF52832-QFAA-R 1 Nordic Semiconductor Telecom Circuit, 1-Func, 6 X 6 MM, 0.40 MM PITCH, ROHS AND REACH COMPLIANT, QFN-48
$5 查看

相关推荐

电子产业图谱