找回密码
 立即注册
搜索
查看: 4925|回复: 13

C51 + LCD1602 + Keil + Proteus 初学记

[复制链接]
发表于 2018-6-9 16:51:36 | 显示全部楼层 |阅读模式
C51 + LCD1602 + Keil + Proteus 初学记

笔者职业是PC x86/x64 coder,一直对电子感兴趣,可对电子知识了解贫乏,想来单片机也是写代码,上手容易些。

C51     - 51单片机,最早由Intel研发,8位单片机
LCD1602 - 16x2行(32个字符)的字符型液晶
Keil    - 集成开发环境,对单片机的源码进行编辑,编译,和管理
Proteus - 仿真软件,用电脑模拟搭建电路,模拟运行状态及结果

笔者所用版本是keil3中文版,原因是它的安装包只有12MB大小,Proteus 7.8 sp2 + 汉化补丁,安装包只有89MB大小,还是母语看着舒服。
安装过程略。

推荐使用everything,一款1MB左右的查找软件。
安装好Proteus + Keil后,打开everything,输入lcd1602:

找到 LCD1602.DSN,注意选8051 with LCD1602 LCD controller目录里的,最好把这个目录拷贝到其他地方做备份,双击打开LCD1602.DSN,

注意左下角的开始停止等按钮,

按开始按钮就开始仿真了,可以看到LCD里输出的显示:

按停止按钮,双击图中AT89C51那个芯片,出现配置窗口:

注意笔者选定状态的Program File: Debug\Debug.ubf,这里就是给单片机里加载的程序,这里可以加载hex文件。这就是仿真的过程。
下面演示如何用Keil来编程,也就是写源码并生成hex文件,然后就可以用Proteus来仿真自己编译的程序了。
在Keil里新建一个工程,注意单片机要选AT89C51;
上上述8051 with LCD1602 LCD controller目录里有个LCD1602.C,去掉只读属性,拷贝到Keil的工程里。

然后做下图修改:

生成的时候要勾选生成Hex文件。

附上修改后LCD1602.C与原始LCD1602.C,用文件比较工具可以看到区别,推荐winmerge 2.14


PS:求赠送ZT-X,或者ZT-X的优惠券也行啊~~~~~~~~~~~~~~~~



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

评分

参与人数 2 +5 金钱 +7 +5 收起 理由
rivrz + 5 + 5 + 5 跟着做了下,一波三折,总算成功了!.
43545 + 2 赞一个!

查看全部评分

发表于 2018-6-9 17:02:35 | 显示全部楼层
感谢楼主分享教程!我去下一份软件,试着跟着走一趟
发表于 2018-6-9 19:04:21 | 显示全部楼层
本帖最后由 rivrz 于 2018-6-9 19:25 编辑




我这是不是弄得不太对?下载楼主的附件,按文中的步骤,最后生成了hex文件,加载到proteus后,点运行,为什么虚拟的LCD里不显示文字信息呢。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
发表于 2018-6-9 19:27:51 | 显示全部楼层
rivrz 发表于 2018-6-9 19:04
我这是不是不太对?下载楼主的附件,按文中的步骤,最后生成的hex文件加载后,点运行,为什么虚拟的LCD ...

这个版本win7以下,才可以运行,你不是用了win10,运行这些旧版本,很难用的。
发表于 2018-6-9 19:34:37 | 显示全部楼层
光速飞行 发表于 2018-6-9 19:27
这个版本win7以下,才可以运行,你不是用了win10,运行这些旧版本,很难用的。 ...

系统确实是win10,不过keil 和 proteus也都用的最新版, proteus用自己生成的Debug.ubf可以运行,但用keil生成的.hex文件虽然可以加载但运行屏幕没信息,应该说明是 keil生成的hex文件不行对吧?
发表于 2018-6-9 19:37:37 | 显示全部楼层
rivrz 发表于 2018-6-9 19:34
系统确实是win10,不过keil 和 proteus也都用的最新版, proteus用自己生成的Debug.ubf可以运行,但用kei ...

keil生成的hex,是很好的,主要是proteus。
发表于 2018-6-9 20:30:56 | 显示全部楼层
我也是用的keil3中文版,挺好用。
发表于 2018-6-9 20:52:17 | 显示全部楼层
远远的观望,高大上
发表于 2018-6-9 21:13:05 | 显示全部楼层
光速飞行 发表于 2018-6-9 19:37
keil生成的hex,是很好的,主要是proteus。



刚刚我把所有生成的文件都删除,重建了个工程,重新换了个目录,完整弄了一遍,竟然成功运行了,好奇怪,不知道开始哪不对

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
发表于 2018-6-9 21:30:36 | 显示全部楼层
rivrz 发表于 2018-6-9 21:13
刚刚我把所有生成的文件都删除,重建了个工程,重新换了个目录,完整弄了一遍,竟然成功运行了,好奇怪 ...

这有什么什奇怪,系统本身我们都不太了解。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|仪表爱好者 ( 京ICP备2021027848号 )

GMT+8, 2024-4-25 10:03 , Processed in 0.078125 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表