gpt4 book ai didi

c - 带 C 代码的 4 位 LCD

转载 作者:行者123 更新时间:2023-12-02 05:30:54 25 4
gpt4 key购买 nike

我正在使用 Winstar Display LCD ( WH2004A-YYK-CP ) 和 STM32 处理器,代码是用 C 语言编写的。我需要以 4 位模式运行它。我运行它并写下我想要的。

如您所知,4 位模式将 8 位数据发送为 2 乘以 4 位。问题是,当我在 2 个半字节之间重置时,它会打印出奇怪的字符,而且无论我重置多少,它都无法正常工作。我想到的唯一解决方案是将其重置几次。

为了弄清楚发生了什么,我在 2 个半字节(每个 4 位)之间添加了 2 秒的延迟,并打印了一个长句子。因此,每当我重置它时,处理器都会等待发送第二个半字节。

我正在重置它,它打印出一些奇怪的东西,第二次重置后它什么都不打印,第三次重置后它再次正确打印。第 4 次重置它再次打印出一些奇怪的东西,第 5 次什么都不打印,第 6 次再次正确打印......然后继续这样。因此,我现在确定问题出在这些划分的字节上。

类似的代码在 8 位模式下工作得很好。

我想问的是:我如何确定“当我重置 STM32 处理器时,LCD 不会等待某些数据的第二个半字节,这些数据的第一个半字节是在前一个 session 中发送的。”通过使用 C 代码?

更新:

我也在这里发送我的代码:http://pastebin.com/kHQQEqjx

LCD 命令也在这里:http://imgur.com/mfDlj

最佳答案

下面的流程图详细说明了在 4 位模式下初始化 LCD Controller 所需的所有步骤。

enter image description here

关于c - 带 C 代码的 4 位 LCD,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11951653/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com