欢迎来到得力文库 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
得力文库 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    proteus单片机.ppt

    • 资源ID:26603611       资源大小:1.50MB        全文页数:322页
    • 资源格式: PPT        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    proteus单片机.ppt

    第 7 章基于PROTEUS ISIS的单片机电路仿真7.7 模拟交通灯控制实训模拟交通灯控制实训7.8 液晶显示控制实训液晶显示控制实训7.9 A/D转换接口技术实训转换接口技术实训7.10 D/A转换接口技术实训转换接口技术实训7.11 双机通信技术实训双机通信技术实训7.12 单片机课程设计单片机课程设计 第 7 章基于PROTEUS ISIS的单片机电路仿真7.1 单片机最小系统实训单片机最小系统实训本实训通过51单片机控制一个简单的LED灯,实现闪烁功能,并将程序编译下载到单片机中,从而使单片机工作起来。单片机最小系统实训图如图7.1.1所示,所用元件清单如表7.1.1所示。第 7 章基于PROTEUS ISIS的单片机电路仿真图7.1.1 单片机最小系统实训图第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真程序代码为:#include sbit P1_0=P10;void delay(unsigned char i);void main( ) while(1) P1_0=0; delay(255); P1_0=1;第 7 章基于PROTEUS ISIS的单片机电路仿真 delay(255); void delay(unsigned char i) unsigned char j,k; for(k=0;ki;k+) for(j=0;j255;j+);第 7 章基于PROTEUS ISIS的单片机电路仿真在KEIL软件中输入上述代码,编译后产生十六进制文件7-1-1.hex,双击AT89C51,将弹出如图7.1.2所示的对话框。在图7.1.2中添加十六进制文件7-1-1.hex,点击“OK”即可。最后进行仿真,可发现LED灯按要求实现了闪烁功能。第 7 章基于PROTEUS ISIS的单片机电路仿真图7.1.2 添加十六进制文件第 7 章基于PROTEUS ISIS的单片机电路仿真 7.2 模拟汽车转向灯控制实训模拟汽车转向灯控制实训安装在汽车不同位置的信号灯是汽车驾驶员之间及驾驶员向行人传递汽车行驶状况的工具,一般包括转向灯、刹车灯、倒车灯等。其中转向灯包括左转灯和右转灯,其状态表示的意义如表7.2.1所示。第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真本实训利用PROTEUS模拟汽车转向灯控制,其中开关S0、S1模拟驾驶员发出命令,若开关状态为0,则表示开关断开,反之闭合。其实训图如图7.2.1所示,所用元件清单如表7.2.2所示。第 7 章基于PROTEUS ISIS的单片机电路仿真图7.2.1 模拟汽车转向灯控制实训图第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真在上述电路图中,开关S0、S1模拟驾驶员命令,发光二极管D1、D2模拟左转灯和右转灯,两者之间的关系如表7.2.1所示。利用开关S0、S1的状态即可控制D1和D2的状态。程序代码为:第 7 章基于PROTEUS ISIS的单片机电路仿真#include sbit P1_0=P10;sbit P1_1=P11;sbit P3_0=P30;sbit P3_1=P31;void delay(unsigned char i);void main( )第 7 章基于PROTEUS ISIS的单片机电路仿真 bit left,right; while(1) P3_0=1; P3_1=1; left=P3_0; right=P3_1; switch(P3)第 7 章基于PROTEUS ISIS的单片机电路仿真 case 0 xfc: P1_0=1,P1_1=1;break; case 0 xfd: P1_0=0,P1_1=1;break; case 0 xfe: P1_0=1,P1_1=0;break; case 0 xff: P1_0=0,P1_1=0;break; delay(255); P1_0=1; P1_1=1; delay(255);第 7 章基于PROTEUS ISIS的单片机电路仿真 void delay(unsigned char i) unsigned char j,k; for(k=0;ki;k+) for(j=0;j255;j+);第 7 章基于PROTEUS ISIS的单片机电路仿真在KEIL软件中输入上述代码,编译后产生十六进制文件7-2-1.hex,双击AT89C51,将弹出如图7.2.2所示的对话框。在图7.2.2中添加十六进制文件7-2-1.hex,点击“OK”即可。最后进行仿真,可实现表7.2.1的所有功能。第 7 章基于PROTEUS ISIS的单片机电路仿真图7.2.2 添加十六进制文件第 7 章基于PROTEUS ISIS的单片机电路仿真 7.3 基于基于LED数码管的简易秒表设计实训数码管的简易秒表设计实训利用51单片机控制1个LED数码管,依次循环显示09,显示间隔时间为1 s,即可实现一位数的简易秒表。基于LED数码管的简易秒表设计实训图如图7.3.1所示,所用元件清单如表7.3.1所示。第 7 章基于PROTEUS ISIS的单片机电路仿真图7.3.1 基于LED数码管的简易秒表设计实训第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真在上述电路图中,利用单片机的P2口控制一个共阳极LED数码管,向P2口输出相应字型码即可显示数字09。对于共阳极数码管,当连接段控制端的I/O引脚输出低电平时,相应段的发光管点亮。程序代码为:第 7 章基于PROTEUS ISIS的单片机电路仿真#includeunsigned char led=0 xc0,0 xf9,0 xa4,0 xb0,0 x99,0 x92,0 x82,0 xf8,0 x80,0 x90;/定义数组led存放数字09的字型码void delay1s() /采用定时器1实现1s的延时 unsigned char i; for(i=0;i20;i+) /设置循环次数为20第 7 章基于PROTEUS ISIS的单片机电路仿真 TH1=0 x3c; /设置定时器初值为3CBOH TL1=0 xb0; TR1=1; /启动定时器T1 while(!TF1); /查询计数是否溢出,即50 ms时间到 则TF1=1 TF1=0; /将溢出标志位TF1清零 第 7 章基于PROTEUS ISIS的单片机电路仿真void main() /主函数 unsigned char i; TMOD=0 x10; /设置定时器1在工作方式1 while(1)第 7 章基于PROTEUS ISIS的单片机电路仿真 for(i=0;i10;i+) P2=ledi; /字型码送段控制口P1 delay1s(); /延时1 s 第 7 章基于PROTEUS ISIS的单片机电路仿真在KEIL软件中输入上述代码,编译后产生十六进制文件7-3-1.hex,双击AT89C51,将弹出如图7.3.2所示的对话框。在图7.3.2中添加十六进制文件7-3-1.hex,点击“OK”即可。最后进行仿真,可实现每隔1s依次循环显示数字09。第 7 章基于PROTEUS ISIS的单片机电路仿真图7.3.2 添加十六进制文件第 7 章基于PROTEUS ISIS的单片机电路仿真 7.4 电子广告牌实训电子广告牌实训利用51单片机控制1个88 LED点阵显示模块,依次循环显示09,显示间隔时间为1 s,实现一位数的简易秒表。电子广告牌实训图如图7.4.1所示,所用元件清单如表7.4.1所示。第 7 章基于PROTEUS ISIS的单片机电路仿真图7.4.1 电子广告牌实训图第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真LED点阵显示是把很多LED按矩阵方式排列在一起,通过对各LED发光与不发光的控制来完成各种字符或图形的显示。88 LED点阵分别由8行和8列来控制。在图7.3.1中,用单片机的P1口控制点阵屏的8行,用P0口控制点阵屏的8列。 第 7 章基于PROTEUS ISIS的单片机电路仿真实际应用中,P0口用于控制列线,需串联一个300 左右的限流电阻。同时,为了提高单片机端口带负载的能力,通常在端口和外接负载之间增加一个缓冲驱动器。图7.4.1中P1口通过74LS245与点阵连接,既保证了点阵的亮度,又能保护单片机的引脚。其程序代码为:第 7 章基于PROTEUS ISIS的单片机电路仿真#includevoid delay(unsigned char i) unsigned char k,j; for(k=0;ki;k+) for(j=0;j255;j+);第 7 章基于PROTEUS ISIS的单片机电路仿真void delay1ms() /软件实现延时1ms unsigned char i; for(i=0;i0 x10;i+);void main()第 7 章基于PROTEUS ISIS的单片机电路仿真 unsigned char code led=0 x00,0 x18,0 x24,0 x24,0 x24,0 x24,0 x18,0 x00, /0 0 x08,0 x18,0 x28,0 x08,0 x08,0 x08,0 x3e,0 x00, /1 0 x00,0 x18,0 x24,0 x24,0 x08,0 x10,0 x3c,0 x00, /2 0 x00,0 x18,0 x24,0 x04,0 x18,0 x04,0 x24,0 x18, /3 0 x00,0 x08,0 x10,0 x28,0 x48,0 x3e,0 x08,0 x00, /4 0 x00,0 x2c,0 x20,0 x28,0 x04,0 x24,0 x18,0 x00, /5 0 x08,0 x10,0 x20,0 x38,0 x24,0 x24,0 x18,0 x00, /6第 7 章基于PROTEUS ISIS的单片机电路仿真 0 x00,0 x3c,0 x04,0 x08,0 x10,0 x10,0 x10,0 x00, /7 0 x00,0 x18,0 x24,0 x24,0 x18,0 x24,0 x24,0 x18, /8 0 x00,0 x18,0 x24,0 x24,0 x1c,0 x04,0 x24,0 x18;/9 unsigned char w; unsigned int j,k,l,m; while(1)第 7 章基于PROTEUS ISIS的单片机电路仿真 for(j=0;j10;j+)/字符个数控制变量 for(k=0;k1000;k+)/每个字符扫描1000次,控制每 个字符的显示时间 w=0 x01;/行变量指向第一行 l=j*8; for(m=0;m8;m+)第 7 章基于PROTEUS ISIS的单片机电路仿真 P1=0 x00; /关闭行,防止出现显示残留 P0=ledl;/列数据取反后值送至P0口 P1=w;/打开行 delay1ms(); w=1; /逐行扫描第 7 章基于PROTEUS ISIS的单片机电路仿真 l+;/指向数组中下一个显示码 第 7 章基于PROTEUS ISIS的单片机电路仿真在KEIL软件中输入上述代码,编译后产生十六进制文件7-4-1.hex,双击AT89C51,将弹出如图7.4.2所示的对话框。在图7.4.2中添加十六进制文件7-4-1.hex,点击“OK”即可。最后进行仿真,可实现每隔1 s依次循环显示09。第 7 章基于PROTEUS ISIS的单片机电路仿真图7.4.2 添加十六进制文件第 7 章基于PROTEUS ISIS的单片机电路仿真如果要在88点阵上显示的图形如图7.4.3所示,程序该如何修改?请读者自行实现此功能。图7.4.3 显示汉字字符第 7 章基于PROTEUS ISIS的单片机电路仿真 7.5 数码管动态显示实训数码管动态显示实训本节利用数码管动态显示自己的生日(修定生日为1980年7月8日),实训图如图7.5.1所示,所用元件清单如表7.5.1所示。第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真图7.5.1 数码管动态显示实训第 7 章基于PROTEUS ISIS的单片机电路仿真 在上述电路图中,六位数码管的位选端由P2.0P2.5控制,段选端由P1口控制,P1口通过74LS245与数码管的段选端连接,既能保证数码管的亮度,又能保护单片机引脚。其程序代码为:第 7 章基于PROTEUS ISIS的单片机电路仿真#includevoiddelay1ms() unsigned char i; TMOD=0 x20; TH1=6; TL1=6; TR1=1; for(i=0;i4;i+)第 7 章基于PROTEUS ISIS的单片机电路仿真 while(!TF1); TF1=0; void disp() unsigned char led =0 x80,0 xc0,0 xc0,0 xf8,0 xc0,0 x80; unsigned char i,w;第 7 章基于PROTEUS ISIS的单片机电路仿真 w=0 x01; for(i=0;i6;i+) P2=w; w=1; P1=ledi; delay1ms(); 第 7 章基于PROTEUS ISIS的单片机电路仿真voidmain() while(1) disp(); 第 7 章基于PROTEUS ISIS的单片机电路仿真在KEIL软件中输入上述代码,编译后产生十六进制文件7-5-1.hex,双击AT89C51,将弹出如图7.5.2所示的对话框。在图7.5.2中添加十六进制文件7-5-1.hex,点击“OK”即可。最后进行仿真,可显示如图7.5.3所示的生日。第 7 章基于PROTEUS ISIS的单片机电路仿真图7.5.2 添加十六进制文件第 7 章基于PROTEUS ISIS的单片机电路仿真图7.5.3 显示生日图第 7 章基于PROTEUS ISIS的单片机电路仿真7.6 中断扫描方式的矩阵式键盘设计实训中断扫描方式的矩阵式键盘设计实训采用中断扫描方式设计44矩阵键盘,当某个键被按下时,LED数码管显示相应按键的键值。中断扫描方式的矩阵式键盘实训图如图7.6.1所示,所用元件清单如表7.6.1所示。第 7 章基于PROTEUS ISIS的单片机电路仿真图7.6.1 中断扫描方式的矩阵式键盘实训图第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真44矩阵式键盘的4根行线连接到P0口的低四位,4根列线连接到P0口的高四位。按照矩阵式键盘的扫描方法可知,P0.0P0.3为扫描输入线,P0.4P0.7为键输出线。图7.6.1中的与门用于产生按键中断,其输入端与各行线相连,再通过上拉电阻接至+5V电源,输出端接至外部中断0的输入端P3.2。LED数码管由单片机的P1口控制。第 7 章基于PROTEUS ISIS的单片机电路仿真具体工作过程如下:当键盘没有键按下时,与门各输入端均为高电平,与门输出端也保持高电平;当有键被按下时,与门输入端有低电平,相应地与门输出端变为低电平,从而控制P3.2向CPU申请中断,若CPU开放外部中断,则会响应中断请求,转去执行键盘扫描程序并获得对应键值,最终通过LED数码管显示。 第 7 章基于PROTEUS ISIS的单片机电路仿真其程序代码为:#include#define uchar unsigned char void display(uchar num);void delay10ms();uchar code led=0 xc0,0 xf9,0 xa4,0 xb0,0 x99,0 x92,0 x82,0 xf8, 0 x80,0 x90,0 x88,0 x83,0 xc6,0 xa1,0 x86,0 x8e; 第 7 章基于PROTEUS ISIS的单片机电路仿真void main() P1=0 xff;TMOD=0 x10; /T1在工作方式1IE=0 x87;/开中断总允许位和外部中断0允许位IT0=1;/设置外部0中断下降沿触发while(1)第 7 章基于PROTEUS ISIS的单片机电路仿真P0=0 xef;P0=0 xdf;P0=0 xbf;P0=0 x7f;void display(uchar num)P1=lednum;第 7 章基于PROTEUS ISIS的单片机电路仿真voiddelay10ms()TH1=0 xd8;TL1=0 xf0;TR1=1;while(!TF1);TF1=0;第 7 章基于PROTEUS ISIS的单片机电路仿真voidinth() interrupt 0/外部中断0uchar temp,key;P0=0 xef;/扫描第一行temp=P0;/P0状态送给变量temptemp=temp&0 x0f;/与操作屏蔽低四位if(temp!=0 x0f)/P0高四位有低电位进入第 7 章基于PROTEUS ISIS的单片机电路仿真delay10ms(); /延时10 mstemp=P0; /P0状态送给变量temptemp=temp&0 x0f; /与操作屏蔽低四位if(temp!=0 x0f) temp=P0; /判断后的P0状态送给变量temp switch(temp)第 7 章基于PROTEUS ISIS的单片机电路仿真case 0 xee:key=0;break; /键值为0的按键按下case 0 xed:key=4;break;/键值为1的按键按下 case 0 xeb:key=8;break;/键值为2的按键按下case 0 xe7:key=12;break;/键值为3的按键按下 while(temp!=0 x0f) /等待按键释放,即P0高四位恢复 高电位,结束循环第 7 章基于PROTEUS ISIS的单片机电路仿真temp=P0;temp=temp&0 x0f;display(key);/显示键值第 7 章基于PROTEUS ISIS的单片机电路仿真P0=0 xdf;/扫描第一行temp=P0;/P0状态送给变量temptemp=temp&0 x0f;/与操作屏蔽低四位if(temp!=0 x0f)/P0高四位有低电位进入delay10ms();temp=P0;temp=temp&0 x0f;if(temp!=0 x0f)第 7 章基于PROTEUS ISIS的单片机电路仿真temp=P0;switch(temp)case 0 xde:key=1;break;case 0 xdd:key=5;break;case 0 xdb:key=9;break;case 0 xd7:key=13;break;第 7 章基于PROTEUS ISIS的单片机电路仿真while(temp!=0 x0f)/等待按键释放temp=P0;temp=temp&0 x0f;display(key);/显示键值第 7 章基于PROTEUS ISIS的单片机电路仿真P0=0 xbf;/扫描第一行temp=P0;/P0状态送给变量temptemp=temp&0 x0f;/与操作屏蔽低四位if(temp!=0 x0f)/P0高四位有低电位进入delay10ms();temp=P0;第 7 章基于PROTEUS ISIS的单片机电路仿真temp=temp&0 x0f;if(temp!=0 x0f)temp=P0;switch(temp)case 0 xbe:key=2;break;case 0 xbd:key=6;break;case 0 xbb:key=10;break;case 0 xb7:key=14;break;第 7 章基于PROTEUS ISIS的单片机电路仿真while(temp!=0 x0f)/等待按键释放temp=P0;temp=temp&0 x0f;display(key); /显示键值第 7 章基于PROTEUS ISIS的单片机电路仿真P0=0 x7f;/扫描第一行temp=P0;/P0状态送给变量temptemp=temp&0 x0f;/与操作屏蔽低四位if(temp!=0 x0f)/P0高四位有低电位进入delay10ms();temp=P0;temp=temp&0 x0f;if(temp!=0 x0f)第 7 章基于PROTEUS ISIS的单片机电路仿真temp=P0;switch(temp)case 0 x7e:key=3;break;case 0 x7d:key=7;break;case 0 x7b:key=11;break;case 0 x77:key=15;break;第 7 章基于PROTEUS ISIS的单片机电路仿真while(temp!=0 x0f)/等待按键释放temp=P0;temp=temp&0 x0f;display(key); /显示键值 第 7 章基于PROTEUS ISIS的单片机电路仿真在KEIL软件中输入上述代码,编译后产生十六进制文件7-6-1.hex,双击AT89C51,将弹出如图7.6.2所示的对话框。在图7.6.2中添加十六进制文件7-6-1.hex,点击“OK”即可。最后进行仿真,若按键S0按下,数码管显示的数字为“0”;若按键S1按下,数码管显示的数字为“1”;若按键S2按下,数码管显示的数字为“2”,以此类推,若按键S15按下,数码管显示的数字为“F”。第 7 章基于PROTEUS ISIS的单片机电路仿真图7.6.2 添加十六进制文件第 7 章基于PROTEUS ISIS的单片机电路仿真 7.7 模拟交通灯控制实训模拟交通灯控制实训 (1) 正常情况下双方向轮流点亮信号灯。信号灯的状态如表7.7.1所示。(2) 有紧急车辆通过时,A、B方向均亮红灯。本实训主要是定时控制东南西北四个方向上的12盏交通信号灯,并且出现紧急情况时,能及时调整交通灯指示状态。第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真观察表7.7.1不难发现,在不考虑左转弯行驶车辆的情况下,东、西两个方向的信号灯的显示状态是一样的,所以对应两个方向上的6个发光二极管只用P1口的3根I/O口线控制即可。同理,南、北方向上的6个发光二极管可用P1口的另外3根I/O口线控制。当I/O口线输出高电平时,对应的交通灯灭;反之,当I/O口线输出低电平时,对应的交通灯亮。各控制口线的分配以及控制状态如表7.7.2所示。第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真根据上述分析,模拟交通灯控制实训图如图7.7.1所示,所用元件清单如表7.7.3所示。表7.7.3 模拟交通灯控制实训元件清单第 7 章基于PROTEUS ISIS的单片机电路仿真图7.7.1 模拟交通灯控制实训图第 7 章基于PROTEUS ISIS的单片机电路仿真按键S1模拟紧急情况发生,当S1为高电平(不按按键)时表示正常情况,S1为低电平(按下按键)时表示紧急情况。S1按键接至(P3.2)脚可实现外部中断0中断申请,实现A、B方向双向红灯显示。 0INT第 7 章基于PROTEUS ISIS的单片机电路仿真其程序代码为:#includeunsigned char t0,t1;void delay0_5s() for(t0=0;t010;t0+) TH1=0 x3c; TL1=0 xb0; TR1=1; while(!TF1); TF1=0; 第 7 章基于PROTEUS ISIS的单片机电路仿真void delay_t1(unsigned char t) for(t1=0;t1t;t1+) delay0_5s();void int_0() interrupt 0第 7 章基于PROTEUS ISIS的单片机电路仿真 unsigned char i,j,k,l,m; i=P1; j=t0; k=t1; l=TH1; m=TH0; P1=0 xdb; delay_t1(20);第 7 章基于PROTEUS ISIS的单片机电路仿真 P1=i; t0=j; t1=k; TH1=1; TH0=m;void main()第 7 章基于PROTEUS ISIS的单片机电路仿真 unsigned char k; TMOD=0 x10; EA=1; EX0=1; IT0=1; while(1) P1=0 xf3; delay_t1(10); for(k=0;k3;k+)第 7 章基于PROTEUS ISIS的单片机电路仿真 P1=0 xf3; delay0_5s(); P1=0 xfb; delay0_5s(); P1=0 xeb; delay_t1(4); P1=0 xde; delay_t1(10); for(k=0;k3;k+)第 7 章基于PROTEUS ISIS的单片机电路仿真 P1=0 xde; delay0_5s(); P1=0 xdf; delay0_5s(); P1=0 xdd; delay_t1(4); 第 7 章基于PROTEUS ISIS的单片机电路仿真在KEIL软件中输入上述代码,编译后产生十六进制文件7-7-1.hex,双击AT89C51,将弹出如图7.7.2所示的对话框。在图7.7.2中添加十六进制文件7-7-1.hex,点击“OK”即可。最后进行仿真,可实现表7.7.1的所有功能,且当紧急情况发生(按键S1按下)时,A、B两方向双向红色显示。第 7 章基于PROTEUS ISIS的单片机电路仿真图7.7.2 添加十六进制文件第 7 章基于PROTEUS ISIS的单片机电路仿真 7.8 液晶显示控制实训液晶显示控制实训在实际生活中,经常可以看到八段LED数码管构成的广告牌显示屏,但数码管构成的显示屏显示的字符有限,不能灵活显示更多的字符和文字。对于显示多个字符的应用场合,就需要使用液晶显示器。液晶显示控制实训图如图7.8.1所示,所用元件清单如表7.8.1所示。第 7 章基于PROTEUS ISIS的单片机电路仿真图7.8.1 液晶显示控制实训 第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真其程序代码为:#includetypedef unsigned char uint8;typedef unsigned int uint16;sbit RS=P20;sbit RW=P21;sbit EN=P25;sbit BUSY=P07;unsigned char code word1=“Welcome to Shenz”; /定义显示的字符unsigned char code word2=“hen Polytechnic”; /定义显示的字符 第 7 章基于PROTEUS ISIS的单片机电路仿真void delay() uint16 i,j; for(i=0;i200;i+) for(j=0;j200;j+);void wait() /等待繁忙标志 P0=0 xff; do第 7 章基于PROTEUS ISIS的单片机电路仿真 RS=0; RW=1; EN=0; EN=1; while(BUSY=1); EN=0;第 7 章基于PROTEUS ISIS的单片机电路仿真void w_dat(uint8 dat) /写数据 wait(); EN=0; P0=dat; RS=1; RW=0; EN=1; EN=0;第 7 章基于PROTEUS ISIS的单片机电路仿真void w_cmd(uint8 cmd) /写命令 wait(); EN=0; P0=cmd; RS=0; RW=0; EN=1; EN=0;第 7 章基于PROTEUS ISIS的单片机电路仿真void Init_LCD1602() /初始化 w_cmd(0 x38); w_cmd(0 x0f); w_cmd(0 x06); w_cmd(0 x01);void w_string(uint8 addr_start, uint8 *p) /显示字符第 7 章基于PROTEUS ISIS的单片机电路仿真 w_cmd(addr_start); while (*p != 0) w_dat(*p+); delay(); main()第 7 章基于PROTEUS ISIS的单片机电路仿真 Init_LCD1602(); w_string(0 x80,word1); w_string(0 xc0,word2); w_cmd(0 x0c); while(1);第 7 章基于PROTEUS ISIS的单片机电路仿真在KEIL软件中输入上述代码,编译后产生十六进制文件7-8-1.hex,双击AT89C51,将弹出如图7.8.2所示的对话框。在图7.8.2中添加十六进制文件7-8-1.hex,点击“OK”即可。最后进行仿真,从仿真结果来看,液晶上显示的字符为“Welcome to Shenzhen Polytechnic”。第 7 章基于PROTEUS ISIS的单片机电路仿真图7.8.2 添加十六进制文件第 7 章基于PROTEUS ISIS的单片机电路仿真 7.9 A/D转换接口技术实训转换接口技术实训采用TI公司生产的A/D转换芯片TLC2543采集05V连续可变的模拟电压信号,并将其转变为12位数字信号,送至51单片机进行处理,在四位数码管上显示出对应的数字信号。05 V的模拟电压信号可通过调节电位器获得。A/D转换接口技术实训图如图7.9.1所示,所用元件清单如表7.9.1所示。第 7 章基于PROTEUS ISIS的单片机电路仿真图7.9.1 A/D转换接口技术实训图第 7 章基于PROTEUS ISIS的单片机电路仿真第 7 章基于PROTEUS ISIS的单片机电路仿真在上述电路图中,05 V模拟电压信号可通过调节电位器获得,并被送至A/D芯片TLC2543的AIN0通道。数据输出端SDO、串行数据输入端SDI、片选端和输入/输出时钟CLK分别与51单片机的P1.0P1.3相连。四位数码管选用共阳极数码管,位选端由单片机的P3.0P3.3控制,段码端由单片机的P2.0P2.7控制,采用动态扫描法显示。 第 7 章基于PROTEUS ISIS的单片机电路仿真其程序代码为:#include#include#include#define uchar unsigned char#define uint unsigned intsbit AD_CLOCK=P13; /TLC2543控制位的宏定义sbit AD_IN=P11;sbit AD_OUT=P10;第 7 章基于PROTEUS ISIS的单片机电路仿真sbit AD_CS=P12;uchar table10=0 xc0,0 xf9,0 xa4,0 xb0,0 x99,0 x92,0 x82,0 xf8,0 x80,0 x90; /共阳极数码管段码static const uchar ad_channel_select= 0 x08,0 x18,0 x28,0 x38,0 x48,0 x58,0 x68,0 x78,0 x88,0 x98,0 xa8; /通道010均为12位数据,MSB在前,无符号uint ad2543(uchar chunnel_select) /二进制,A/D转换子程序,读出上一次AD值(12位精 /度),并开始下一次转换第 7 章基于PROTEUS ISIS的单片机电路仿真 uint din,j; uchar dout,i; din=0; dout=ad_channel_selectchunnel_select; for(j=0;j100;j+); /延时大于1us AD_CLOCK=0; AD_CS=0; for(i=0;i12;i+)第 7 章基于PROTEUS ISIS的单片机电路仿真 if(dout&0 x80) AD_IN=1; else AD_IN=0; AD_CLOCK=1; dout=1; din=1; if(AD_OUT=1) din|=0 x0001; AD_CLOCK=0; 第 7 章基于PROTEUS ISIS的单片机电路仿真 AD_CS=1; for(j=0;j100;j+); /延时大于1us return(din);void display(uint num) /AD输出12位数字信号,数码管显示程序第 7 章基于PROTEUS ISIS的单片机电路仿真 uint a; P3=0 x08; P2=tablenum/1000; for(a=0;a1000;a+); P3=0 x04; P2=table(num%1000)/

    注意事项

    本文(proteus单片机.ppt)为本站会员(豆****)主动上传,得力文库 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知得力文库 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于得利文库 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

    © 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

    黑龙江省互联网违法和不良信息举报
    举报电话:0468-3380021 邮箱:hgswwxb@163.com  

    收起
    展开