找回密码
 立即注册

QQ登录

只需一步,快速开始

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

51单片机如何激活一个I/O口,让单片机输出固定的串口信号

[复制链接]
跳转到指定楼层
楼主
51单片机如何激活一个I/O口,让单片机输出固定的串口信号,如激活P0^1  输出串口信号:123456  
还有就是输入串口信号123456  激活P0^1

请大神帮忙写两个代码,谢谢
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:213173 发表于 2023-2-3 20:44 | 只看该作者
激活一个I/O口?固定的串口信号?都是你自定义的表述。叫别人怎么理解?
回复

使用道具 举报

板凳
ID:1059375 发表于 2023-2-3 23:40 来自手机 | 只看该作者
用串口中断,判断SBUF收到的是不是123456,用if就行
回复

使用道具 举报

地板
ID:1034262 发表于 2023-2-4 10:04 | 只看该作者
没法理解楼主的描述。51单片机的IO库不需要“激活”,直接使用。串口一般固定在某两个IO,或可以在某几组IO切换。但C8051有交叉开关,是否可以任意切换不知道,我没用过,这是贵族产品用的MCU。
回复

使用道具 举报

5#
ID:1062090 发表于 2023-2-4 12:20 | 只看该作者
kkk09 发表于 2023-2-3 23:40
用串口中断,判断SBUF收到的是不是123456,用if就行

回复

使用道具 举报

6#
ID:161164 发表于 2023-2-4 21:05 | 只看该作者
这样?






回复

使用道具 举报

7#
ID:1062090 发表于 2023-2-5 11:50 | 只看该作者

大神,你太厉害了,就是这样
回复

使用道具 举报

8#
ID:1062090 发表于 2023-2-5 11:50 | 只看该作者
wulin 发表于 2023-2-3 20:44
激活一个I/O口?固定的串口信号?都是你自定义的表述。叫别人怎么理解?

你如果理解不了的话,请看6楼大神回复
回复

使用道具 举报

9#
ID:1062090 发表于 2023-2-5 11:54 | 只看该作者

你太厉害了,能发个代码吗?感谢感谢
回复

使用道具 举报

10#
ID:645225 发表于 2023-2-5 13:31 | 只看该作者
#include <reg52.h>  sbit P0_1 = P0^1;  // Define P0.1 as sbit type  void main() {     P0_1 = 0;   // Activate P0.1 and set its value to low      // Output "123456" via serial port     printf("123456");      while(1)     {         // Do nothing, wait for input signal     } }
回复

使用道具 举报

11#
ID:645225 发表于 2023-2-5 13:32 | 只看该作者
1单片机激活一个I/O口,让单片机输出固定的串口信号的代码示例如下:
#include <reg52.h>

sbit P0_1 = P0^1;  // Define P0.1 as sbit type

void main()
{
    P0_1 = 0;   // Activate P0.1 and set its value to low

    // Output "123456" via serial port
    printf("123456");

    while(1)
    {
        // Do nothing, wait for input signal
    }
}

51单片机输入串口信号123456并激活P0^1的代码示例如下:
#include <reg52.h>
#include <stdio.h>

sbit P0_1 = P0^1;  // Define P0.1 as sbit type
char input[7];

void main()
{
    while(1)
    {
        scanf("%s", input);
        if (strcmp(input, "123456") == 0)
        {
            P0_1 = 1;   // Activate P0.1 and set its value to high
        }
    }
}
注意:需要包含"stdio.h"头文件并初始化串口。
回复

使用道具 举报

12#
ID:313517 发表于 2023-2-5 19:55 | 只看该作者
用串口来实现
回复

使用道具 举报

13#
ID:1062090 发表于 2023-2-5 22:59 | 只看该作者
lztopic 发表于 2023-2-5 13:31
#include   sbit P0_1 = P0^1;  // Define P0.1 as sbit type  void main() {     P0_1 = 0;   // Activate ...

感谢,感谢
回复

使用道具 举报

14#
ID:1062090 发表于 2023-2-5 22:59 | 只看该作者
lztopic 发表于 2023-2-5 13:32
1单片机激活一个I/O口,让单片机输出固定的串口信号的代码示例如下:
#include

感谢。感谢
回复

使用道具 举报

15#
ID:1062090 发表于 2023-2-5 22:59 | 只看该作者
回复

使用道具 举报

16#
ID:1062090 发表于 2023-2-5 23:00 | 只看该作者
coody_sz 发表于 2023-2-4 10:04
没法理解楼主的描述。51单片机的IO库不需要“激活”,直接使用。串口一般固定在某两个IO,或可以在某几组IO ...

回复

使用道具 举报

17#
ID:1061331 发表于 2023-2-6 00:42 | 只看该作者
用串口中断4,打开SSCOM判断SBUF收到的是不是123456这串字符,用if语句判断就行
回复

使用道具 举报

18#
ID:1042619 发表于 2023-2-6 11:42 | 只看该作者

   楼主从 STC-ISP V6.91J 以上版本的 ISP烧录/辅助开发工具包一体化软件  直接调用USB-CDC串口助手、HID助手、IO配置工具等工具窗口,相信您用的到
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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