ugkelutr 发表于 2025-2-17 21:01:27

学习《Ai8051U教学视频》打卡笔记分享

【哪怕梦想让我们拼的遍体鳞伤,这一次我们也要勇往直前!】
                                                                           ----冲哥
                                                                                                               

ugkelutr 发表于 2025-2-17 21:01:39

《Note_01. 序言》


static/image/hrline/1.gif



   本节知识点

         AI8051U是深圳国芯人工智能有限公司出品的新一代MCU,相对上一代STC32G的MCU功能上增强以下几点。


    1、屏幕显示和视频播放(Flash编程器)
    2、IIS录放音
    3、PWM_DMA
    4、频谱分析仪(上位机)
    5、手写计算器
    6、QSPI、PWM移相、硬件乘除、单精度浮点
    7、AI8051U简介



static/image/hrline/1.gif



一、屏幕显示和视频播放


   

   

   功能演示1
   屏幕高帧率刷新,支持中英文字符、图片、屏幕旋转显示,采用8080的八位并口。可以简单的制作图形UI界面。





static/image/hrline/1.gif



二、IIS录放音

   
   

   

   功能演示2
   强大的IIS录放音功能,使用51单片机也能实现制作录放音模块!



static/image/hrline/1.gif



三、PWM_DMA


   
   



   功能演示3
   相比上一代STC32G需要用SPI+DMA去实现,但AI8051U可以直接用PWM+DMA,可以控制显示1000多颗2812的灯,而且不会有干扰。






static/image/hrline/1.gif



四、频谱分析仪(上位机)


   
      


   功能演示2
   使用IIS录音,AI88051U自身强大的运算速度,快速FFT数据刷新得以完美呈现频谱分析仪。






static/image/hrline/1.gif



五、手写计算器


   
      


   功能演示5
   




static/image/hrline/1.gif



六、Flashi编程器


   
   

   功能演示6





static/image/hrline/1.gif



七、AI8051U 简介


   

      总结:
            AI8051U 单片机真TMD强悍-多指令集,超多兼容。迫不及待想拥有它!!!

ugkelutr 发表于 2025-2-17 21:02:03

《Note_02. 硬件及工具介绍》


https://www.stcaimcu.com/static/image/hrline/1.gif



   本节知识点

         1.AI8051U实验箱的硬件开箱介绍。
      2.软件安装



https://www.stcaimcu.com/static/image/hrline/1.gif


一、硬件介绍
   

   实验箱组成:
                   1.透明收纳盒
                   2.PCBA主板
                   3.USB数据线
                   4.短接帽


      
      



   主板硬件介绍:


   

   主板正面:
      1.USB_TypeA 接口
      2.USB_Link_1D 接口
      3.USB_TypeC 接口
      4.USB转双串口
      5.TF卡插口
      6.BNC示波器输入口
      7.立体声耳机输出
      8.立体声线路输出
      9.录音话筒
      10.OLED显示屏 SPI/I2C 8/7线接口
      11.8路流水灯
      12.8位数码管
      13.TFT彩屏双排接口
      14.掉电检测电压可调电阻
      15.红外接收
      16.红外发射
      17.矩阵键盘
      18.AI8051U 主芯片
      19.ADC键盘
      20.T0、T1按键
      21.INT0、INT1按键
      22.复位按键
      23.电源按键(按下断电)
      24.QSPI/SPI/Flash 芯片
      25.外部并行总线扩展32KSRAM
      26.LCD对比度调节
      27.RTC电池座





   主板背面:
      1.32768Hz 无源晶振
      2.24C02 EEPROM 数据存储芯片
      3.BS18B20温度传感器
      4.32768Hz 无源晶振
      5.无源蜂鸣器
      6.SP3485芯片
      7.AI8H2K12U_USB转双串口芯片
      8.TP2604S芯片
      9.74HC4051、TP264S芯片
      10.LMV358芯片
      11.TLV320AIC23B/I2S/DAC






static/image/hrline/1.gif




二、软件和工具

       1.Keil编程软件https://www.keil.com/download/
       2.ISP烧录软件 https://www.stcai.com/gjrj
       3.添加单片机头文件 https://www.stcai.com/gjrj
       4.下载安装中断拓展插件 https://www.stcai.com/gjrj
       5.下载代码包和手册 https://www.stcai.com/gjrj








ugkelutr 发表于 2025-2-17 21:02:28

《Note_03. 点亮第一颗LED》


https://www.stcaimcu.com/static/image/hrline/1.gif



   本节知识点

         1.编写点亮LED灯代码



https://www.stcaimcu.com/static/image/hrline/1.gif










一、新建工程
          1.创建新工程
            2.新建文件
          详细的操作步骤参考官方AI8051U说明手册:https://www.stcaimcu.com/data/download/Datasheet/AI8051U.pdf



二、代码编写
         
         1、代码基本框架
      
#include"ai8051u.h"// 引入头文件


    void main (void) //程序入口函数
    {
      while(1)
      {
         //循环
      }   
    }      



      2. #include 代表引入程序用的函数头文件,<> 双尖括号指的的是引入操作系统目录的头文件,""双引号 指的是引入程序项目的下的自定义头文件。
      3.// 向左双斜杠表示程序注释,双斜杠右边写的内容在编译代码时被编译器忽略,建议保持写注释的习惯。方便阅读理解和记忆。
      4. main() 函数,这个函数是整个程序的运行入口。是必须的!。
      5.每个代码语句结束后必须加上分号 ;   。


三、点亮第一个LED代码

#include"ai8051u.h"
void main (void)
{
P0M0 = 0x00;
P0M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;

P40 = 0;

while(1)
{
    P00 = 0;
}
}

示例代码电路演示



四、点亮LED的原理




1.配置GPIO口


ugkelutr 发表于 2025-2-17 21:02:41

《Note_04. USB不停电下载程序》

https://www.stcaimcu.com/static/image/hrline/1.gif



   本节知识点

         1.实验对比演示
         2.下载所需文件(STC官网->软件工具->函数库->USB库文件)
         3.移植关键部分都工程
         4.添加头文件
         5.USB初始化函数(lib+.h头文件实现)
         6.命令参数
         7.打开P_SW2寄存器和IE2寄存器(只打开一个位)
      下载地址:https://www.stcai.com/khs


https://www.stcaimcu.com/static/image/hrline/1.gif







示例代码

#include“ai8051u.h”
#include“stc32_stc8_usb.h”

char *USER_DEVICEDESC = NULL;
char *USER_PRODUCTDESC = NULL;
char *USER_STCISPCMD = "@STCISP#";

void main(void)
{
   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;

   usb_init();//USB CDC 接口设置初始化

   IE2 |= 0x80; //使能USB中断
   EA = 1;// IE |= 0x80

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

   while(1)
   {

      if(bUsbOtuReady)
      {
            USB_SendData(bUsbOtuReady,OutNumber);//发送数据缓冲区,接收的数据原样返回测试
      }

      P40 = 0;//P40端口输出0V
      P00 = 1;//P00端口输出0V

    }
}




ugkelutr 发表于 2025-2-17 21:02:53

《Note_05. C语言基础》



https://www.stcaimcu.com/static/image/hrline/1.gif



   本节知识点

         1.C语言USB-CDC串口之printf 函数的实现
         2.数的进制:二进制、十进制、十六进制
         3.数据的长度类型
         4.C语言常用运算符



https://www.stcaimcu.com/static/image/hrline/1.gif









一、C语言USB-CDC串口实现printf函数功能

      1.打开USB库,找到的PRINTF_HID宏定义,把这行代码前面的双斜杠“//”去掉。
      2.理解PRINTF的函数原型定义
         #define printf printf_hid ;
          int printf_hid(const char *fmt,...);





         3.类型转换说明




      4. printf 里面的特殊转义字符





       5.ASCLL字符对照表









static/image/hrline/1.gif





二、数的进制:二进制、十进制、十六进制

      1. 进制对照表


         





static/image/hrline/1.gif



三、数据的基本类型








static/image/hrline/1.gif




四、C语言常用的运算符

          1. 算术运算符




          2. 关系运算符




          3. 逻辑运算和赋值运算




         4.位运算


ugkelutr 发表于 2025-2-17 21:03:12

《Note_06. I/O输入输出》

https://www.stcaimcu.com/static/image/hrline/1.gif



   本节知识点

         1.什么是GPIO
         2.按键输入检测
         3.课后小练习


https://www.stcaimcu.com/static/image/hrline/1.gif








一、什么是GPIO


      1.GPIO(General Purpose I/O Ports) 意思为通用的输入/输出端口。就是MCU上的一些引脚,通过引脚输出高低电平,或者读取引脚上的高低电平状态。

      

         2.GPIO的四种模式,无特殊用途时,推荐配置准双向口模式

         

         3. GPIO 直流特性

         



static/image/hrline/1.gif



二、按键输入检测

   
   1.代码实现眼里:程序直接读取按键的IO电平。



1






ugkelutr 发表于 2025-2-17 21:03:36

《Note_07. 定时器中断》


https://www.stcaimcu.com/static/image/hrline/1.gif



   本节知识点

         1.定时器的介绍
         2.定时器的应用
         3.函数的定义,调用

         

https://www.stcaimcu.com/static/image/hrline/1.gif




一、定时器的介绍

         



二、定时器的应用


      


三、定时器函数的定义和调用

         

         定时器函数的定义必须写在main() 函数之前,否则在main函数内使用的是无效的。
         如果定时器函数定义在了main函数之后,那么在main函数之前调用一下定时器函数即可


         






ugkelutr 发表于 2025-2-17 21:05:00

先占楼,稍后分享笔记...........

8H8K64U 发表于 2025-2-27 10:21:41

已符合送试验箱标准,安排一套试验箱望楼主再接再厉,继续学习打卡到15集,打卡不是目的,学习到真知识才是硬道理
页: [1]
查看完整版本: 学习《Ai8051U教学视频》打卡笔记分享