大家好,我是程序员小哈。

– 简介

问题由来

NOKIA 5110 屏

Nokia5110屏是一个非常经典的液晶显示模块,在小哈哥玩单片机的时候,可选的液晶模块并不多,一般来说就是LCD1602、LCD12864,这个Nokia5110屏在我当时来看,是相当高级的一个液晶屏了。

Nokia/诺基亚5110 屏是用在5110、6150,6100 等系列移动电话上的液晶显示模块,国内厂家也生产有类似的兼容产品。该产品除应用于移动电话外,也可广泛应用于各类便携式设备的显示系统。单片机控制显示,人机交互界面显示,数据采集显示等电子设计场合。

规格参数

工作电压:DC3.3-5.0V
屏幕颜色:单色
分辨率:84*48,字符:6*8字符的话,可以显示6行字符,每行14个字符
通信方式:串行SPI接口
液晶模块:LPH7366
运用场合:单片机检测信息显示,人机交互界面开发等电子设计
外形尺寸:45x43x1.6mm

管脚定义

名称 含义
CLK 串行时钟线
DIN 串行数据线
DC 数据/指令选择
CE 片选
RST 复位
VCC 电源输入(3.3V和5V均可)
BL 背光控制端
GND 地线

模块原理图

实际硬件连接

Nokia 5110端 STM32端
CLK PC3
DIN PC2
DC PC1
CE PC0
RST PC5
VCC 3.3V
BL 3.3V
GND GND

模块尺寸

程序移植

小哈哥之前用51单片机驱动过这个液晶屏,实际使用只需要五个IO引脚即可驱动。

我们今天就看看,如果网上找不到你所用芯片的例程,只有别的芯片的例程你怎么参考呢?下面咱们就来移植一下。

拷贝驱动文件

将液晶屏的驱动文件拷贝到STM32工程下的HARDWARE目录下,并在STM32的工程中添加文件。

添加GPIO初始化函数

void lcd_gpio_init(void)
{GPIO_InitTypeDef  GPIO_InitStructure;RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE);GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3|GPIO_Pin_5;GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;GPIO_Init(GPIOC, &GPIO_InitStructure);
}

修改GPIO操作的宏定义

//51单片机
//sbit LCD_RST=P0^0;
//sbit LCD_CE=P0^1;
//sbit LCD_DC=P0^2;
//sbit LCD_DIN=P0^3;
//sbit LCD_CLK=P0^4;//STM32单片机
#define LCD_RST PCout(5)
#define LCD_CE PCout(0)
#define LCD_DC PCout(1)
#define LCD_DIN PCout(2)
#define LCD_CLK PCout(3)

修改1us的延时

#define Wait1us delay_us(1)

函数调用

//Nokia5110初始化
lcd_gpio_init();
lcd_init();
lcd_clear(); //清屏幕lcd_string(0,0,"Time:");

编译程序,没有错误,下载程序,发现屏幕中可以正常显示预设内容,证明驱动已经移植成功了。

源码获取/素材获取

公众号后台回复关键字:Nokia5110,获取测试Demo源码。

结果展示

视频展示

总结

这次测试用的杜邦线,杜邦线虽然方便,但是一碰,屏幕显示输出就没有了,只能重新插拔,复位单片机,很是无语。

另外还要注意,有的时候,杜邦线接触不是很好,在测试程序的时候,首先要保证杜邦线的接触良好,大家不确认的话,可以使用万用表蜂鸣器档,测测每个引脚的两端是否导通。

怎么样?还是挺简单的吧?本文有没有收获?可以文末留言交流一下哈,或者加小哈哥微信,我们群里聊。

好了,今天的文章内容到这里就结束了,希望对你有帮助,我们下一期见!~

如果想了解小哈哥的知识星球,可以点击下面链接查看球友的福利,我们可以一起交流、一起玩耍。

知识星球简介链接:
https://mp.weixin.qq.com/s/hjhOedO9prE2tmLH4zO9vA?scene=25#wechat_redirect

移植Nokia5110屏驱动 | 我是如何将51代码转为STM32驱动代码的相关推荐

  1. 外设驱动库开发笔记51:SDP800差压传感器驱动

      检测流量数据的方法有很多种,这一次我们就是使用SDP800差压传感器来测量流量数据.所以在这一篇中,我们将讨论如何实现SDP800差压传感器的驱动,并使用它实现流量数据的检测. 1.功能概述    ...

  2. STM32 驱动4.3寸TFT LCD 触摸屏

    STM32 驱动4.3寸TFT LCD 触摸屏 STM32的FSMC接口是并行总线接口,可以用于驱动存储芯片如FLASH/SRAM等,也可以用于驱动并口LCD屏.触摸屏是在显示屏上覆盖一层触摸感应的外 ...

  3. STM32驱动全彩LED灯模块WS2812

    STM32驱动全彩LED灯模块WS2812 WS2812全彩LED灯模块系列,可以进行级联实现灯带的效果,MCU端通过一个管脚可以控制所有级联的LED灯的不同发光颜色显示. 级联电路 WS2811(未 ...

  4. CH9121串口转以太网模块STM32驱动

    CH9121串口转以太网模块STM32驱动 文章目录 CH9121串口转以太网模块STM32驱动 0. 简介 1. 特性: 2. 应用场合 3. 示例平台 4. 代码 0. 简介 CH9121 集成T ...

  5. linux下移植电容屏驱动gt9xx 笔记

    # evtest /dev/event0 或者 # hexdump /dev/event0// 分析: \drivers\i2c\busses\I2c-digicolor.c static struc ...

  6. LCD12864驱动(Proteus中用51单片机驱动AMPIRE128X64)

    致谢:先贴张图来感谢一下我那傻逼的王志学长,要不是你给我的资料跟我用的LCD型号不一样,我TM早就驱动起来了. 填坑:1.TMD Proteus的AMPIRE128X64这个型号的LCD内部没有所谓的 ...

  7. GC9A01-TFT屏幕驱动(整理有stm32/51单片机/arduino等驱动代码)

    GC9A01-TFT屏幕驱动 & 整理有stm32/51单片机/arduino等驱动代码 前言 关于GC9A01 stm32驱动 引脚接线 代码移植 文件复制 端口修改 显示函数 中文汉字数组 ...

  8. ST7735-TFT屏幕驱动(整理有stm32/51单片机/arduino等驱动代码)

    ST7735-TFT屏幕驱动 & 整理有stm32/51单片机/arduino等驱动代码 前言 关于ST7735 stm32驱动 引脚接线 代码移植 文件复制 端口修改 显示函数 中文汉字数组 ...

  9. STM32驱动串口屏,STM32F103C8T6串口发送指令控制HMI串口屏

    STM32驱动串口屏,STM32F103C8T6串口发送指令控制HMI串口屏 串口屏 基础指令集 硬件和接线 接线 实验前准备 STM32程序 串口程序 主函数 实验现象 总结 串口屏 串口屏是一个集 ...

最新文章

  1. 一文看懂人脸识别(4个特点+4个实现步骤+5个难点+算法发展轨迹)
  2. 企业级Nginx服务基础到架构优化详解--25条
  3. shadow fight 1.6.0 内购
  4. 黑马lavarel教程---13、分页
  5. HDU2222 Keywords Search(AC自动机模板)
  6. UNITY引擎变量调用产生不必要内存分配
  7. python 密码学 模块_python学习-itsdangerous模块-黑马程序员技术交流社区
  8. Codeforces Round #402 D String Game(二分)
  9. 一个“普通人”的秋招算法岗上岸心得
  10. Guice Aop 与 Hasor Aop 原理及其实现
  11. python3 range函数_为什么python3中的xrange函数不能用
  12. matlab 无线仿真教学视频教程,视频教程 | MATLAB 及机电系统仿真
  13. 计算机所建造全过程,Midas 桥梁设计建模计算,全过程图文解析!
  14. Go Hijack黑科技
  15. [渝粤教育] 广东-国家-开放大学 21秋期末考试土木工程施工10516k1
  16. 《Python程序设计入门与实践》219道课后习题答案
  17. Ubuntu用户管理原理
  18. 万字长文:盘点2022全球10大数据泄漏事件(红蓝攻防角度)
  19. CSR:SSL证书的孵化器
  20. Angular2详解

热门文章

  1. 【最好用】remote desktop organizer 远程桌面管理工具的详细配置
  2. echange 2013登录ecp失败
  3. COMSOL本周六开课/FDTD时域有限差分/RSoft光电器件仿真设计专题线上通知
  4. 单连通图(算法导论22.3-12)
  5. java计算机毕业设计ssm高校工资管理系统
  6. 用Python处理一些简单的数学问题的方法
  7. 拥抱Swift吧,骚年!
  8. 山东自然人电子税务局(扣缴端)_自然人电子税务局扣缴客户端升级要点, 不要错过!...
  9. 魔兽世界以前的服务器找不到了,魔兽世界怀旧服服务器彻底崩溃,玩家游戏人物消失服务器全部不见...
  10. 西南财经大学本科毕业论文答辩PPT模板