当前位置: 首页 > news >正文

AiCube 试用 - 创建流水灯工程

AiCube 试用 - 创建流水灯工程

本文介绍了 Aiapp-ISP 仿真调试平台软件的 AiCube 工具,实现流水灯工程的快速创建的主要流程。

下载运行

下载 最新版 AIapp-ISP 软件;

解压并打开该软件,右侧操作界面选择并进入 Keil 仿真设置 标签项;

仿真设置

选择目标单片机型号 - 添加型号和头文件到 Keil - 选择 Keil 安装目录文件夹 - 确定,提示添加成功;

在这里插入图片描述

创建项目

菜单栏点击 AiCube 标签,进入 项目创建助手

在这里插入图片描述

参数配置

选择目标单片机型号 - 填写项目名称 - 设置保存路径 - 点击下一步,进入参数配置界面

在这里插入图片描述

左侧为功能参数选择窗口,展开 外设 选项,选择 端口,根据硬件勾选目标引脚(这里使用 P2 系列 IO 引脚);

此时右侧窗口出现相应的配置选项,通过下拉菜单即可实现模式设置;

生成工程

点击创建项目,此时查看目标路径发现 AiCube 工具创建的工程文件,包括 Keil 文件、库文件夹等标准工程格式;

在这里插入图片描述

双击打开生成的 Keil 文件,


// 文件名称: main.c
// 文件描述: 
// 文件版本: V1.0
// 修改记录:
//   1. (2025-04-03) 创建文件#include "config.h"                     //默认已包含stdio.h、intrins.h、ai_usb.h等头文件// 项目主函数
// 入口参数: 无
// 函数返回: 无void main(void)
{SYS_Init();while (1){}
}// 系统初始化函数
// 入口参数: 无
// 函数返回: 无void SYS_Init(void)
{EnableAccessXFR();                  //使能访问扩展XFRAccessCodeFastest();                //设置最快速度访问程序代码AccessIXramFastest();               //设置最快速度访问内部XDATAIAP_SetTimeBase();                  //设置IAP等待参数,产生1us时基P0M0 = 0x00; P0M1 = 0x00;           //初始化P0口为准双向口模式P1M0 = 0x00; P1M1 = 0x00;           //初始化P1口为准双向口模式P2M0 = 0x00; P2M1 = 0x00;           //初始化P2口为准双向口模式P3M0 = 0x00; P3M1 = 0x00;           //初始化P3口为准双向口模式P4M0 = 0x00; P4M1 = 0x00;           //初始化P4口为准双向口模式P5M0 = 0x00; P5M1 = 0x00;           //初始化P5口为准双向口模式P6M0 = 0x00; P6M1 = 0x00;           //初始化P6口为准双向口模式P7M0 = 0x00; P7M1 = 0x00;           //初始化P7口为准双向口模式CLK_Init();                         //时钟模块初始化PORT2_Init();                       //P2初始化
}// 毫秒延时函数
// 入口参数: ms (设置延时的毫秒值)
// 函数返回: 无void delay_ms(uint16_t ms)
{uint16_t i;do{i = MAIN_Fosc / 6000;while (--i);} while (--ms);
}// 时钟初始化函数
// 入口参数: 无
// 函数返回: 无void CLK_Init(void)
{CLK_SYSCLK_Divider(10);             //切换主时钟前先将系统时钟降频HIRC_40M();                         //选择内部预置的频率CLK_MCLK_HIRC();                    //选择内部高精度HIRC作为主时钟CLK_MCLK2_BYPASS();                 //旁路MCLK2,直接使用MCLK选择CLK_SYSCLK_Divider(1);              //设置系统时钟分频系数CLK_HSIOCK_MCLK();                  //选择MCLK主时钟作为高速外设时钟源CLK_HSIOCK_Divider(1);              //设置高速外设时钟预分频系数CLK_SPICLK_Divider(1);              //设置SPI时钟预分频系数CLK_I2SCLK_Divider(1);              //设置I2S时钟预分频系数CLK_PWMACLK_Divider(1);             //设置PWMA时钟预分频系数CLK_PWMBCLK_Divider(1);             //设置PWMB时钟预分频系数CLK_TFPUCLK_Divider(1);             //设置TFPU时钟预分频系数
}// P2口初始化函数
// 入口参数: 无
// 函数返回: 无void PORT2_Init(void)
{SetP2nQuasiMode(BIT_ALL);           //设置P2为准双向口模式DisableP2nPullUp(BIT_ALL);          //关闭P2内部上拉电阻DisableP2nPullDown(BIT_ALL);        //关闭P2内部下拉电阻DisableP2nSchmitt(BIT_ALL);         //使能P2施密特触发SetP2nSlewRateNormal(BIT_ALL);      //设置P2一般翻转速度SetP2nDrivingNormal(BIT_ALL);       //设置P2一般驱动能力SetP2nDigitalInput(BIT_ALL);        //使能P2数字信号输入功能
}

代码包含延时函数 delay_ms 、IO 口初始化和时钟配置函数。

这里可以编译一下工程,确保无误

在这里插入图片描述

编译后自动生成主函数调用的头文件。

代码修改

实现流水灯功能,需要添加如下关键代码

#define n 9
unsigned char code LED[n]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0xff}; // 定义 P2 组的输出电平
void main(void)
{SYS_Init();while (1){u8 i;for(i=0;i<n;i++){P2 = LED[i];delay_ms(100); // 调用已定义的延时函数}}
}

编译工程

修改代码并保存后,重新编译工程,确保无误。

点击魔术棒,选择 Output,检查是否勾选创建 HEX 文件选项(默认已勾选,好评)

在这里插入图片描述

固件烧录

生成的 HEX 烧录固件位于 Objects 文件夹下,

硬件连接单片机和电脑,可采用如下两种方式

  • USB转串口工具
  • 拉低 P32 并重新上电

Aiapp-ISP 软件选择目标芯片型号,设置串口,打开程序文件,选择CPU指令模式为 32-Bit ,IRC频率 40MHz (确保与 AiCube 设置的参数保持一致)

点击 下载/编程 按钮,待烧录结束,程序自动运行。

在这里插入图片描述

效果

流水灯,间隔 100 毫秒

在这里插入图片描述

开发板详见:Ai8051U - JLC

总结

本文介绍了 Aiapp-ISP 仿真调试平台软件的 AiCube 工具,实现快速工程创建和应用的主要流程,为 STC 系列单片机的快速开发和应用提供了参考。


http://www.mrgr.cn/news/96965.html

相关文章:

  • 运维之 Centos7 防火墙(CentOS 7 Firewall for Operations and Maintenance)
  • J1 ResNet-50算法实战与解析
  • 搜广推校招面经六十六
  • 运筹帷幄:制胜软件开发
  • 【Pandas】pandas DataFrame select_dtypes
  • 4.1-泛型编程深入指南
  • Ubuntu换Windows磁盘格式化指南
  • 使用Deployment运行无状态应用
  • 部署大模型实战:如何巧妙权衡效果、成本与延迟?
  • Apache httpclient okhttp
  • Git与SVN的区别以及各自的优势
  • Linux基础指令(一)
  • [C++面试] 智能指针面试点(重点)续4
  • Debian/Ubuntu的networking的`/etc/network/interfaces`配置文件,如何禁用ipv6的route路由网关?
  • 电子电气架构 --- 智能座舱域控设计
  • 电子电气架构 --- 域控制器和EE架构关系
  • Go语言学习(15)结构体标签与反射机制
  • WPS宏开发手册——Excel常用Api
  • 在win11 环境下 新安装 WSL ubuntu + 换国内镜像源 + ssh + 桌面环境 + Pyhton 环境 + vim 设置插件安装
  • 红日靶场一实操笔记