找回密码
 立即注册

QQ登录

只需一步,快速开始

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

这单片机程序为什么实现不了串口控制led灯?

[复制链接]
跳转到指定楼层
楼主
ID:982452 发表于 2021-11-19 10:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  1. #include <REG52.H>
  2. #define fck 11059200
  3. //串口初始化代码*/
  4. // 9600 = 1/32*(fck/12/(256-TH1))
  5. void usart_init(int bound)
  6. {
  7.     /*T1定时模式方式2,与中断引脚无关*/
  8.           TMOD &=~(0xf<<4);
  9.           TMOD |= (0x2<<4);
  10.           TH1=(256-(fck/32/12/bound));
  11.           TL1=(256-(fck/32/12/bound)); //根据波特率公式算出预装载值
  12.          
  13.           SCON = 0x50;//方式一,使能吸收,失能校验,清标志位//0101 0000
  14.           PCON &=~(1<<7); //不加倍 0111 1111
  15.     TR1=1; //开定时器1
  16. }

  17. void usart_send(char dat)
  18. {
  19.         
  20.         SBUF=dat;//发送新数据
  21.         while(TI==0);//等待发送完成
  22.         TI=0;

  23. }

  24. char usart_receive(void)
  25. {
  26.      char dat;
  27.            while(RI==0);
  28.            dat=SBUF;
  29.            RI=0;
  30.         usart_send(dat);
  31.         return dat;

  32. }
  33. int main()
  34. {
  35.         char a;
  36.         usart_init(9600);  //串口初始化

  37.         while(1)
  38.         {
  39.           int strcmp (const char *str1, const char *str2);
  40.                 (str1"开灯",str2"关灯");
  41.                 if(a == '1')
  42.                 {
  43.                         P2 = 0x00;
  44.                 }
  45.                 else if(a == '0')
  46.                 {
  47.                         P2 = 0xff;
  48.                 }
  49.                         
  50.                 //usart_receive();

  51.         //usart_send('a');
  52.         }
  53.         
  54. }
复制代码


为什么实现不了

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

使用道具 举报

沙发
ID:624769 发表于 2021-11-19 12:42 | 只看该作者
你先不要管 控制灯了, 你先管 你控制串口 给你发送指定的信息: OK  或者 NO  你做到这个之后,再管控制灯。
回复

使用道具 举报

板凳
ID:280000 发表于 2021-11-19 14:07 | 只看该作者
先调试串口通信是否正常,数据的收发是否能正常进行,再测试小灯部分
回复

使用道具 举报

地板
ID:138902 发表于 2021-11-19 14:27 | 只看该作者
程序仿真运行,串口接收里设置断点,看接收得到不
回复

使用道具 举报

5#
ID:982542 发表于 2021-11-19 14:50 | 只看该作者
你看看程序或灯本身有没有问题
回复

使用道具 举报

6#
ID:86450 发表于 2021-11-19 15:40 | 只看该作者
因为 你没实现串口接收函数
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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