弄了几天的Proteus仿真,终于觉得自己想做的东西,已经全部用Proteus仿真过了,应该可以动手做了。于是先用Proteus画好原理图,再用ARES画好PCB板图——虽然我只是用洞洞板焊接,但是有个PCB板图做参照,连线会容易很多。花了两个小时,去中关村买了必要的原件,开始动手。

单片机用的是STC89C552RC,原因除了价廉物美之外,最大的原因是,STC的单片机可以直接使用串口往里面下程序,这样我可以直接焊接好板子,然后连接好串口,一边写一边调试,不用把单片机拿来拿去了。为了焊的好看些,把线基本都布在了反面,前前后后,修修改改,共焊了3天才弄好,搞得眼睛一闭上都是洞洞板的圈圈。

不过通过这次的实际制作,还真发现了不少Proteus仿真中不会想到的问题,现记录如下,希望以后再碰到时,可以作为参考。

碰到的第一个问题,就是程序怎么也下载不到单片机中去。在Proteus仿真的时候,并不需要往单片机中写程序,编译好后,程序就已经在单片机中了,但是实际制作时,就得编译一次程序,下载一次。结果我在下载时,发现提示“不能连接到串口”,让我实在是头疼不已。试着用“串口助手”往单片机发数据时,发现数据指示类会闪烁,说明线路是通了。百思不得其解之下,同事提醒我说,是不是你这两个数据传送指示灯有问题?虽然我觉得成分的不可能,可是试着把两个LED灯去掉之后,还真可以了……

这是先前的电路图(省略MAX232芯片)

结果串口在给单片机发数据的时候,灯是会闪烁的,让我坚定的以为,串口的通路是没问题的。后来把电路改成这样,串口不能通信,不能下载程序的问题就好了

终于把串口弄好了,程序下载到了单片机上,结果效果和proteus上模拟的完全不一样。Proteus上的话,1602显示器直接就显示数据了,结果到了现实,什么都没有……死命的调节对比度电阻,也还是什么都没有,真的感觉无从下手了。后来去群里问,群里的老大给了一个示例程序,用上去也还是不行,这让我真的是感觉要崩溃了。不过想想焊了这么多天,放弃实在是不甘心,于是把所有和液晶显示不相关的代码全注释掉了,突然发现莫名其妙的,液晶出现了色块——当时感觉是太开心了,一天了,终于液晶上有显示了!不过此时仍然不能设置显示字符,不过相比没有任何显示已经好太多了。

同样的代码,为什么这次可以了呢?仔细的分析了代码,发现这次的代码,唯一的不同,就是我为了少写几个字,延时函数用的是群里老大给的。这是唯一的不同之处。比对一下两个延时1毫秒的函数。

我自己的:

?

1

2

3

4

5

6void delay(unsigned char ms)

{

unsigned char i,j;

for(i=0; i

for(j=0; j<120; j++);

}

群里老大给的:

?

1

2

3

4

5

6void delay(int ms)

{

int i,j;

for(i=0; i

for(j=0; j<120; j++);

}

没错,两个函数唯一的区别,就是变量的类型,我写的时候,看变量都不会超过255,为了省点空间,定义的都是unsigned char,而一般的延时函数,用的是int类型,就是这两个变量类型的不同,导致了延时的不同,同样是想延时1毫秒,我的函数实际上只能延时0.4到0.5毫秒左右,就是这个的区别,让我在操作液晶时,各个时序的延时不够,给液晶的命令不能到达。后来修改后,再修改了一下程序其他地方,终于让液晶正确的显示了。

再说一个比较郁闷的事情,在Proteus里面,1602是这样显示的

买来实物后,我也理所当然的认为,有焊点的是下方(事实上我确实认为这样比较符合心理,哈哈)。结果程序写后好,一显示出来,全倒过来了…………

不管怎么说,今天总算让板子上的元件都工作正常了。明天开始改程序,实现具体功能。

proteus和matlab的区别,Proteus仿真与实际的差别相关推荐

  1. (1)Proteus 8.9上的STM32仿真系列(HAL)---流水灯

    ** (1)Proteus 8.9上的STM32仿真系列-流水灯 此系列面向新手,不使用自定义的库文件,只过一遍STM32的大部分功能. ** 环境:Proteus8.9+STM32CubeIDE 1 ...

  2. matlab光学原理仿真应用衍射,基于Matlab的光学衍射仿真【参考】.doc

    基于Matlab的光学衍射实验仿真 摘 要 光学试验中衍射实验是非常重要的实验. 光的衍射是指光在传播过程中遇到障碍物时能够绕过障碍物的边缘前进的现象, 光的衍射现象为光的波动说提供了有力的证据. 衍 ...

  3. 码分复用的matlab仿真,基于matlab的多路时分复用仿真.doc

    基于matlab的多路时分复用仿真 通信系统原理综设实验报告 多路时分复用matlab仿真系统 教师评语: 引言 在实际的通信系统中,为了扩大通信链路的容量,提高通信系统的利用率,需要在一条链路上传输 ...

  4. matlab zp2,matlab用于控制系统数字仿真

    matlab用于控制系统数字仿真 传递函数 n >>num=[6 12 6 10];den=[1 2 3 1 1]; n >>printsys(num,den) n 执行结果为 ...

  5. matlab基本杆组-运动学仿真,MATLAB基本杆组-运动学仿真.pdf

    MATLAB基本杆组-运动学仿真 第5章 运动学仿真 --Simulink的使用 从基本杆组理论为基础建立模型 §5-1 曲柄的MATLAB运动学仿真模块 1.曲柄的运动学矩阵表达式 在复数坐标系中, ...

  6. matlab实现瑞利信道需要的步骤,基于Matlab的瑞利信道仿真.docx

    移动通信期中论文 论文题目:基于Matlab的瑞利信道仿真Title:Rayleigh fading simulation based on Matlab 学院:信息学院专业:通信工程姓名:888 x ...

  7. 基于matlab编译码器的设计,基于MATLAB循环码编译码仿真

    基于MATLAB循环码编译码仿真(论文11000字) 摘要:在具体了解循环码的编码理论的基础上,使用 M ATLA B 软件设计了循环码编译码器. 通过 M ATLAB 软件实现循环码的编译码 ,通过 ...

  8. 用matlab简单电路模型,基于MATLAB的电路模型仿真应用

    基于MATLAB的电路模型仿真应用实验指导书 一.实验目的 1.掌握采用M文件及SIMULINK对电路进行仿真的方法. 2.熟悉POWERSYSTEM BLOCKSET 模块集的调用.设置方法. 3. ...

  9. 基于matlab的gps信号仿真123,MATLABGPS信号仿真完整源代码.doc

    配套毕业设计论文见百度文库 请搜索 <基于MATLAB的GPS信号仿真123> 附录 仿真程序代码 数据码的产生 function datacode=data(x) y=rand(1,x) ...

最新文章

  1. mac云显卡服务器_重磅!NVIDIA GeForce NOW登陆Mac:云显卡玩吃鸡逆天
  2. spring解决ajax跨域问题
  3. XCode 6 出现 no identity found: Command /usr/bin/codesign failed with exit code 1 解决方法汇总...
  4. kafka依赖zookeeper原因解析及应用场景
  5. python spark视频_Spark2.x+Python大数据机器学习视频课程
  6. Viewpager无限循环(首页与尾页平滑过渡)
  7. Excel还是那些事
  8. RabbitMQ——simple MQ
  9. Https java信任_java访问非经过信任证书https的方法
  10. 【flume】flume读取web应用某个文件夹下日志到hdfs
  11. java -jar 怎么停止_图解Java日志体系
  12. 彻底理解Java的Future模式
  13. python第一行左对齐_关于Python的第一行语句
  14. 帆软之使用FineTube将其他来源数据同步至简道云表单(多图预警)
  15. 基于python flask的网上商城源码 mysql数据库
  16. Python数据分析U3-matplotlib可视化基础
  17. S32K144_新建KEIL工程
  18. kafka自动提交offset的设置理解
  19. 大器晚成总比一事无成要强
  20. 解决Navicat远程服务器2013-Lost connection to MYSQL server at 'waitting for initial communication packet'

热门文章

  1. [转]Redis2.8从入门到精通文档
  2. Socket函数说明
  3. Python脚本打开默认浏览器登录人人和打开QQ
  4. 2017年IDC行业市场现状及趋势
  5. 数字冰雹 可视化html,数字冰雹数据可视化系列产品(二):网络态势可视化
  6. NC6 的单据类型枚举 类
  7. macOS Monterey 12.3 beta3 With OpenCore 0.7.9 and Clover 5144 and winPE
  8. Linux文件系统的设计
  9. java输出的时候出现[Ljava.lang.String是什么意思+解决方法
  10. “两地分居”的大学师生