找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1642|回复: 0
打印 上一主题 下一主题
收起左侧

51单片机学习串口功能切换问题

[复制链接]
跳转到指定楼层
楼主
ID:273660 发表于 2018-1-9 11:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请各位大神帮我看看,我在做51单片机的功能,通过串口助手输入1、2都有功能,但是无法相互切换,我经验不足代码不知道应该怎么修改,求各位帮帮忙!

  1. #include <reg51.h>
  2. #include <intrins.h>
  3. #include <absacc.h>
  4. #include "LCD1602.h"
  5. #include "keyword.h"
  6. #include "ds18b20.h"
  7. #include "liushuideng.h"
  8. #include "0832.h"
  9. #include "12864.h"
  10. #include "1302.h"
  11. #include "lcd12864.h"
  12. #include "DS1302.h"

  13. #define uchar unsigned char
  14. #define uint unsigned int

  15. uchar zhi;

  16. void zhongduan()
  17. {
  18.         SCON=0x50;
  19.         TMOD=0x20;
  20.         TH1=0xfd;
  21.         TL1=0xfd;
  22.         IE=0x90;
  23.         TR1=1;
  24. }

  25. void liushuiinit()
  26. {
  27.         COM = 0x90;
  28.         PA = 0xff;
  29.         PB = 0xff;
  30.         PC = 0xff;
  31. }

  32. void main()
  33. {
  34.         zhongduan();
  35.        
  36.         while(1)
  37.         {
  38.                 if(zhi==1)
  39.                 {
  40.                         Init_LCD1602();
  41.                         while(1)
  42.                         {
  43.                                 jisuanqi();
  44.                                 if(zhi!=1)
  45.                                 {
  46.                                         break;
  47.                                 }       
  48.                         }       
  49.                 }
  50.                 else if(zhi==2)
  51.                 {
  52.                         liushuiinit();
  53.                         while(1)
  54.                         {
  55.                                 liushuideng();
  56.                                 if(zhi!=2)
  57.                                 {
  58.                                         PB=0XFF;
  59.                                         break;
  60.                                 }       
  61.                         }
  62.                 }
  63.                 else if(zhi==3)
  64.                 {
  65.                         while(1)
  66.                         {
  67.                                 m_12864();
  68.                                 if(zhi!=3)
  69.                                 {
  70.                                         break;
  71.                                 }
  72.                         }
  73.                 }               
  74.         }
  75. }
  76.          

  77.         //Init_LCD1602();
  78.         //jisuanqi();
  79.         //DS18B20();
  80.         //liushuideng();
  81.         //m_0832();
  82.         //m_12864();
  83.         //m_1302();

  84. void intser() interrupt 4
  85. {
  86.         RI=0;
  87.         zhi=SBUF;
  88. }
复制代码



分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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