1
21
63
注册会员
#include "ai8051u.h" //调用头文件 #include "stc32_stc8_usb.h" //调用头文件 #define FOSC 24000000UL char *USER_DEVICEDESC = NULL; char *USER_PRODUCTDESC = NULL; char *USER_STCISPCMD = "@STCISP#"; void dalay_ms(u16 ms) { u16 i; do { i = FOSC/6000; while(--i); }while(--ms); } void main(void) //主函数 { WTST=0; CKCON=0; P_SW2 |= 0x80; //B7位写1,使能访问XFR 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; P3M0 &=~0x03; P3M1 = 0x03; IRC48MCR =0x80; while (!(IRC48MCR & 0x01)); USBCLK=0x00; USBCON=0x90; usb_init(); //USB CDC 接口配置 EUSB = 1; //使能USB中断 EA = 1; // while (DeviceState != DEVSTATE_CONFIGURED); //等待USB完成配置 while(1) { P40 = 0; //SOS dalay_ms(500); P40 = 1; dalay_ms(500); P40 = 0; dalay_ms(500); P40 = 1; dalay_ms(500); P40 = 0; dalay_ms(500); P40 = 1; dalay_ms(500); P40 = 0; dalay_ms(1500); P40 = 1; dalay_ms(500); P40 = 0; dalay_ms(1500); P40 = 1; dalay_ms(500); P40 = 0; dalay_ms(1500); P40 = 1; dalay_ms(500); P40 = 0; dalay_ms(500); P40 = 1; dalay_ms(500); P40 = 0; dalay_ms(500); P40 = 1; dalay_ms(500); P40 = 0; dalay_ms(500); P40 = 1; dalay_ms(500); if (bUsbOutReady) //如果接收到了数据 { USB_SendData(UsbOutBuffer,OutNumber); //发送数据缓冲区,长度(接收数据原样返回, 用于测试) printf_hid("\r\nOK"); usb_OUT_done(); } } } 复制代码
使用道具 举报 送花
hnpd*** 发表于 2024-12-24 10:27 第六集下——本想用for循环的,但是就循环三次,实在没必要了~
本版积分规则 发表回复 回帖后跳转到最后一页
|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )
GMT+8, 2025-7-5 06:16 , Processed in 0.113449 second(s), 58 queries .
Powered by Discuz! X3.5
© 2001-2025 Discuz! Team.