单片机端采用C51实现_单个单片机与PC串口通信任务.docVIP

单片机端采用C51实现_单个单片机与PC串口通信任务.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
单片机端采用C51实现_单个单片机与PC串口通信任务

单个单片机与PC串口通信: 1)测试通信状态 先在文本框中输入字符串“Hello”,单击“测试”按钮,将字符串“Hello”发送到单片机,若PC与单片机通信正常,在PC程序的文本框中显示字符串“OK!”,否则显示字符串“ERROR!”。 2)循环计数 单击“开始”按钮,文本框中数字从0开始累加,0、1、2、3…,并将此数发送到单片机的显示器上显示;当累加到10时,回到0重新开始累加,依次循环;任何时候,单击“停止”按钮,PC程序中和单片机显示器都停止累加,再单击“开始”按钮,接着停下的数继续累加。 3)控制指示灯 在单片机继电器接线端子的2个通道上分别接上2个指示灯,在PC程序画面上选择指示灯号,如1号灯,单击画面“打开”按钮,单片机上1号灯亮,同时蜂鸣器响;单击画面“关闭”按钮,1号灯灭,蜂鸣器停止响;同样控制2号灯的亮灭(蜂鸣器同时动作)。 #include reg51.h #includeintrins.h #define uchar unsigned char #define uint unsigned int sbit a1=P0^0; sbit a2=P0^1; sbit a3=P0^2; sbit a4=P0^3; sbit a5=P0^4; sbit a6=P0^5; sbit a7=P0^6; sbit a8=P0^7; void delay(uint x) //延时 { uchar i; while(x--)for(i=0;i120;i++); } void uart(void) interrupt 4 //把接收到的数据写入ucReceiveData() { TI=0; RI=0; if(SBUF==h)//接收到H字符 发送OK { SBUF=o; while(TI==0) ; TI=0; } else if(SBUF==1) a1=0; else if(SBUF==2) a1=1; else if(SBUF==3) a2=0; else if(SBUF==4) a2=1; else if(SBUF==5) a3=0; else if(SBUF==6) a3=1; else if(SBUF==7) a4=0; else if(SBUF==8) a4=1; else if(SBUF==9) a5=0; else if(SBUF==a) a5=1; else if(SBUF==b) a6=0; else if(SBUF==c) a6=1; else if(SBUF==d) a7=0; else if(SBUF==e) a7=1; else if(SBUF==f) a8=0; else if(SBUF==g) a8=1; } void main(void) { uchar b=0xfe; TMOD=0x20; //定时器1--方式2 IE=0x12; //中断控制设置,串口、T2开中断 PCON=0x80; //电源控制 SCON=0x50; //方式1 TL1=0xFa;//0xF4; //12MHZ晶振,波特率为4800 0xf3 4800 TH1=0xFa;//0xF4; //11.0592MHZ晶振,波特率为4800 0xf4 9600 0xfa 19200 0xfd TR1=1; //启动定时 ES=1; EA=1; // P0=0; while(1) { P1=0; } } using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Drawing.Drawing2D; namespace lsd1 { public partial class Form1 : Form { int a = 0,b=2,c=0,d=0; int m; int sur = 0; int su = 0, sf = 0;

文档评论(0)

shenlan118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档