找回密码
 立即注册
查看: 101|回复: 5

Ai8051U视频入门

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2026-05-13 14:57:55
已绑定手机

1

主题

4

回帖

17

积分

新手上路

积分
17
发表于 2026-5-8 08:52:07 | 显示全部楼层 |阅读模式
简介
Ai8051U, USB型 1T 8051,支持32位和8位指令集,RMB2.3脚兼,容天王级别的:9C52RC, 12C5A60S2,兼容 8位8051指令集,可以用 Keil C51/IAR/SDCC 编译器相当于更强大的 8H8K64U,兼容 32位805指令集;可以用 Keil C251 编译器,双核兼容设计
相当于更强大的32G12K128,32G8K64,4K SRAM(2K edata, 2K data),64K-Flash,FPU@120MHz,硬件浮点/硬件三角函数 运算器,MA支持PWM,DMA支持外设直接到外设,P2P, 20MHz-PWM支持硬件移相,16位PWM; 真12位ADC SB,4组串口,12位ADC,轨到轨比较器。SPI, PI,12S, 12C, TFT-i8080/M6800 接口 DIP40, LQFP44,LQFP48。

8051U强在哪里?
1.屏幕显示和视频播放(flash编程器)。
2.IIS录放音。
3.   PWM_DMA STM32G用SPI+DMA,而Ai8051U为PWM+DMA,驱动能力更强,抗干扰能力更强。
4.频谱分析仪(上位机),快速分析频率的机器。
5.手写计算器,象征单片机向AI发展。
6.QSPI,PWM移相,硬件乘除,单精度浮点。
截图202605080850429517.jpg


截图202605080845213629.jpg
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:310
  • 最近打卡:2026-05-29 10:21:01

16

主题

799

回帖

3833

积分

超级版主

积分
3833
发表于 2026-5-8 14:11:53 | 显示全部楼层
要 做到 USB不停电下载
要 尝试 AiCube 图形化自动配置生成程序工具
推荐优先看的:  
printf_usb("Hello World !\r\n")
USB不停电下载, 演示视频链接:
https://www.stcaimcu.com/thread-19077-1-1.html

下载 最新的 AiCube-ISP-V6.96V-plus 或以上版本软件 !

深圳国芯人工智能有限公司-工具软件

下载 最新的 USB库函数,永远用最新的 USB库函数 !
深圳国芯人工智能有限公司-库函数
下载 最新的 用户手册 !
下载 最新的 上机实践指导书 !

下载 最新的 Ai8051U 用户手册
https://www.stcaimcu.com/data/download/Datasheet/AI8051U.pdf

下载 最新的 Ai8051U 实验指导书,
AiCube 图形化自动配置生成程序工具使用说明
https://www.stcaimcu.com/data/do ... %AF%BC%E4%B9%A6.pdf

推荐优先看的 printf_usb("Hello World !\r\n")及usb不停电下载, 演示视频链接



回复

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2026-05-13 14:57:55
已绑定手机

1

主题

4

回帖

17

积分

新手上路

积分
17
发表于 2026-5-13 14:57:55 | 显示全部楼层
第二节课我们对Ai8051的实验箱硬件进行了了解,同时学习如何下载与应用keil软件。
以下是硬件试验箱的正面及反面截图。

屏幕截图 2026-05-08 113005.png
屏幕截图 2026-05-08 113200.png
这是一款AI8051U 32位车规级8051实验箱:
正面:含8路流水灯、8位数码管、TFT彩屏、OLED接口、矩阵键盘、ADC按键、红外收发、音频接口、TF卡、多USB接口、电源/复位按键及掉电检测模块,提供基础IO、显示、通信等实验功能。
背面:搭载24C02 EEPROM、DS18B20温度传感器、TLV320AIC23B音频编解码器、USB转双串口芯片、32768Hz晶振、无源蜂鸣器,支持存储、温度采集、音频处理、串口通信等进阶实验,预留QSPI Flash、外部SRAM扩展接口。

学习完硬件之后,我们开始下载keil软件。
屏幕截图 2026-05-08 113805.png
下载成功后,我们简单应用一下 keil软件,走了一个跑马灯程序就结束了。
屏幕截图 2026-05-09 105148.png
IMG20260511084419.jpg














回复

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2026-05-13 14:57:55
已绑定手机

1

主题

4

回帖

17

积分

新手上路

积分
17
发表于 2026-5-13 15:05:46 | 显示全部楼层
我们第三节课简单学习了如何点亮第一颗LED。

3.1.png
我们学习了基础代码之后,通过增加一些端口,就能够点亮更多小灯。
下面是能够点亮八颗小灯的代码:

#include"ai8051u.h"                                //调用头文件

void main(void)       
{
        P0M0=0;
        P0M1=0;

        P4M0=0;
        P4M1=0;       

        while(1)                                       
        {
        P40=0;
        P00=0;
               
        P01=0;
        P02=0;       
        P03=0;                                                       
        P04=0;
        P05=0;                                                       
        P06=0;
        P07=0;                                                               
        }
}

回复

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2026-05-13 14:57:55
已绑定手机

1

主题

4

回帖

17

积分

新手上路

积分
17
发表于 2026-5-13 15:22:25 | 显示全部楼层
第四节课我们学习了USB不停电下载。

在之前的课程中,我们每次把代码下载到实验箱中都需要重新开启单片机,有些麻烦。
所以我们将USB-HID改为USB-CDC,并把自定义命令全部点上,这样我们就可以实现USB不停电下载了。
444.png
然后我们将代码下载到单片机上,不用按P32键就能成功。
4.2.png
4.4.jpg

回复

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2026-05-13 14:57:55
已绑定手机

1

主题

4

回帖

17

积分

新手上路

积分
17
发表于 2026-5-13 17:30:50 | 显示全部楼层
第五节课我们学习了C语言基础。
摘要
1. C语言 USB-CDC串口之printf函数的实现
2. 数的进制:2进制、10进制、16进制
3. 数据的基本类型
4. C语言常用运算符
一. C语言 USB-CDC串口之printf函数的实现
1. 打开USB库中的PRINTF_HID宏定义。2. 理解PRINTF的函数原型的定义。参数fmt -- 是格式控制字符串,包含了两种类型的对象:普通字符和转换说明。普通字符:在输出时,普通字符将原样不动地复制到标准输出。printf("8051U深度入门到32位51大型实战视频\r\n");转换说明:不直接输出,用于控制 printf 中参数的转换和打印。每个转换说明都由一个百分号字符(%)开始,以转换说明符结束,从而说明输出数据的类型、宽度、精度等。二.数的进制:2进制、10进制、16进制
5.2 进制.png
三. 数据的基本类型
5.4 数据的基本类型.png
四. C语言常用运算符
5.5 常用运算符.png
同时,我们也通过写代码加深理解。
5.6 X%Y.png
5.7  条件为真.png
5.9条件为假.png
#include"ai8051u.h"
#include"stc32_stc8_usb.h"
#define u8 unsigned char
#define u16 unsigned int       
u8 X = 20;
u8 Y = 0;
char *USER_DEVICEDESC = NULL;
char *USER_PRODUCTDESC = NULL;
extern char *USER_STCISPCMD;

void main(void)
{
    P_SW2 |= 0x80;

    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;

    usb_init();
    IE2 |=0x80;
    EA = 1;

    while (DeviceState != DEVSTATE_CONFIGURED);

    while(1)
    {      
        if(bUsbOutReady)
        {
                       
                        if(X&&Y)
                        {
                        printf("条件为真");
                        }
                        else
                        {
                        printf("条件为假");
                        }

           // USB_SendData(UsbOutBuffer,OutNumber);
                        //printf("X/Y = %u \r\n",(u16)X/Y);
                        //printf("X%%Y = %u \r\n",(u16)X%Y);
            usb_OUT_done();
        }
    }
}

回复

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2026-5-30 04:44 , Processed in 0.115716 second(s), 63 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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