找回密码
 立即注册
楼主: xionger

8051U学习打卡

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:2
  • 最近打卡:2025-08-07 10:55:38

4

主题

0

回帖

20

积分

新手上路

积分
20
发表于 4 天前 | 显示全部楼层

Ai8051U教学视频 USB不断电下载

本视频教会USB编译需要的库及需要源码的地方。学习容易。
回复 支持 反对

使用道具 举报 送花

3

主题

2077

回帖

1002

积分

等待验证会员

积分
1002
发表于 4 天前 | 显示全部楼层
尊敬的用户:

感谢您对国芯人工智能(GOCHEM AI)的关注与支持。关于您提到的“AI8051U教学视频”及“USB不断电下载”的相关内容,我们在此进行专业说明与补充。

AI8051U是基于8051架构的嵌入式微控制器,常用于教学、开发和工业控制等场景。其支持通过USB接口进行程序下载与调试,这一功能在教学过程中具有重要意义,能够提升学习效率与操作便捷性。

在使用USB进行程序下载时,通常需要安装相应的驱动程序与开发环境。例如,在Windows系统下,可能需要安装CH340、CP210x等USB转串口芯片的驱动,以确保设备能够被正确识别。此外,开发工具如Keil uVision、IAR Embedded Workbench或国产开发平台如GD32 MCU Studio等,均需配置正确的库文件与编译选项,以实现代码的正常编译与下载。

针对“USB不断电下载”的需求,建议在开发过程中保持USB连接稳定,避免因断电导致程序丢失或烧录失败。同时,可考虑使用带有电源管理功能的开发板,或在开发环境中设置自动保存与备份机制,以提高开发过程的可靠性。

国芯人工智能致力于提供高效、稳定的嵌入式开发解决方案,涵盖从硬件设计到软件开发的全链条技术支持。若您在使用AI8051U或其他嵌入式平台时遇到技术问题,欢迎随时联系我们的技术支持团队,我们将竭诚为您服务。

感谢您的关注,祝您学习顺利,开发愉快!

国芯人工智能 技术支持部  
2025年4月

[本文内容由国芯人工智能辅助生成,仅供参考]
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民II
  • 打卡总天数:97
  • 最近打卡:2025-08-11 12:43:16

5

主题

5

回帖

115

积分

注册会员

积分
115
发表于 3 天前 | 显示全部楼层

8051U学习打卡第三天:USB不停电烧录学习笔记

1.USB不停电烧录

1.1 AiCube生成不停电烧录最小代码(可直接查看规格书教程)

​\qquad 8051U内部自带高速晶振,并且系统时钟使用的晶振频率是根据 AiCube软件烧录 时选择的频率为准!!!如下图1所示,所以在进行项目配置时除非特殊情况,否则可以无需配置CLK项目,如下图2所示,全部是灰色

image.png

图1 系统运行时工作频率

image-1.png

图2 CLK配置界面

​\qquad 由于需要使用USB不停电烧录,所以需要使能USB外设,如下图3所示,其中USB协议推荐使用CDC而不是HID协议,虽然两者就是串口并且都可以进行USB不停电 烧录,但是CDC对比HID而言带宽高,支持大数据包传输,灵活性强,更适合进行程序的烧录;同时ISP下载命令可以自定义,不过这里如果自定义之后一定要记住!!!否则后面还是不能进行不停电烧录

image-2.png

图3 USB配置界面

​\qquad 完成以上配置之后既可生成代码,如果需要其他功能可自行添加,这里我就使用第一堂课的LED点灯!!!

1.2 AiCube不停电烧录配置

​\qquad 首先第一步就是要确保单片机进入烧录模式,并且电脑的串口链接到了单片机如下图4第一步;
​\qquad 第二步就是进入Aicube的“收到用户命令后复位到ISP监控程序区”,根据配置工程的USB进行配置,配置时选择的是CDC协议就选择CDC,配置时是HID就选择HID;同时需要根据配置项目时的下载命令更改此处的自定义命令,如果使用默认就直接默认烧录就行,如下图4第二步。同时由于8051U串口默认识别成HID设备和需要不停电烧录,所以也需要√上剩下两个命令!!!

image-3.png

图4 AiCube不停电烧录配置

2.生成的系统初始化代码简单说明

EnableAccessXFR();                  //使能访问扩展XFR
AccessCodeFastest();                //设置最快速度访问程序代码
AccessIXramFastest();               //设置最快速度访问内部XDATA
IAP_SetTimeBase();                  //设置IAP等待参数,产生1us时基

​\qquad 这些就不进行说明了,同第一天学习里面的初始化,代码生成时也给出来简单注释,所有寄存器都可以在规格书找到

USBLIB_Init()                      //USB库初始化
{
    usb_init();                         //初始化USB模块
    USB_SetIntPriority(0);              //设置中断为最低优先级
    set_usb_ispcmd("@STCISP#");         //设置USB不停电下载命令
}

​\qquad 此处的USBLIB_Init();函数是对USB进行初始化,使得支持USB不停电烧录,里面的函数只有这几个,

  1. 首先是usb_init();函数,这个函数在stc_usb_cdc_32g.lib文件里面,暂时还没有学到,等到了USB_CDC章节再做笔记;
  2. USB_SetIntPriority(0);备注说明了是根据形参设置中断优先级的函数;
  3. set_usb_ispcmd("@STCISP#");这里面的参数就是配置自定义下载命令的命令,即使生成完成项目之后,依然可以回到Aicube或者直接在工程里面更改不停电烧录命令,同时也需要在Aicube烧录配置那里同时更改。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民II
  • 打卡总天数:97
  • 最近打卡:2025-08-11 12:43:16

5

主题

5

回帖

115

积分

注册会员

积分
115
发表于 昨天 01:12 | 显示全部楼层

8051U学习打卡第四天:GPIO_INPUT and OUTPUT
昨天忙完了,今天弄完了都转钟了liulei liulei
说明:以后的实验均通过 AiCube生成代码 !!!

1.8051U的GPIO说明

1.1模式说明

\qquad 如下图1所示,8051U的GPIO一共有四种模式,分别是准双向、推挽输出、高阻输入、开漏;
一般使用最多的就是准双向和推挽输出,除非特别情况,否则一般准双向既可!!!具体的结构图可以看规格书

image.png

图1 IO口工作模式

1.2 施密特触发电气说明

\qquad 如下图2所示,此处我使用的VDD是3.3V,还有一个5V版本,施密特触发对IO引脚输入时差别不大,所谓施密特触发简单来说就是限制了一个触发范围,只有在范围之外的电压才能影响电平的状态,如图所示,VIL1和VIH1在打开施密特触发时的电平范围为0.99V~1.18V,中间有接近0.19V的电压误差范围,而没有打开施密特触发的只有0.02V的电压误差,这就可能导致当电压产生细微波动时电平状态会出现翻转
\qquad 如输入电平正常情况为1.5V,这种情况8051U认为是高电平1,但是电压不会一直这么稳定,会出现上下波动的情况,而打开施密特触发之后允许的误差范围更大,在没有突破VIL1的最大值时会稳定读取到高电平,使得引脚的读取也会更加稳定。

image-1.png

图2 IO口施密特触发电气说明

2.IO口的读取和输出实验

\qquad 由于擎天柱出厂的时候只搭配了2个按键和7个LED灯光,所以就使用这2个按键进行IO读取,7个LED进行功能演示;
实验效果说明:

  1. P32按键负责切换LED显示模式,P33负责翻转LED效果;

  2. 所有IO引脚均配置成为准双向IO;
    实验视频效果如下

回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-8-11 12:59 , Processed in 0.115125 second(s), 71 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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