【AI8051U】第一节-创建工程与点灯

学习目标:

例如:

  • 配置环境
  • 创建一个新的工程
  • 了解IO口的模式
  • 点灯3件套(亮-闪-流)

软件安装

  • 通过keil官网、STC官网下载安装包

  • 通过安装包下载KeilC251(来源于国芯论坛)

  • 下载完长这样

    解压完长这样
    请添加图片描述

  • 0XFD补丁(这个装不装都行,需要分别复制到C51/C251文件夹下的BIN目录中再执行)。

  • Keil的C代码中断号要运行,上面有拓展插件使用说明。

  • 下载完-右键-以管理员身份打开
    在这里插入图片描述

  • 记得先关闭杀毒软件之类的安全软件。
    在这里插入图片描述
    获得许可后就可以开启你的安全软件了。

  • 下载最新版的STC-ISP烧录软件
    在这里插入图片描述

配置环境

  • 打开ISP软件,按照以下操作:
    我用的是AI8051U最小系统板
    在这里插入图片描述
    先摁住P3_2的按键
    在这里插入图片描述
    再接上C头的数据线
    在这里插入图片描述
    松手,后芯片型号的串口就自动识别到了
    在这里插入图片描述
  • 准备配置<AI8051U.h>头文件
    在这里插入图片描述
    将型号头文件下载到,C251的文件夹中:
    在这里插入图片描述
    如果将头文件下载到原先的C51中也能生成AI8051U头文件,但是是8位的AI8051U头文件;下载到C251中生成的是32位的AI8051U头文件。

新建一个工程

  • 打开C251,新建工程
    在这里插入图片描述
    在这里插入图片描述
    建立一个.C文件,这里命名为main,添加。
    在这里插入图片描述
    在这里插入图片描述
  • 0报错0警告说明环境配置和头文件已经添加成功了
    在这里插入图片描述

了解IO口模式

  • 根据数据手册:可知有4种IO口工作模式
    芯片默认的IO口模式为高阻输入模式
    准双向口就是弱上拉模式
    在这里插入图片描述简单说就是P2M0 = 0X00;P2M1 = 0x00;就可以把P2的8个IO口都配置成准双向口(弱上拉模式)。接着就可以给IO口置高低电平进行电灯。

点亮一个LED灯

#include <AI8051U.H>

void main ()
{
	P2M0 = 0X00;
	P2M1 = 0x00;
	while(1)
	{
		P20 = 0;
	}
}

在这里插入图片描述

LED灯闪烁

  • 通过ISP软件生成延时函数代码
    在这里插入图片描述
    还需增加如下头文件:
    在这里插入图片描述
#include <AI8051U.H>
#include <intrins.h>
void Delay500ms(void)	//@11.0592MHz
{
	unsigned long edata i;

	_nop_();
	_nop_();
	i = 1382398UL;
	while (i) i--;
}


void main ()
{
	P2M0 = 0X00;
	P2M1 = 0x00;
	while(1)
	{
		P20 = 0;
		Delay500ms();
		P20 = 1;
		Delay500ms();
	}
}

即可完成LED的闪烁

LED流水灯

  • 这里可以将Delay换快一点
#include <AI8051U.H>
#include <intrins.h>
void Delay200ms(void)	//@11.0592MHz
{
	unsigned long edata i;

	_nop_();
	_nop_();
	i = 552958UL;
	while (i) i--;
}

void main ()
{
	P2M0 = 0X00;
	P2M1 = 0x00;
	while(1)
	{
		P20 = 0;
		Delay200ms();
		P21 = 0;
		Delay200ms();
		P22 = 0;
		Delay200ms();
		P23 = 0;
		Delay200ms();
		P24 = 0;
		Delay200ms();
		P25 = 0;
		Delay200ms();
		P26 = 0;
		Delay200ms();
		P27 = 0;
		Delay200ms();
		P2 = 0xFF;
	}
}

流水灯就完成啦。

学习总结

成功点灯,开启AI8051U的奇幻之旅!


### AI8051单片机调试方法和工具 对于希望在8051单片机上实现并调试AI应用的情况,理解所使用的具体硬件平台及其特性至关重要。由于8051架构相对较为古老且处理能力有限,在其上面直接运行复杂的现代人工智能模型存在较大挑战。 #### 选择适合的开发环境 针对8051单片机的应用开发,建议采用Keil µVision作为主要集成开发环境(IDE)[^1]。该软件提供了强大的编译器、链接器以及仿真功能,能够有效支持基于C语言或其他高级语言编写的小型嵌入式应用程序。 #### 使用简化的人工智能算法 考虑到8051处理器性能局限性,应该优先考虑那些计算复杂度较低、内存占用少的传统机器学习技术或轻量级神经网络结构。例如决策树分类器、K近邻(KNN)算法或是经过剪枝优化后的卷积神经网络(CNN)[^2]。 #### 利用外部存储扩展容量 当面临数据集过大无法全部加载至内部RAM的问题时,可通过SPI/IIC接口连接外置Flash芯片来增加可用储存空间。这有助于保存预训练好的参数表或者临时变量缓存区[^3]。 #### 实验板的选择 为了便于测试不同的传感器输入输出配置方案,推荐选用带有多种外围模块(如ADC/DAC转换通道、串口通信端子等)的一体化实验套件。这类产品往往已经预先安装好了必要的驱动库文件,可加速原型设计过程。 ```c // 示例代码片段展示如何初始化一个简单的定时中断服务函数用于周期采样 #include <reg52.h> void Timer_Init(void){ TMOD = 0x01; // 设置T0工作于模式1 (16位自动重装载) TH0 = (65536-500)/256; TL0 = (65536-500)%256; ET0 = 1; // 开启T0溢出中断使能 EA = 1; // 总中断允许 } void main(){ Timer_Init(); while(1){ // 主循环等待中断触发执行特定任务... } } ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值