找回密码
 立即注册
查看: 286|回复: 0

使用8051U虚拟串口/串口打印

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:8
  • 最近打卡:2025-02-13 09:24:03

7

主题

-1

回帖

85

积分

注册会员

积分
85
发表于 2025-1-8 14:55:26 | 显示全部楼层 |阅读模式

使用8051U虚拟串口/串口打印

具体步骤如下:

1、硬件理解:

AI8051U单片机内部集成了USB转串口的功能,无需额外的串口转换模块进行通信。

第一步,分析电路图,了解电路原理与实际的操作。

第二步,将AI8051U单片机通过USB线连接到计算机。

image.png

2、软件代码理解:

在AI8051U单片机上编写串口打印程序,配置接口参数、使能USB中断等。

usb_init();                                     //USB CDC 接口配置
  
    EUSB = 1;                                    //使能USB中断
    EA = 1;                                         // 

    while (DeviceState != DEVSTATE_CONFIGURED);     //等待USB完成配置

	while(1)
	{
		 if (bUsbOutReady)                    //如果接收到了数据
        {
            USB_SendData(UsbOutBuffer,OutNumber);   //发送数据缓冲区,长度(接收数据原样返回, 用于测试)
       
            usb_OUT_done();
			
        }

3、串口助手设置:

image.png

第一步,芯片型号选择对。

第二步,把开发板与电脑连接,会发现识别不了芯片,这里有一个方法,就是按住P3.2,重新上电,这个时候才会识别,在扫描串口那里就会弹出COM多少。

第三步,选择串口模式,勾选下面的”每次下载前都先发送自定义命令“这三个选项。

4、点亮LED代码:


    P0M1 = 0x00;   P0M0 = 0x00;
    P1M1 = 0x00;   P1M0 = 0x00;
    P2M1 = 0x00;   P2M0 = 0x00;
    P3M1 = 0x00;   P3M0 = 0x00;
    P4M1 = 0x00;   P4M0 = 0x00;
    P5M1 = 0x00;   P5M0 = 0x00;
    P6M1 = 0x00;   P6M0 = 0x00;
    P7M1 = 0x00;   P7M0 = 0x00;

P20 = 0;
  delay_ms(200);
  P20 = 1;
  delay_ms(200);
  P21 = 0;
  delay_ms(100);
  P21 = 1;
  delay_ms(100);

硬件原理图:

image.png

把IO口拉低就可以把LED点亮,加上延时就可以使LED交换闪烁。

5、实现效果:

image.png

回复

使用道具 举报 送花

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

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-6 21:46 , Processed in 0.119449 second(s), 48 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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