昨天我们使用了multi_timer +状态机来读取光强度。这篇文章的链接如下:基于熊光强度传感器BH1750(multi_timer +状态机工程应用)的实践,今天我们采取了进一步的措施,并将其发送给OLED与OLED结合!所谓所见即所得,这是发展的最大乐趣。
在实施此小项目之前,首先让我们了解Bear Pie开发板上的此屏幕。让我们看一下原理图的连接方式:如上图所示。
根据数据手册解释LCD控制方法:LCD_SPI_MOSI,LCD_SPI_CLK这两个引脚用于建立SPI通信协议。传统的SPI具有SPI_MOSI(主设备输出从设备输入),SPI_MISO(主设备输入从设备输出),SPI_SCK(SPI时钟线),那么为什么这里没有SPI_MISO?这是因为只需要显示它,因此在设计模块时,从机器发送到主机的数据线是隐藏的。
您可以参阅数据表第66页的相关说明。由于篇幅所限,将不会在此处发布。
。原理图引脚使用情况分析LCD_WR_RS是芯片的命令/数据控制引脚:根据数据手册,当LCD_WR_RS引脚为低电平时,它是写命令状态;当LCD_WR_RS引脚为高电平时,它是数据写状态。
LCD_RESET是LCD的复位引脚。当模块加电时,它被拉低。
通常,该位需要设置为1。LCD_POWER是LCD的电源引脚。
通常,可以将其直接拉高以使其点亮并正常工作。还有一个非常重要的功能,即LCD的芯片选择功能。
芯片选择已在原理图中直接下拉,因此可以使能芯片。关于通信协议对于SPI通信,数据具有传输时序,即时钟相位(CPHA)和时钟极性(CPOL)的组合:CPHA的级别确定串行同步时钟是在第一个时钟转换沿还是在第一个时钟转换沿。
第一次时钟转换。在两个时钟转换沿收集数据。
当CPHL = 0时,在第一个过渡沿执行数据收集;否则,在第一个过渡沿执行数据收集。 CPOL的电平确定串行同步时钟的空闲状态电平,并且CPOL = 0(低)。
从图中可以看出,当SCLK的第一个下降沿开始发送数据时,使用SPI0在一个时钟周期内发送8位数据,即按位传输,高位在先,低位在后。项目实战在上一节中,我们没有使用扩展板的LED灯。
在本节中,我们将配置光源(LED_SW)并将其从原始开发板上移除。该指示灯位于开发板的PB9端口上。
我们将在上一个项目的基础上添加与SPI相关的配置并直接实现它。在上一部分中打开项目:1.修改LED_SW灯的配置2.配置SPI2 3.配置LCD_WR_RS,LCD_RESET,LCD_POWER 4.生成项目,然后移植熊派LCD的示例包括LCD驱动程序源代码。
将LCD相关文件添加到Keil项目中并进行编译后,发现存在错误:LIGHT_SENSOR_I2CLIGHT_SENSOR_I2C.axf:错误:L6218E:未定义的符号SPI2_WriteByte(从lcd.o引用)。在lcd中的含义程序文件中未定义SPI2_WriteByte接口。
找到错误的地方,添加这样的功能,然后编译以解决问题。 & nbsp;& nbsp;& nbsp;接下来,在main.c中添加头文件:/ *私有包含--------------------------- -------- ----------------------- * // *用户代码开始包括* /#include“ lcd.h” #include“ HzLib.h” / *用户代码结束包括* /接下来,添加LCD显示逻辑:/ ** * @brief应用程序入口点。
* @retval int * / int main(void){/ *用户代码开始1 * / char display_buf [20] = {0}; / *用户代码结尾1 * / / * MCU配置--------------- ----------- ------------------ * / / *重置所有外围设备,初始化Flash接口和Systick。 * / HAL_Init(); / *用户代码开始Init * / / *用户代码结束Init * / / *配置系统时钟* / SystemClock_Config(); / *用户代码开始SysInit * / / *用户代码结束SysInit * / / *初始化所有已配置的外围设备* / MX_GPIO_Init(); MX_I2C1_Init(); MX_USART1_UART_Init(); MX_SPI2_Init(); / *用户代码开始2 * / / *在串行端口初始化之后添加此延迟,以防止后续的printf打印乱码* / HAL_Delay(200); LCD_Init(); LCD_Clea r(BLACK); //将屏幕清除为黑色LCD_ShowString(5,10,240,32,32,“ BearPi LuxTest”); //显示字符串,字体大小32 * 32 printf(“光强度读取测试实验
”); Init_BH750(); timer_init(& amp; lsensor.timer1,lsensor.timeout_cb,1,1); ti。
公司: 深圳市捷比信实业有限公司
电话: 0755-29796190
邮箱: ys@jepsun.com
产品经理: 汤经理
QQ: 2057469664
地址: 深圳市宝安区翻身路富源大厦1栋7楼

更多资讯
获取最新公司新闻和行业资料。
- 如何根据项目需求选择PTTC聚鼎PT08V2DF-C或PTLC24D-B传感器 基于项目需求的传感器选型指南:PT08V2DF-C vs PTLC24D-B在智能控制系统设计中,传感器的选型直接决定系统的可靠性与扩展性。面对PTTC聚鼎推出的两款热门型号——PT08V2DF-C与PTLC24D-B,工程师常面临选择困惑。本文将从项目实际出发...
- LED显示器背光驱动技术解析:低电压DC-DC驱动器如何提升能效与显示质量 LED显示器背光驱动系统的核心作用在现代显示设备中,尤其是液晶显示器(LCD)和OLED面板,背光驱动电路扮演着至关重要的角色。它不仅决定屏幕亮度的均匀性,还直接影响能耗、寿命与视觉体验。其中,低电压DC-DC LED驱动器因...
- LED背光驱动方案:从手机到大屏电视的视觉体验升级关键 LED背光驱动方案的技术演进与应用价值随着显示技术不断进步,从智能手机到超大尺寸电视,对画质、亮度均匀性与功耗控制的要求日益提升。LED背光驱动方案作为液晶显示(LCD)系统的核心组成部分,直接决定了画面的清晰度...
- 万用表测电阻显示0.L的原因解析 当使用万用表测量电阻时,如果显示屏上出现“0.L”的读数,这通常意味着被测电阻值小于万用表能够准确显示的最小值。具体来说,“0.L”中的“L”代表低(Low)的意思,表示电阻值过低以至于超出了当前量程设置下的分辨率...
- 如何根据项目需求选择WAN3216F157CA4或WAN3216F117CA4? 从项目实际出发:如何明智选型WAN3216F157CA4与WAN3216F117CA4在进行嵌入式系统开发时,正确选择微控制器至关重要。面对相似型号的WAN3216F157CA4与WAN3216F117CA4,开发者应结合项目特性做出合理决策。1. 明确项目资源需求首先评估项目对...
- 如何根据项目需求选择HELI-UM系列与HELI系列高亮度LED? 精准匹配需求:从项目实际出发选择合适的HELI LED产品在进行照明系统设计时,正确选择LED产品至关重要。面对HELI-UM系列与HELI系列高亮度LED,许多工程师与采购人员常面临困惑。本文将从五个维度帮助您做出科学决策。1. 项目类...
- 显示器内部是否有保险丝?揭秘电脑显示器电路安全设计 显示器内部是否有保险丝?深入解析其电路保护机制在日常使用电脑显示器时,许多人会关心一个基本问题:显示器内部是否含有保险丝?答案是:**大多数现代显示器确实内置了保险丝或类似的过流保护元件**,尽管它们可能不...
- PTTC聚鼎PT3621NT vs PT1201NT:如何根据项目需求做出明智选择? 前言:选型误区与正确思路面对市场上众多相似型号的传感器,许多工程师容易陷入“功能越全越好”的误区。然而,真正的高效选型应基于项目具体需求——包括环境条件、通信要求、电源限制和预算范围。本文将以PTTC聚鼎的...
- 深度解析:如何正确选型PTTC聚鼎PTLC24D-B与PTLC12D-B传感器 选型前必须了解的关键因素面对PTTC聚鼎推出的PTLC24D-B与PTLC12D-B两款传感器,用户常面临“选哪个更好”的困惑。本文将从技术参数、系统兼容性、后期维护等多个角度,提供科学的选型指导。1. 电源系统匹配性分析若您的控制系...
- 如何根据项目需求选择PTTC聚鼎PVR10D或PMV0402-5R0E100电阻元件 从设计角度解析两款电阻的选型策略在电子系统开发过程中,正确选用电阻元件是保障整体性能的关键环节。针对PTTC聚鼎的PVR10D与PMV0402-5R0E100,应结合具体应用场景进行科学选型。1. 功率与空间考量若项目涉及大电流或高电压应...
- RS232 vs USB 3.2:如何根据项目需求选择合适的通信接口? 基于项目需求选择通信接口:RS232与USB 3.2的实战决策指南在设计嵌入式系统、自动化设备或工业控制系统时,选择正确的通信接口至关重要。本文将结合实际案例,帮助开发者判断何时应使用RS-232,何时应转向更先进的USB 3.2标准...
- 触控屏幕控制器原理详解:从信号采集到人机交互的全过程 触控屏幕控制器原理详解触控屏幕控制器是实现触摸交互的核心硬件组件,广泛应用于智能手机、平板电脑、工业控制面板及智能家居设备中。其核心功能是实时检测用户手指或触控笔的位置,并将这些信息转化为数字信号,供...
- 深入解析:如何根据项目需求选择SMFF1206、SMFF2410与SMFM2410贴片电阻? 前言:贴片电阻选型的关键考量因素在现代电子产品设计中,电阻虽小,却直接影响系统稳定性与寿命。面对众多型号,尤其是同系列中的SMFF1206、SMFF2410与SMFM2410,如何科学选型成为工程师必须掌握的核心技能。本文从多个维度...
- 如何根据系统需求选择合适的参考电压组件:0.6V vs 1.24V 从系统级设计视角看0.6V与1.24V参考电压组件的选型策略在嵌入式系统、传感器接口电路以及电源管理芯片设计中,参考电压组件的选择直接影响系统的可靠性与能效表现。本文将从多个维度深入剖析0.6V与1.24V参考电压组件的选型...
- 如何提升铂电阻温度传感器与角度传感器的测量精度? 如何提升铂电阻温度传感器与角度传感器的测量精度?在现代智能系统中,传感器精度是决定系统性能的关键。无论是工业控制、航空航天还是新能源设备,精准的数据采集都离不开高性能传感器。本文聚焦于铂电阻温度传感器...
- 深入解析WAN系列模块:如何根据项目需求选择WAN3216FU58H08、WAN1803DL4GH05与WAN1608H245L08 前言:为何要关注模块型号差异?在嵌入式系统开发中,模块选型直接影响项目的稳定性、成本与后期维护效率。以WAN3216FU58H08、WAN1803DL4GH05和WAN1608H245L08为代表的工业级通信模块,虽同属WAN系列,但在功能定位上存在显著差异。...
- 深入解析:如何根据项目需求正确选择SMFM2410、SMFF2410与SMFF1206贴片电阻 引言在现代电子设计中,贴片电阻的选择直接影响到电路的可靠性、效率和整体成本。面对市场上种类繁多的电阻型号,尤其是相似命名的 SMFM2410、SMFF2410 与 SMFF1206,工程师常面临困惑。本文将从技术指标、应用场景、成本效益...
- 如何根据项目需求选择PTTC聚鼎PT1521NT或PT1201NT?实用选型指南 PTTC聚鼎PT1521NT与PT1201NT选型关键因素分析在实际工程设计中,正确选择适合的电源模块是保障系统稳定运行的关键。本文结合真实应用案例,提供一套科学的选型流程。1. 输入电压匹配度首要考虑因素是系统供电电压是否与模块输...
- 如何根据项目需求选择PTTC聚鼎PTLC05R或PTLC0524P?实用选型指南 PTTC聚鼎PTLC05R vs PTLC0524P:精准选型决策手册面对众多电源管理芯片,正确选择PTTC聚鼎的PTLC05R或PTLC0524P,需结合实际应用场景、环境条件与系统功耗要求。以下为一份实用选型指南,帮助工程师快速定位最优方案。1. 输入电压范围...
- 深入浅出:如何选择适合显示器的高性能LED驱动器? 选型关键因素:从性能到兼容性在构建或升级显示器背光系统时,选择合适的LED驱动器是决定最终显示效果的关键一步。以下从多个维度进行分析,帮助用户做出科学决策。1. 输入电压范围与工作环境匹配需确认驱动器是否支持...