成为订阅者(免费)

加入29,000名其他订阅者以获得用户销售折扣和 其他免费资源。
:
:
大学教师'担心 - 您的邮件地址完全是 安全的。我保证使用它 只要 到 send you MicroZine.

pic系列液晶项目

此项目向您展示如何创建串行 可以从任何串行RS232接口驱动的LCD模块。

您可能会问自己为什么这项项目在计算机时使用RS232 不再是标准的串口生产的? 

有三个原因:

  1. 大多数微控制器都带有UART内置硬件模块。
  2. RS232可以使用2个信号线和一个接地连接设置。
  3. RS232可在长距离操作。

最后一点意味着信号传输可以自由差错 和强大(虽然您可以实现更高的数据速率和更低的错误率 使用完整的RS232规格)。然而,移动到一个可能更好 多滴接口,如RS485。

由于硬件模块内置,因此它变得超级易于使用 内部UART可以使用中断允许快速透明 operation.

现在唯一的问题就是在PC中的界面中做些什么 您要么购买RS232到USB适配器电缆,请呈现RS232接口 作为PC的通常方式作为COM端口,但允许它插入USB 端口或您可以使用数字到串行USB转换器。最后一个人离开了 通过RS232完全发信号,而是提供数字Rx / TX信号 插入直接进入微控制器I.E.您错过了MAX232芯片。 最终工作都很好,在PC侧看起来都一样。

这里有一些更多信息 串行RS232到USB适配器.

项目设计

这里的设计使用纯ASCII命令集,因此您可以轻松控制它 从终端程序(如Tera术语)(从Web =免费下载)。  

没有'odd'命令序列,例如0xef以定义命令 - 您 可以在终端界面中键入所有命令,使其非常易于使用即。 这是一个基于文本的纯文本的控制系统。

串行LCD块图

如果您想将其作为PIC项目的调试终端,那么它就 删除级别翻译并使用0-5V输入进行了意义 否则你最终会有两个级别的翻译,因为没有真正的原因!

注意:使用它,您需要 反转RS232输出数据,以便如果驱动,则需要逆变器芯片 内置的USART或您可以使用软件USART驱动它(发射机 零件零件)由于您将完全控制输出信号。

串行LCD规范

波特率 9600
水晶 20MHz -You可以使用较低的值xtal但是 必须重新编译文件并将时钟值设置为Mikroc芯片 settings.


串行液晶项目详细信息

串行液晶项目
编译器 mikroelectronika mikroc编译器 自由!
目标 16F877A(重新标准到其他有足够引脚和构建的图片 in USART).
软件级别 简单。
软件说明 使用UNGET_CHAR反向GETCHAR操作。
硬件级别 简单。
硬件笔记 没有特别的笔记。
项目版本 1.01
项目文件 输入您的详细信息以获得 下载链接
并获得微控制器通讯:


(您的电子邮件是安全的 永远不会出售或租用)。
You will get 所有C源代码和 hex file.

注意:检查您的电子邮件是否有关项目代码下载链接。


如果要检查代码操作,可以重新编译串行LCD文件 (使用内置模拟器)或更改源代码。注意十六进制文件是 包含在下载中。

串行LCD命令集

所有命令都以哈希字符为前缀'#'。在所有情况下除外 #x和#y单个字符后面'#'导致命令执行。  对于#x和#y小数位以下(最多2位)指定a 显示屏上的位置。

注意:对于#x和#y左上位置是 at 0,0.

串行LCD命令集列表(使用大写或小写):
串行LCD命令
#c或#c C李尔 screen
#h或#h 光标 H大家
#l或#l. 光标 LEFT.
#r或#r. 光标 RIght.
#u或#u 光标 Underline. mode
#b或#b. 光标 B锁 mode
#i或#i. 光标 Invisible.
#f或#f. 显示O.F
#o或#o. 展示 On
#xnn或#xnn. 光标 X position (left nn=0)
#ynn或#ynn. 光标 Y 位置 (top nn=0)
#> or #. 滚动显示右(散列点更容易输入!)
#< or #, 滚动显示左(哈希逗号更容易 type!)
## 显示A.'#' character.



要清除显示,您将键入:

#C

将光标设置为阻止模式类型:


x和y命令

#x或#y命令必须至少有两位数字 除非 以下命令不是数字。   所有这意味着您可以通过键入字母来完成X或Y命令 - 如果您键入Digit The Parser Won'知道它是否是显示的数字或a 数字指定位置。

以下是一个光标定位示例命令序列:

#H 首页 将光标位置设置为(0,0) - 左上角。
#X3JFM < Set X and print 将x位置设置为3并打印JFM
(注意输入j的j仅移动光标)。

您还可以使用较长的命令:

#h#x00jfm

它完全相同,但是光标立即被移动 '00'由于命令解析器知道它是x光标位置的结尾 命令只接受2位数。

这些命令有效:

命令 结果
#x10234 光标X位置设置为10和234 is displayed.
#Y1ABC 光标y位置设置为1,abc是 displayed.
#y01abc. 与上述相同。
#X3HI 光标X位置设置为3,嗨是 displayed..
#X03HI 与上述相同。
#Y0BYE 光标y位置设置为0,再见 displayed.

文本输入

如果您输入除此之外的任何其他ASCII文本'#'字符然后是 显示在LCD上,光标向右提前。

注意:显示一个'#'字符输入两次'##'.

串行LCD硬件

串口LCD显示屏(RS232至LCD)电路图
(点击打开PDF)

串行LCD电路


该电路仅由PIC Micro组成, ICSP. 接口,RS232级转换器和HD44780 LCD。

串行LCD显示软件

该软件包含在两个文件中(注意有更多创建的 the compiler):

16F877A-Serial-LCD.C
比特

Bit.h包含位操作宏。

项目文件

16f877a-serial-lcd.mcppi

输出文件:

Serial-lcd.hex.

有关编译这些文件的教程 点击 here.

16F877A-Serial-LCD.C

最初使用show_intro显示滚动消息。当一个 检测到串行输入主程序开始。所有钥匙现在都是 文本输入或命令。

无限循环不断检查键输入。如果密钥是哈希符号 然后使用以下命令:

get_prefix_and_execute_command(&x,&y);

否则,键值将在当前光标的LCD上显示 position.

注意:使用x和y地址 (&x,&y)将变量地址传递给被称为函数 main()中的x和y值更新(使用所谓的指针 functions).

get_prefix_and_execute_command呼叫 Execute_command. 哪个钥匙 从UART(或等待一个)。如果它匹配有效命令那么 执行适当的代码来控制LCD。如果不是那么 UART1_UNGET_CHAR. 用于推回钥匙。

Execute_command中最有趣的命令是#x和#y使用 get_and_set_x. and  get_and_set_y.,再次使用指针(这次 address &除了PX,不用引用是一个返回它的指针 调用时的地址)。

这些功能都使用 get_2dig_num. which gets more 人物期待数字 - 如果它没有得到它们,它会推回钥匙 again using UART1_UNGET_CHAR..

UART1_GET_CHAR,UART1_UNGET_CHAR.

这些互补函数用于解析器(此程序是非常的 小解析器)您需要查看输入的下一个字符以查看 如果你想继续。如果你不'我不是你的角色 期待然后你使用 UART1_UNGET_CHAR. 到 put the 当前字符进入内存。

功能 UART1_GET_CHAR. always checks this 内存首先从其正常输入获得一个字符所以系统 效果良好 - 但你一次只能做一个Unget-Char。更多你 需要一系列UNGET Storage等。

常规让您避免复杂的外观算法或索引 - 在不知道索引的情况下,您可以专注于当前角色 是。对于一个更大的解析器,你用完整的词语。

新的! Comments

让你说到你刚刚阅读的东西!留下下面的框中的评论。


跳跃 串行液晶 to
最佳微控制器项目主页。


隐私政策 | 接触 | 关于我

网站地图 | 使用条款


ezoic.报告此广告

访问我们的Facebook页面:

   点击这里



最近的文章

  1. 如何使用ADS1115

    使用ADS1115精度16位ADC进行教程进行低功耗。

    阅读更多

  2. arduino.模拟输出...易模拟输出生成

    arduino.模拟输出:如何创建最精确的PWM模拟输出以及如何创建模拟PWM正弦波。

    阅读更多

  3. 数号和等效的快速宏。加快代码!

    了解DigitalWrite()的工作原理......现在使用17倍宏宏!

    阅读更多

  4. TCS230颜色传感芯片:如何运作以及如何使用它。

    如何使用TCS230(/ TCS3200)彩色检测器芯片并轻松将其添加到您的任何项目中。

    阅读更多

  5. 如何使用ADXL345进行运动感测等。

    使用ADXL345 Acellerometer,您可以检测到16G!您还可以了解如何使用它来点击检测等。

    阅读更多

  6. HMC5883L 3轴数字MAGENTOMTER如何运作

    HMC5883L - 如何制作数字罗盘,了解HMC5883L和QMC5883L之间的差异以及它们是否兼容。

    阅读更多



读者 Comments

"I wanted to thank
你这么好
对于所有信息
你已经提供了
你的网站's

高超极好的."

- 逃亡Potthath.

"This site really is
最好的和我最喜欢的。
我发现这里有很多很有用
项目和提示。"

- 米兰

Bursach.<at>gmail.com<

"Awesome site,
非常,非常容易和好
导航!"


-
镭_tr.<at>
wolf359.cjb.net.


学习微控制器

"Interested in
微控制器?"

注册
免费7天指南:

自由 GUIDE : CLICK HERE


"I am a newbie to PIC
我想说
 how great your
网站一直在为我。"


- 戴夫

de_scott.<at>bellsouth.net

"Your site is a great
和完美的工作。
恭喜。"


- SURESH.

IntegratedInfosys.<at>
Yahoo.com.

"I couldn't find the correct
要定义的词语
你的网页。

非常有用,揭开,
诚实明确。

非常感谢
你的时间和作品。
问候。"


- Anon.

回到顶部