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

《8051U深度入门到32位51大型实战视频》USB不停电下载学习心得

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:4
  • 最近打卡:2025-04-29 11:42:39

11

主题

18

回帖

157

积分

注册会员

积分
157
发表于 2025-1-13 15:36:55 | 显示全部楼层 |阅读模式

第四集

在其他网站看到了别人关于AI8051的USB应用的视频,觉得非常不可思议。

原来USB的使用是可以如此的简单,AI8051太强了,我想玩玩。看了相关的课程和代码,顿时开悟了。
  1. #include "ai8051u.h"                        //调用头文件
  2. #include "stc32_stc8_usb.h"                //调用头文件
  3. char *USER_DEVICEDESC = NULL;
  4. char *USER_PRODUCTDESC = NULL;
  5. char *USER_STCISPCMD = "@STCISP#";
  6. void main(void)
  7. {
  8.     P_SW2 |= 0x80;                //B7位写1,使能访问XFR
  9.         
  10.     P0M1 = 0x00;   P0M0 = 0x00;
  11.     P1M1 = 0x00;   P1M0 = 0x00;
  12.     P2M1 = 0x00;   P2M0 = 0x00;
  13.     P3M1 = 0x00;   P3M0 = 0x00;
  14.     P4M1 = 0x00;   P4M0 = 0x00;
  15.     P5M1 = 0x00;   P5M0 = 0x00;
  16.     P6M1 = 0x00;   P6M0 = 0x00;
  17.     P7M1 = 0x00;   P7M0 = 0x00;
  18.         
  19.         usb_init();                                     //USB CDC 接口配置
  20.     IE2 |= 0x80;                                    //使能USB中断
  21.     EA = 1;                                                                                        //IE |= 0X80;
  22.         
  23.         while (DeviceState != DEVSTATE_CONFIGURED);     //等待USB完成配置
  24.         
  25.         while(1)
  26.         {
  27.                
  28.         if (bUsbOutReady)
  29.         {
  30.             USB_SendData(UsbOutBuffer,OutNumber);   //发送数据缓冲区,长度(接收数据原样返回, 用于测试)
  31.             
  32.             usb_OUT_done();
  33.         }
  34.                
  35.                 P40 = 0;        //P40端口输出0V
  36.                 P00 = 0;        //P00端口输出0V
  37.                 P02 = 0;        //P02端口输出0V
  38.                 //P01 = 0;        //P01端口输出0V
  39.                 //
  40.         }
  41. }
复制代码
这些封装好的函数可以用,不过封装成了LIB,不能一窥背后真容。不过这并不影响使用,期待能得到一套开发板,自己动手来做。
回复

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-5-6 18:04 , Processed in 0.114461 second(s), 45 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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