这几天在写ht1621b显示LCD的程序,主芯片是Stm32f10的芯片。对于stm32和ht1621b的运用和操作本人是新手,属于赶鸭子上架,通过查看datasheet等资料和网上查看前人写的程序终于完成了LCD的显示,在此做个记录以备不时之需,并希望像能帮助想我一样的新人少走点弯路和共同学习。

  1. 接口脚和显示内存。
      ht1621b的接口脚主要有4个,分别是CS脚,DATA脚,WR脚,RD脚。我们只对LCD进行显示的话可以不用考虑RD脚。CS脚用于初始化串行接口电路和结束主控制器与HT1621之间的通讯。CS脚设置为1 时主控制器和HT1621之间的数据和命令无效并初始化。在产生模式命令或模式转换之前必须用一个高电平脉冲初始化HT1621的串行接口。DATA脚是串行数据输入/输出管脚,读/写数据和写命令通过管脚DATA进行。RD脚是读时钟输入管脚。在RD信号的下降沿时数据输出管脚DATA上。在RD信号上升沿和下一个下降沿之间,主控制器应读取相应的数据。WR脚是写时钟输入管脚,在WR信号上升沿时,管脚DATA上的数据、地址和命令被写入HT1621。可选的管脚IRQ可用作主控制器和HT1621之间的接口,IRQ可用软件设置作为定时器输出或WDT溢出标志输出。主控制器与HT1621的IRQ脚相连接后,可以实现时基或WDT 功能。
      ht1621b的显示内存是以32X4位的格式储存所显示的数据,RAM的数据直接映象到LCD 驱动器,可以使用读写命令访问。
    当初本人也是不理解“RAM的数据直接映象到LCD 驱动器,可以使用读写命令访问”,这句话的含义,网上也看到很多人对这句话不解。我们可以看一下ht1621b的RAM映象图和LCD映象图不难发现他们的关系。
    从映象图中可以看出,每个ht1621b的地址都都对应LCD,而对ht1621b的地址4位操作都对应LCD的一个“灯管”。地址的每一位0代表“”
  2. 时序图。
    只有按照ht1621b的时序读写数据才能完成一个数据的读写。下面我们来看看读模式的时序图,
    可以看出在读写模式之前先拉低管脚cs,再把管脚WR拉低等待数据的写入,管脚DATA写入101表示为写模式,每次写完一位后拉高管脚WR完成写入,再拉低管脚WR再次等待写入。写入模式要写6位表示地址的数据,程序中实现就是拉高拉低6次,后面的表示数据。当CS的上升沿到达时表示一数据写入完成。更多的时序请看ht1621b的datasheet。
    以下是驱动代码,仅供参考,写的不好希望大神指正。
    下载
    转载请注明出处:http://www.cnblogs.com/fyluyg/p/5880584.html

STM32驱动ht1621b显示LCD的更多相关文章

  1. STM32驱动ILI9341控制器控制TFTLCD显示

    STM32驱动ILI9341控制器控制TFTLCD显示 一.用STM32控制TFTLCD显示的编程方法,在编程驱动TFTLCD液晶显示器之前,我们先熟悉以下概念: 1.色彩深度,这是一个与TFTLCD ...

  2. STM32学习之路-LCD(4)<显示字符>

    昨晚疯狂的打了一夜的LOL,感觉L多了,今天一天精神萎靡.还是继续把显示字符给看了,可是在犹豫要不要写这篇文章 事实上写的东西也就是copy别人家的代码,不想写那么多,就记录下自己困惑的地方吧.也许改 ...

  3. STM32驱动LCD实战

    前段时间写了<STM32驱动LCD原理>和<STM32的FSMC外设简介>两篇文章,本文将对STM32驱动LCD进行实战应用.LCD是深圳市拓普微科技开发有限公司的LMT028 ...

  4. Arduino+ESP32 之 驱动GC9A01圆形LCD(二),移植LVGL,跑示例程序,显示自制图片

    在前文Arduino+ESP32 之 驱动GC9A01圆形LCD(一), 我们已经移植好了arduino GFX库, 该库的示例程序内,还有LVGL的示例程序哦. arduino环境下移植lvgl是很 ...

  5. esp8266的STM32驱动

    esp8266的STM32驱动,数据发送接收由DMA完成,释放CPU. 目前只能发送返回消息为成功或失败的AT命令,并判断是否成功,详见esp8266_cmd():其它返回消息不可预知的命令(如查看A ...

  6. STM32驱动OV7725摄像头颜色识别

    实验目的: 使用stm32驱动OV7725摄像头进行图像实时采集,在tft屏幕上实时显示并识别图像中的特定颜色,在颜色的周围画上框. 实验现象: 我的工程代码链接: http://download.c ...

  7. STM32—驱动GY85-IMU模块

    GY85是一个惯性测量模块,内部集成了三轴加速度计.三轴陀螺仪.电子罗盘.气压传感器等芯片,用于测量和报告设备速度.方向.重力,模块可以将加速度计.陀螺仪.电子罗盘等传感器的数据进行综合,在上位机可以 ...

  8. 联盛德 HLK-W806 (四): 软件SPI和硬件SPI驱动ST7735液晶LCD

    目录 联盛德 HLK-W806 (一): Ubuntu20.04下的开发环境配置, 编译和烧录说明 联盛德 HLK-W806 (二): Win10下的开发环境配置, 编译和烧录说明 联盛德 HLK-W ...

  9. 联盛德 HLK-W806 (九): 软件SPI和硬件SPI驱动ST7789V液晶LCD

    目录 联盛德 HLK-W806 (一): Ubuntu20.04下的开发环境配置, 编译和烧录说明 联盛德 HLK-W806 (二): Win10下的开发环境配置, 编译和烧录说明 联盛德 HLK-W ...

随机推荐

  1. FormsAuthentication登录ReturnUrl使用绝对路径

    ASP.NET]更简单的方法:FormsAuthentication登录ReturnUrl使用绝对路径   被这个问题困扰多年,今天终于找到了更简单的解决方法,分享一下. 问题场景 假设我们在i.cn ...

  2. MongoDB应用介绍之前

    MongoDb企业应用实战(一) 写在MongoDB应用介绍之前   故事背景: 本人有幸,经老友( 现为x知名快递公司技术总监 ) 推荐进入中国前三大民营快递公司之一工作,在此非常感谢他,在此也非常 ...

  3. Vi编辑器入门

    Vi编辑器入门   vi编辑器是所有Unix及Linux系统下标准的编辑器,类似于windows上的记事本! 1.vi的基本概念  基本上vi可以分为三种状态,分别是命令模式(command mode ...

  4. 在 Emacs 中如何退出 Slime Mode

    1.在 Slime 的 Buffer 中按逗号“,”: 2.在 Command 后输入:sayoonara 3.回车,确认. ================ 退出 SBCL 输入:(sb-ext:q ...

  5. Oracle JDBC存入图片Blob

    创建测试表 create table test_img( id integer primary key, name ), image blob ); 存储图片 import java.io.FileI ...

  6. .net mvc页面UI之Jquery博客日历控件

    摘要:最近在做一个博客系统,其他需要用到博客日历控件,网上搜索了很多资料,其中大部分都是javascript的,经过总结使用jquery实现了博客日历效果.代码如下: 原文链接转载请注明:http:/ ...

  7. springMVC3学习(三)--handlerMapping和handlerAdapter

    基本结构和 springMVC3学习(一)--框架搭建 差不多,这里不再用Annotation注解的方式 以下只说明需要修改的部分: 1.在Spring配置文件中配置HandlerMapping.Ha ...

  8. 安装Theano

    参考文档 http://deeplearning.net/software/theano/install_centos6.html#install-centos6 安装依赖库 sudo yum ins ...

  9. 多平台Client TCP通讯组件

    Beetle.NetPackage是一个多平台Client Socket TCP通讯组件(Apache License 2.0),组件制统一的对象协议制定规则,可以灵活方便地通过对象来描述TCP通讯交 ...

  10. WCF学习笔记之传输安全

    WCF学习笔记之传输安全 最近学习[WCF全面解析]下册的知识,针对传输安全的内容做一个简单的记录,这边只是简单的记录一些要点:本文的内容均来自[WCF全面解析]下册: WCF的传输安全主要涉及认证. ...