一、项目简介
本项目基于AI8051U-34K64-LQFP48,使用嘉立创EDA专业版进行设计并开源,源工程开源链接参考链接(立创开源硬件平台:https://oshwhub.com/l64481000/ai8051ucutecard),板载SD-Card接口(SPI),1.14寸LCD(SPI),HC-06/07(UART),P0口引出8枚LED用作实验状态显示,I2C相关总线传感器模块x2,等,I/O利用率高。另,板载STC8H2K12U/Ai8H2K12U,分配一组UART验证串口通用型芯片(USB转TTL)。
二、图示

三、资源分布

四、例程
本项目一个基础的用途是验证和学习AI8051U-34K64-QFP48,IO口和外设利用率较高,以学习为目的,将以一个demo案例为核心,多个功能进行单集拆解的方式,将各部分外设或功能进行学习经验的分析。系列分享最后以多文件编译的概念,讲述了如何更好维护和开发一个易于学习和管理的,高内聚低耦合的嵌入式项目样例。(bilibili:https://www.bilibili.com/list/1762086?sid=4521635&desc=1)
经验分享例程列表:
- 00_LED
- 01_INT0
- 02_UART1
- 03_UART4
- 04_SPI_UART1
- 05_LCD
- 06_PWM
- 07_I2C
- 08_dualC
- 09_demo
五、资料分享
分享中的所有资料文档,均在下方可以下载。其中必要说明:
【1、文件资料】:文件资料建议在官方渠道下载最新版本的软硬件资料,以方便使用最新的技术,降低调试或学习难度。本zip仅是录制分享视频时所使用的相关数据手册以及当时下载的软件工具包和官方例程包。
【2、硬件资料】:硬件资料是提供于参考和拓展的相关资料,包括模块/元器件的相关数据手册或说明。推荐自行按照适配教学自行收集,培养项目工程文件夹的好习惯。
【3、例程代码】:例程代码是基于AI8051U-34K64-QFP48的,适配AI8051UCuteCard。如若需要他用,需要注意引脚是否与代码中兼容,如若不兼容,需要自行按照视频分享的那样适配对应的外设或者引脚。
六、原理图分析
为了方便论坛学习,在本章节中进行硬件原理拆解:
(1)核心,在核心这里可以查看到大部分的资源分布,优先使用硬件外设接口(如SPI,使用硬件SPI支持的引脚接口)。

(2)USB下载按键,使P32接地,在P32低电平时,重新给MCU上电,可以进入USB下载模式;在其他阶段,P32可以作为用户按键使用,比如INT0,也可以作为单独的IO输入检测。

(3)复位外设的按键,P47,P47可以复用为硬件复位,除此外也可以当作用户按键使用。

(4)低速时钟,32.768kHz的低速外部时钟源。AI8051U内置了高精度的内部时钟源,当且仅当使用RTC时,推荐优先使用外部低速时钟源,其他情况下,其他时钟源尽量使用内置高精度时钟源。

(5)P0口的低电平驱动(低电平电量)LED电路。

(6)蜂鸣器电路,注意限流,注意使用反向二极管可以优化感性元件的逆反电流。

(7)挂载在同一个IIC总线上的两个外部模块(绝压传感器模块&温湿度传感器模块)。

(8)挂载在硬件QSPI或SPI兼容引脚上的外部FLASH模块。

(9)挂载在硬件SPI上的SD卡插座。

(10)1.14寸TFT焊接式屏幕驱动电路部分(含背光控制,低电平使能背光)。

(11)+5V0 降压至 +3V3 的 LDO电路,使用带使能引脚的SOT-23-5封装。注意这里有一个电源使能控制按键,配合P32按键可以完成USB下载。

(12)透传蓝牙模块,使用HC-06/07/08,BT2.0透传。

(13)RGB三色灯,可以使用PWM驱动,可以使用IO低电平驱动。

(14)TYPE-C 2,是直通USB内部外设的(P30_D-/P31_D+)。

(15)TYPE-C 1,使用基于AI8H2K12U / STC8H2K12U 搭建TTL-USB电路,注意如果是早期STC前缀的版本,需要使用官方AIapp-ISP-v6.95A.exe工具进行新固件更新或者制作。具体方法参考适配中关于UART1章节的知识分享。(另:官方已开源了该代码TTL-USB / TTL-2USB,推荐使用该电路搭建TTL-USB桥)

七、复刻说明
(1)制作时,由于此处过于极限,复刻建议将该焊接焊盘往箭头方向稍作移动,以防止屏幕FPCB排线过于紧绷。

(2)注意SD卡插座高度,建议使用较高底的器件(立创商城编号:C5310495),以防止与下方外部FLASH高度冲突。

八、开源说明
本开源遵循开源协议CC BY-NC-SA 4.0
九、结语
感谢AI8051U-34K64-QFP48官方给予的硬件支持,感谢立创开源平台,感谢大家一路给予的各种建议。本项目初衷是降低嵌入式开发门槛,因此一些较为深入的概念和硬件说明浅出了。如果大家希望可以深入学习AI8051U,推荐学习官方的学习视频和例程。最后,希望大家都可以在本项目中收获自己需要的东西,谢谢大家了~
附件:1、文件资料.zip
附件:2、硬件资料.zip
附件:3、例程代码.zip