当前位置: 首页 > news >正文

STM32 HAL库开发——入门篇(3):OLED、LCD

源自正点原子视频教程:

【正点原子】手把手教你学STM32 HAL库开发全集【真人出镜】STM32入门教学视频教程 单片机 嵌入式_哔哩哔哩_bilibili

一、OLED

二、内存保护(MPU)实验

2.1 内存保护单元 

三、LCD

3.1 显示屏分类

3.2 LCD简介

 

3.3 LCD驱动原理

 

 

3.4 LCD驱动芯片

读ID时,两个芯片不一样,ILI9341是0XD3,ST7789是0X04

 

有 8 种扫描方向

可以支持只发一个起始坐标,前提是初始化之后就要完整的设置一下

return 的移位操作,最后结果就是把r,g,b的值按 565 的位数地址分别存到3个变量中

代码第二行的 g=,应该是 r=

 

3.5 LCD基本驱动实现

 

3.6 编程实战1

3.7 FSMC

3.7.1 FSMC简介

3.7.2 FSMC框图介绍 

HADDR总线可以理解为AHB总线 

3.7.3 FSMC时序介绍

不反转就没有边沿 

       通过ADDSET和DATAST两个参数可以设置FSMC的时间,这个时间看8080时序,即看芯片的要求 

       FSMC产生的时序,要满足下图所示一些的时间要求 

3.7.4 FSMC地址映射

为什么是26根地址线,2^26Byte = 64M Byte,F有4位 

选择16位的数据宽度,会存在一个地址偏移,HADDR地址 addr0 = FSMC地址 addr1 * 2 

3.7.5 FSMC相关寄存器介绍

3.7.6 FSMC相关HAL库函数 

 

 

3.7.8 编程实战2

 

四、触摸屏

4.1 触摸屏介绍

 

4.2 触摸屏原理介绍

按下时,电流被手指分走,电流减小 

4.3 触摸IC介绍

电阻屏: 

p161 35:20 介绍电容屏

4.4 触摸屏驱动步骤 

4.5 编程实战 

电阻屏是获取 ad值再转化成坐标值,电容屏是直接获取坐标值

http://www.lryc.cn/news/366729.html

相关文章:

  • 在Linux中查找文件命令的几种方法
  • 【TB作品】MSP430F5529 单片机,温度控制系统,DS18B20,使用MSP430实现的智能温度控制系统
  • 立创小tips
  • Html/HTML5常用标签的学习
  • Tomcat 配置:一文掌握所有要点
  • git 大文件上传失败 Please remove the file from history and try again.
  • 骑砍2霸主MOD开发(14)-进击的巨人
  • Android 可拖拽的View,限制在父布局中随意拖拽;拖拽结束后可左右吸边;
  • 逐步更新动画混合参数(Blend)使其平滑地过渡到目标值
  • 【多模态/CV】图像数据增强数据分析和处理
  • 代码随想录——修建二叉搜素树(Leetcode669)
  • EasyExcel导出多个sheet封装
  • 【Python错误】:AttributeError: ‘generator‘ object has no attribute ‘next‘解决办法
  • 如何配置Feign以实现服务调试
  • pc之间的相互通信详解
  • Mongodb中字段的删除
  • TP8 PHP 动态变量调用 (new $class())->$action($data)
  • 理解JVM内存模型与Java内存模型(JMM)
  • 鸿蒙OS初识
  • 发布自己的 npm 插件包:步骤与最佳实践
  • BubbleML: A Multiphase Multiphysics Dataset and Benchmarks for Machine Learning
  • vscode+latex设置跳转快捷键
  • PHP序列化、反序列化
  • websocket链接携带参数
  • 【C++进阶】深入STL之list:模拟实现深入理解List与迭代器
  • 技术管理之巅—如何从零打造高质效互联网技术团队阅读体验
  • 机器学习与数据挖掘知识点总结(一)
  • 行心科技中禄松波携手,开启智能健康新时代
  • 前端多人项目开发中,如何保证CSS样式不冲突?
  • 【YOLOv10改进[CONV]】使用DualConv二次创新C2f模块实现轻量化 + 含全部代码和详细修改方式 + 手撕结构图 + 全网首发