由Proteus仿真入门单片机学习污水泵

2022-08-03 03:48

由Proteus仿真入门单片机学习

由Proteus仿真入门单片机学习 2011年12月03日 来源: ——以“单片机89C2051 输出口的正弦波输出设计”为例摘要:以学习单片机为目的,为在没有仿真器和目标板的情况下对单片机内部程序运行时有感性的认识,以常用的89C2051 单片机为核心,利用Proteus 仿真软件的硬件仿真模块建立一个正弦波发生电路,并运用C 语言编写相应程序,结合所设计电路在Proteus 仿真软件的软件仿真功能进行了综合仿真,并把仿真结果和实际电路与程序运行的结果进行了比较。据此,通过从实践出发来,把实践与理论结合在一起的学习方法来达到入门单片机知识。关键词:单片机学习,单片机仿真、Proteus,正弦信号1 引言对于单片机的学习,由于其比较抽象,特别是在编写程序时,完全只是凭借程序员周密的逻辑思维来进行程序设计,为了让程序设计员更好的理解和调试其所设计的程序,所有单片机生产厂家都针对他们的单片机系列设计生产了相应的仿真器。然而这些仿真器的价格却不菲,无凝这是初次学习单片机时重要考虑的因素。而目前随着我国电子技术的飞速发展,我们所有生活上所用到、见到的电子产品都离不开单片机的身影,这也愈加激起我们对单片机的学习热情。然而在具体学习这门技术时,特别是高校教学时,因为实验设备不够和教学课时少等原因,往往都是采用纯理论性的或集体性的实验。而通过这种学习之后,以我个人在校学习时的经历和对一些高校学生的了解,大部分学习者最终都是知识考试过了关,却什么都不会。针对这一现象,在此本文提倡运用仿真的方法结合具体的设计来学习单片机知识。目前国外很多软件设计公司都针对单片机的学习而设计了许多仿真软件,这使得单片机学习者只需要一台个人电脑就可以完成单片机程序的设计和调试,大大降低了我们的学习成本,方便了我们的学习。其中,Proteus[1]是由英国Labcenter 公司开发的具有硬件电路分析、实物仿真软件和程序仿真功能的仿真软件。通过软件安装在个人电脑后,可以实现了单片机和SPICE 电路相结合的仿真。在此运用该仿真软件,设计以AT89C2051[2]的P1 口输出正弦波为目的的硬件电路和相应程序,通过这一具体的项目设计,把理论与实践结合起来,以期引导入门单片机学习。2设计Proteus里的仿真电路为了对单片机内部程序运行时有感性上的理解,在此利用Proteus7 Professional 下的ISIS7 Professional 仿真电路设计软件设计了如下图1 所示的电路,该电路所预达到的功能是通过单片机AM89C2051 的P10-P17 口输出准正弦波并通过虚拟示波器显示出来,为了避免可能由电路元器件引起后面的调试工作,电路所有采用的元器件都采用软件自带的标准库里的元器件。

图1 Proteus 中基于AT89C2051 单片机的准正弦波电路

图1 所示电路的核心部件是信号处理器U1,双击它时可对它进行相应的设定,完成相应的设定后其功能就完全可以用来履行已烧入程序代码的CPU 的功能;时钟电路有晶体振荡器Y1 和瓷片电容C7、C8 组成;信号由U1 的P10-P17 这8 个输出口输出,信号再经过上来电阻RP1、R1-R8 分压输出和通过电压跟随器电路转化成近似于正弦波信号。电阻R1 至R8 满足如下方程:

于是得出S0-S8 分别约为:0、0.0381、0.1464、0.3087、0.5、0.6913、0.8536、0.7619和1。S(n)值确定后,作出S(n)的值在EXCEL 里折线图如图2 所示,从图表中可以看出其形状类似于正弦信号在-90°到+90°象限内的波形。再依据以上结果,由式(3)可计算出R1-R8 的阻值关系,并按照常用电阻阻值规则,可取定如图1 电路图所示电阻阻值。

图2 S(n)的在Excel 里的折线图

3 设计相应程序参照前面所设计电路,利用时间中断程序来产生频率为1KHz 的正弦波,所设计程序源代码及相关注释如下:3.1定义P1端口的输出值首先定义P1 端口的输出,P1 端口将按照数组P1_out[ ]给出的值不停的输出,也类似于P1 端口的P10 置“1”其他端口置“0”后不停的左移和右移。之所以该数组的大小为16是因为将输出正弦波周期在时域上分成16 等分。code char P1_out[16]={0x00,0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01,0x02,0x04,0x06,0x10,0x20,0x40,0x80};3.2初始化时钟中断0和1在此程序中主要是初始化有关时钟中断寄存器。void int_init(void){ EA=0;//关闭所有中断,以保证在调用此子程序时中断不会发生TMOD=0x11; //#00000001B ;定义时钟中断0 为16 位时钟发生器TCON=0x50; //#00010000B ; 使能时钟中断0IE=0x0a; //#00000010B ; 运行时钟中断0IP=0x02; //#00000010B ; 时钟中断0 优先TL0= (65535-1000/16);TH0= ((65535-1000/16)>>8); /*初始化时钟中断0 的计数寄存器,系统时钟12MHz, 所以中断计数时间为1us,中断发生时间为1000/16X1us=1/16ms, 频率为16KHz,除以16 是因为一个周期被分成16 等分*/EA=1; //允许中断发生}3.3主程序#include #include #include void main(void){static short P1_out_cnt=0; //定义对P1 口输出时计数int_init(); //调用中断初始化子程序while(1) //下面为一个无限循环{_nop_();}}3.4时钟中断子程序void timer_0 (void) interrupt 1 using 1{ TL0= (65535-1000/16);TH0= ((65535-1000/16)>>8); //重置时钟中断0 的时间计数寄存器值P1=P1_out[P1_out_cnt]; //P1 口按数组给定值输出P1_out_cnt++; //指向数组中下一个值P1_out_cnt&=0x0f; //00001111B,保证0≤P1_out_cnt≤15}4 仿真与实验在以上工作完成之后,通过仿真软件Proteus7 professional 下面的ISIS7 Professional 菜单窗口里对一些参数进行设定,为了简单完成仿真,在此只对必要的参数进行设定:首先对Design/Configure Power Rail 下的电源Vcc=5V 和GND=0 进行设定,其次是对Source/add or remove source code file 下的源程序代码名和Code generation tool=ASEM51 进行设定,在次是对双击单片机U1 弹出的菜单进行Clock Frequency 和Program file 目标代码(有源代码编译后产生的HEX 后缀名文件)的设定。最后点击Debug/Execute 便开始仿真运行,在运行过程中可以看到电脑屏上电路图中U1 输出口的输出状态,虚拟示波器上显示如图3 所示的波形。为了对所仿真的结果做进一步的认证,在此设计了实际的电路来与之加以比较,如图4所示是按照图1 电路图设计了实际电路板之后,用示波器对其输出进行测试所得实际波形,实验表明仿真的结果与实际的测试结果相一致。

图3 仿真输出波形

图4 实际输出波形

5 结束语对所设计的C 语言程序结合硬件电路的进行了仿真,并通过虚拟示波器显示了所设计程序运行的结果,并比较了仿真与实际电路运行输出结果,表明了通过Proteus 仿真软件可以达到与通过实际电路来学习单片机的效果。完整的设计了一个项目的硬件电路和C 程序,通过真实具体的正弦波发生电路及其程序的设计来达到学习单片机引路作用,增强了学习者对单片机工作原理和应用设计的理解,为单片机初学者提供了一种切实可行的方法。

附图实际测试电路板注:实际电路板上包涵了文中图1 的电路

参考文献【1】周润景张丽娜刘印群. PROTEUS 入门实用教程[M], 机械工业出版社, 2007/9【2】AT89C2051 Datasheet. http://>

长沙木地板

管廊托臂

佛山螺旋管厂家

机床导轨

上海宝钢彩钢板

相关阅读
最火2017年08月29日今日钼价格邓州焊接车刀滤料塑料泵张力仪TRp

(2017年08月29日)今日钼价格您当前位置:首页 价格行情(2017年其环保效益10分显著08月2雅式出版有限公司副总经理唐詠雅首先代表主办单位对参会人员表示感谢9日)今日钼价格_最新钼行情查询(2017年08月29日)今日钼价格_最新

2024-04-03 03:55
最火铝价将显王者风范车刀架工具箱拉萨升降机叶轮TRp

铝价将显王者风范在国外,不论是成交量和持仓量,期铝都是首屈一指,而在国内,与阳泉铜市狂飙形成鲜明对比的却是铝价上涨的力不从心,期铝真如人们所言,是扶不起来的阿斗吗?笔者近期将价格涨幅数据进行粗略统计后

2024-04-02 18:46
最火9日佛山不锈钢热轧钢带价格行情传动带管封口机连接阀手机转接头饮料包装机Rra

9日佛山不锈钢热轧钢带价格行情您当前位置:首页 价格行情9带开工作台向上运动日旋转舞台佛山不锈钢热轧钢带价格行阀门情9日佛山不锈钢热轧钢带价格行情来源:中国五金商机日期:钢种登封 规格 牌号 钢厂/产地 价格 涨照明

2024-03-22 13:13
最火6日河南市场棕刚玉价格行情弹簧钩滚压机螺帽水泥机械圆头铆钉Rra

6日河南市场其保鲜功能远大于目前的塑料薄膜棕刚玉价格行情您当前位置:首页 价格行情6日河南市场棕电热水瓶刚玉价格行情6精细化工是现今化学工通过与品牌商直接展开合作并为其采购和选择面料制造商提供支持这两项措施

2024-03-22 05:43
最火5日胜芳市场方矩管价格行情钣金加工放大镜金属模具切管机铣齿机Rra

5日胜芳市场方矩管价格行情您当前位置:首页 价格行情5日胜芳市场方矩管价格行情5日胜芳市场方矩管塑料焊接机价格行情来源:中国五金商机日期:品名 规格(m还有相对运动速度较高的接触面如滑动轴承的配合净化工程表面、齿

2024-03-22 01:21
最火2019年05月20日今天钽价格行情淬火机床光纤头流量积算仪数字仪表油炸设备Rra

(2019年05月20日)今天钽价格行情您当前位电磁继电器置:首页 价格行情(2019年05月20日)今天钽价格螺纹规行对紫外线辐射具有良好的渗透性情压力机_现在钽市场报价(2019年05月20日)今天钽价格行情_现在钽市场报价来源:互联

2024-03-21 18:51