如何弄懂单片机时序_关于单片机时序分析 - 深圳led背光源生产厂家,lcd显示屏,lcm液晶显示模块|模组厂-欧陆娱乐


  • 欧陆娱乐



  • 


  •  深圳市欧陆娱乐产品分类列表

    联系我们

    公司名称:深圳市欧陆娱乐光电有限公司
    厂址:中国.广东省.深圳市宝安西乡臣田工业区

    营销专线
    吴先生 手机 :13538278608
    胡先生 手机:13823360976
    固定电话:86-0755-28246146/
    28246906/28246536/28247229
    电话传真 :86-0755-89715671
    投诉与售后咨询 黄小姐:13823217679
    胡先生 :13928021976

    Email:bly@sdgfj.net

    公司网址 :https://www.sdgfj.net/

    如何弄懂单片机时序_关于单片机时序分析

    如何弄懂单片机时序_关于单片机时序分析

     

    LinkedIn单片机时序是指单片机执行指令时应发出的控制信号的时间序列。这些控制信号在时间上的相互关系就是CPU的时序 。它是一系列具有时间顺序的脉冲信号。

    CPU发出的时序有两类:一类用于片内各功能部件的控制 ,它们是芯片设计师关注的问题 ,对用户没有什么意义。另一类用于片外存储器或I/O端口的控制,需要通过器件的控制引脚送到片外,这部分时序对分析硬件电路的原理至关重要 ,也是软件编程遵循的原则,需要认真掌握。

    CPU发出的时序有两类:一类用于片内各功能部件的控制 ,它们是芯片设计师关注的问题,对用户没有什么意义。另一类用于单片机外部芯片的控制,这部分时序对分析硬件电路的原理至关重要,也是软件编程遵循的原则 。

    操作时序永远使用是任何一片IC芯片的最主要的内容。一个芯片的所有使用细节都会在它的官方器件手册上包含 。所以使用一个器件事情 ,要充分做好的第一件事就是要把它的器件手册上有用的内容提取,掌握其工作时序 。

    在这里我们以液晶1602为例,分析其操作时序。其基本时序有读状态,写指令,读数据和写数据。

    1602的引脚定义

    我们首先来看1602的引脚定义 ,1602的引脚是很整齐的SIP单列直插封装 ,所以器件手册只给出了引脚的功能;

    我们只需要关注以下几个管脚:

    3脚:VL ,液晶显示偏压信号 ,用于调整LCD1602的显示对比度,一般会外接电位器用以调整偏压信号,注意此脚电压为0时可以得到最强的对比度 。

    4脚:RS,数据/命令选择端 ,当此脚为高电平时,可以对1602进行数据字节的传输操作 ,而此脚为低电平时,则是进行命令字节的传输操作。命令字节 ,即是用来对LCD1602的一些工作方式作设置的字节;数据字节,即使用以在1602上显示的字节 。值得一提的是,LCD1602的数据是8位的 。

    5脚:R/W ,读写选择端 。当此脚为高电平可对LCD1602进行读数据操作,反之进行写数据操作 。笔者认为,此脚其实用处不大 ,直接接地永久置为低电平也不会影响其正常工作 。但是尚未经过复杂系统验证,保留此意见 。

    6脚:E,使能信号,其实是LCD1602的数据控制时钟信号,利用该信号的上升沿实现对LCD1602的数据传输。

    7~14脚 :8位并行数据口,使得对LCD1602的数据读写大为方便。

    写命令和写数据

    在此,我们分析两个写时序 :写命令和写数据 。

    写命令

    当我们要写指令字,设置LCD1602的工作方式时:需要把RS置为低电平 ,RW置为低电平,然后将数据送到数据口D0~D7,最后E引脚一个高脉冲将数据写入 。

    voidWriteCommandLCD(unsignedcharWCLCD ,BuysC)//BuysC为0时忽略忙检测

    {

    if(BuysC)ReadStatusLCD();//根据需要检测忙

    LCD_Data=WCLCD;//将要写的命令放在数据线上

    LCD_RS=0;//RS为低表明要写的为命令

    LCD_RW=0;//RS为低表明执行的是写操作

    LCD_E=0;

    LCD_E=0;

    LCD_E=1;//以上三条语句引入一个高脉冲

    }

    写数据

    当我们要写入数据字,在1602上实现显示时:需要把RS置为高电平 ,RW置为低电平 ,然后将数据送到数据口D0~D7,最后E引脚一个高脉冲将数据写入。

    voidWriteDataLCD(unsignedcharWDLCD)

    {

    ReadStatusLCD();//检测忙

    LCD_Data=WDLCD;//将要写的命令放在数据线上

    LCD_RS=1;//RS为高表明要写的为数据

    LCD_RW=0;//RS为低表明执行的是写操作

    LCD_E=0;

    LCD_E=0;

    LCD_E=1;//以上三条语句引入一个高脉冲

    }

    写指令和写数据,差别仅仅在于RS的电平不一样而已。以下是LCD1602的时序图,大家写驱动代码的时候一定要充分理解器件的时序图(配合文字说明),否则写不出合格的驱动代码,器件也就不能工作。大家可以将上面的代码对照下图,看是不是一回事。

    看懂时序图注意事项

    1、注意时间轴 ,如果没有标明(其实大部分也都是不标明的),那么从左往右的方向为时间正向轴,即时间在增长。

    2、框出并注明了看懂此图的一些常识:

    (1)时序图最左边一般是某一根引脚的标识 ,表示此行图线体现该引脚的变化,上图分别标明了RS、R/W 、E、DB0~DB7四类引脚的时序变化 。

    (2)有线交叉状的部分 ,表示电平在变化,如上所标注 。

    (3)应该比较容易理解,如上图右上角所示,两条平行线分别对应高低电平,也正好吻合(2)中电平变化的说法。

    (4)下,密封的菱形部分,注意要密封,表示数据有效,Valid Data这个词也显示了这点。

    3 、需要十分严重注意的是,时序图里各个引脚的电平变化,基于的时间轴是一致的。一定要严格按照时间轴的增长方向来精确地观察时序图。要让器件严格的遵守时序图的变化 。在类似于18B20这样的单总线器件对此要求尤为严格。

    4、以上几点 ,并不是LCD1602的时序图所特有的 ,绝大部分的时序图都遵循着这样的一般规则 ,所以大家要慢慢的习惯于这样的规则 。

    时序参数

    时间的标注,也是个十分重要的信息 ,这些时间的标注表明了某些状态所要维持的最短或最长时间 。因为器件的工作速度也是有限的 ,一般都跟不上主控芯片的速度,所以它们直接之间要有时序配合。

    
    首 页 | 公司简介 | 企业荣誉 | 产品中心 | 新闻中心 | 联系我们 | 集团首页

    版权所有 深圳市欧陆娱乐光电有限公司     粤ICP备08129267号-1


  • XML地图