国学芯用 发表于 2026-7-2 13:18:48

85-示波器-CDC虚拟显示,AI8051U实验箱演示程序

85-示波器-CDC虚拟显示,AI8051U实验箱演示程序

主程序main.C代码如下(汇编版本在附件中):

/*---------------------------------------------------------------------*/
/* --- Web: www.STCAI.com ---------------------------------------------*/
/* --- BBS: www.STCAIMCU.com-----------------------------------------*/
/* 如果要在程序中使用此代码,请在程序中注明使用了STC的资料及程序            */
/*---------------------------------------------------------------------*/

/*************功能说明    **************




#include "../comm/AI8051U.h"
#include "stc.h"
#include "uart.h"
#include "usb.h"

BOOL RxFlag;
BYTE RxCount;
BYTE xdata RxBuffer;
BYTE xdata TxBuffer;

void uart_init()
{
    RxFlag = 0;
    RxCount = 0;
}

void uart_send(int size)
{
    BYTE cnt;
    int addr;

    IE2 &= ~EUSB;
    usb_write_reg(INDEX, 1);

    addr = 0;
    do
    {
      cnt = size > 64 ? 64 : size;
      while (usb_read_reg(INCSR1) & INIPRDY);
      usb_bulk_intr_in(&TxBuffer, cnt, 1);
      addr += cnt;
      size -= cnt;
    } while (cnt >= 64);

    IE2 |= EUSB;
}

void uart_recv_done()
{
    IE2 &= ~EUSB;

    RxFlag = 0;
    usb_write_reg(INDEX, 1);
    usb_write_reg(OUTCSR1, 0);

    IE2 |= EUSB;
}


页: [1]
查看完整版本: 85-示波器-CDC虚拟显示,AI8051U实验箱演示程序