讲座视频 - 液晶显示屏

+荐课 评论 收藏 分享
  • 课程目录
  • 相关资源
  • 课程笔记

大家好,我是 John Valvano。 在本视频中,我们将讨论 液晶显示屏。 我们将介绍一些基本概念, 关于如何实现硬件与软件的接口。 我们将介绍一种接口协议, 称为同步串行通信。 我们要将液晶显示屏连接 到 LaunchPad,并编写 一组软件函数,称为驱动程序, 使得我们可以通过调用它来使用该模块。 然后我们要将所有这些结合起来, 并将液晶显示屏放置在我们的机器人上, 以便我们可以观察所发生的情况。 好,让我们开始吧。 在我们进行连接时会遇到的第一个问题是, 软硬件速度通常不匹配。 软件执行得相当快, 在我们的处理器中,运行每条指令大约需要 42 纳秒。 相反,硬件的运行速度通常 比软件慢很多。 我们的液晶显示屏需要大约 6 微秒的时间 进行输出,而其他许多 I/O设备甚至比这更慢。 因此,当我们遇到这种速度不匹配的情况时, 我们需要一种将两者同步的方法。 “Blind” 方式相当简单, 只需在软件中进行输出并等待一定的时间。 我们将在本模块中将使用另一种方法, 称为“Busy-Wait”。 我们有一个输出设备,该设备会有一个状态标志。 如果该状态标志显示 Busy , 这意味着它正在执行之前的输出, 那么我们将等待(Wait)。 当输出设备就绪时, 再为它提供要输出的新数据。 这就称为 “Busy-Wait”。 我们可以对输入设备执行同样的操作。 对于一个输入设备,如果显示 Busy, 那么表示暂时无法接收数据,并将进行等待,当设备就绪时 再开始接收数据。 在实验 14 中,我们将使用中断, 另外我们不会使用任何 直接存储器访问(DMA)。 同步串行通信是一种 将设备连接到 MSP432 的方法。 它是一个非常重要的模块,以至于我们可以看到, 在 MSP432 芯片上共有8 组同样的模块。 (同步串行通信)共有四根线,分别为使能线、时钟线、 输入线和输出线, 我们稍后将看到它们是如何工作的。 我们会将 MSP432定义为主设备, 这意味着它将驱动时钟线和使能线, 并且负责发起传输。 相反,我们的液晶显示屏将作为从设备, 它将读取时钟线和使能线, 并仅在被询问时进行响应。 同步串行通信的基本思想, 或具体到 SPI 协议, 是有两个移位寄存器, 一个位于处理器中,一个位于从设备中。 具体通信过程是:当通信开始时, 数据会从一个移位寄存器流出,并流入另一个移位寄存器。 但我们可以看到,在数据 从主设备传输到从设备的同时,数据也可以由从设备 传输到主设备。 因此,数据基本上是在这两个设备之间 进行交换。 它的具体工作方式 如我们所见,在时钟线上将有一个边沿, 在此边沿到来时主设备将会进行数据的更改。 那么,在图中所示的特定配置下, 上升沿到来时,数据一位一位地发生改变。 每次改变一位, 这就是“串行”的含义。 但另一个设备将在另一个边沿到来时 捕获或读取数据。 这就是串行同步通信速度很快的原因。 因此,我们将在一个边沿发送数据, 并在另一个边沿读取数据,这样数据就可以 可靠而快速地在一个设备和另一个设备之间传输。 对于液晶显示屏, 我们基本上不会使用这一部分接口(接收部分), 因为我们只需要进行输出。 那么,我们要做的是,这是我们的 Busy-wait 标志位(口误), 这是我们的 Busy 标志位, 标志位为1意味着寄存器是空的,也就是我们可以发送数据。 我们将通过向这个(发送)寄存器进行写入 来发送数据。 那么,这里是放大的画面, 正如我说过的,一个边沿用于写入数据, 现在图中使用的是另一种方式。 下降沿在这种方式中, (在这种方式中)被用来更改数据, 然后上升沿被用来读取数据。 因此主设备将驱动时钟线和使能线, 而这两个设备,即主设备和从设备 都将发送和读取数据。 再说一次,这种方式非常快,因为 它用于发送的边沿和用于接收的边沿不同。 这是一个采用负逻辑的使能引脚示例, 它在数据传输期间置0。 使能信号是由硬件自动控制的。 这里是我们的液晶显示屏, 它的宽度为 84 个像素,高度为 48 个像素。 它采用这种奇怪的寻址模式,其中 0,0 坐标 在屏幕顶部。 它仅需要连接5个引脚, 我们将在下一张幻灯片中看到这些引脚。 它使用 SPI 通信协议。 每秒将发送 1200 万位, 这也是我选择它的原因。 因此,一个 8 位的字符,例如一个 8 位像素, 仅需要 8/12 微秒就可完成发送。并且这块屏幕的成本相当低, 这就是我们在机器人套件中选择它的原因。 这就是我们在机器人套件中选择它的原因。 这里是硬件本身, 正如我之前介绍过的,该设备有 5 个引脚。 我们将从时钟线开始, 我们将从时钟线开始, 这就是时钟线。 时钟信号从主设备传输到从设备, 而数据 从主设备传出,这就是数据, 这是数据引脚。 我们有一个控制引脚, 这是锁存/使能引脚。 我们还有两个其他引脚, 一个用于指定数据或命令, 另一个用于生成复位信号, 使得我们可以对设备进行复位。 那么您可以看到液晶屏使用了 5 个引脚, 那么您可以看到液晶屏使用了 5 个引脚, 其中,这里的三个引脚是为我们的设备 配置的同步串行端口。 市面上可以找到很多 Nokia 显示屏, 如果您碰巧有一个 Nokia 显示屏, 而它的引脚编号与上述编号不完全一样, 没关系,找到匹配的引脚名称就可以使它正常工作。 本次实验的其他目标包括 在整数、无符号整数和 ASCII 字符序列之间进行转换。 基本来说,这种转换是相当简单的, 如果您希望输出一个介于1000 和 9999 之间的数字, 我们可以先输出一个空格。 如果我们将该数字除以 1000, 这样可以得到千分位。 在转换结果上加 30,会使它成为 ASCII 码。 然后我们再计算剩余的位, 现在,它将是一个介于0 和 999 之间的数字, 除以 100,可以得到百分位, 加上 30 使它成为 ASCII 码。 在我们这么做之后,我们会得到一个介于 0 和 99 之间的数字, 除以 10 将得到十分位,转换为 ASCII, 再将个位转换为 ASCII。 那么,该序列将恰好生成 1、2、3、4、5 五个输出字符,即一个空格后面跟四位数字。 您也可以将同样的操作用于 其他类型的数字,同样相当简单。 这就是我们将输出到液晶显示器的字符。 好的,我们要使用液晶屏的方法是 将这块液晶显示器放置在一个机器人上。 这样,我们就可以在这个机器人沿着赛道奔跑时 看到它在想什么。 有一组中间层函数, 您可以使用它们来让光标的 xy 坐标变得平滑。 您可以使用它们来让光标的 xy 坐标变得平滑。 您可以输出字符串, 也可以输出数字。 您需要在这里编写这两个函数, 就是下面这两个函数。 这样一来,如果您执行这个函数一次, 液晶屏上将会显示“D= mm”。 然后,当您执行这一行代码时, 您所做的是在空格位置填写一个新的数字。 因此,如果您进行一个测试, 来调试这两行函数的执行过程, 您将看到,大约需要 42 us 来显示这些内容。 这 42 us的时间可以被称为 具有极小侵入性,因为该 LCD 的存在 不会显著影响您的机器人的性能,对吧? 你可以实时执行该操作, 例如每秒 30 次。 那么,如果您执行这段代码的间隔 为每 33 ms 执行一次, 也就是说,如果您每隔 33 ms执行这段需要 42 us 的代码, 也就是说,如果您每隔 33 ms执行这段需要 42 us 的代码, 这就是我说的极小侵入性的含义, 它仅占用了处理能力的 1/1000。 现在,您有了一个图形显示界面 在需要的时候可以使用它。 更重要的在于,我们认为能够观察到您的机器人在想什么, 对于解决调试过程中的挑战是具有非常大的意义的。 对于解决调试过程中的挑战是具有非常大的意义的。 总结一下,本章包含了一些基本内容, 总结一下,本章包含了一些基本内容, 您将看到在接近检测应用中 如何使用 Busy-Wait 同步通信。 我们将在实验中编写对应代码。 这是一个同步串行通信示例。 这是一个同步串行通信示例。 它的原理很简单, 但请相信我,同步通信是一种可以 简单快捷地完成任务的方法。 如果您喜欢了解图形化编程,可以通过这种方式来实现, 不过我们希望您做的是,实现数字输出, 并尽量减小代码的侵入性。 换句话说,尽量缩短执行代码所花费的时间。 祝您本实验玩得开心, 本实验可以说是一个比较有趣的实验, 有助于您提高设计机器人的技能。
课程介绍 共计2课时,13分13秒

TI-RSLK 模块 11 - 液晶显示屏

TI LCD 机器人 显示 液晶 RSLK

此模块将介绍如何在 LCD 屏幕上显示字符并提供实时调试。机器人的 LCD 可用于方便观察机器人的想法。

  • 技术支持

推荐帖子

硬件寄存器是如何工作的
大多数时候,寄存器都保持在稳定的状态,产生的输出等于它的当前状态。信号沿着寄存器前面的组合逻辑传播,这时,产生了一个新的寄存器输入。但只要时钟是地电位的,寄存器的输出就会保持不变。当时钟变成高电位时,输入信号就加载到寄存器中,成为下一个状态,直到下一个时钟的上升沿,这个状态就是寄存器一直的输出。     寄存器有两个读端口和一个写端口。这样一个多端口随机访问存储允许同...
Aguilera 【微控制器 MCU】
如何使用DFT App进行硬件加速仿真设计
     可测试性设计 (DFT) 在市场上所有的电子设计自动化(EDA) 工具中是最不被重视的,纵然在设计阶段提高芯片的可测试性将会大幅缩减高昂的测试成本,也是如此。最近的分析数据表明,在制造完成后测试芯片是否存在制造缺陷的成本已增至占制造成本的 40%,这已达到警戒水平。   DFT 可以降低通过问题器件的风险,如果最终在实际应用中才发现器件有缺陷,所产生的成本...
fish001 【模拟与混合信号】
电能质量
背景 电能质量问题的提出由来已久,在电力系统发展的早期电力负荷的组成比较简单,主要由同步电动机、异步电动机和各种照明设备等线性负荷组成,因此衡量电能质量的指标也比较简单,主要有频率偏移和电压偏移两种20世纪80年代以来,随着电力电子技术的发展,非线性电力电子器件和装置在现代工业中得到了广泛应用。同时,为了解决电力系统自身发展存在的问题,直流输电和FACTS技术不断投入实际工程应用!调速电机以及无...
qwqwqw2088 【模拟与混合信号】
电路中的各种“地”—— 各种“GND”
GND,指的是电线接地端的简写。代表地线或0线。 电路图上和电路板上的GND(Ground)代表地线或0线.GND就是公共端的意思,也可以说是地,但这个地并不是真正意义上的地。是出于应用而假设的一个地,对于电源来说,它就是一个电源的负极。它与大地是不同的。有时候需要将它与大地连接,有时候也不需要,视具体情况而定。 设备的信号接地,可能是以设备中的一点或一块金属来作为信号的接地参考点,它为设备中...
qwqwqw2088 【模拟与混合信号】
分享到X
微博
QQ
QQ空间
微信

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新文章 手机版

站点相关: EEWORLD首页 EE大学堂 论坛 下载中心 Datasheet 活动专区 博客

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2020 EEWORLD.com.cn, Inc. All rights reserved