cyranohsl 发表于 2026-1-5 23:40
请问一下,STC32G8K64是不是不能用AICUBE?
可以,选 STC32G12K128-LQFP64
神农鼎 发表于 2026-1-6 15:58
可以,选 STC32G12K128-LQFP64
谢谢分享!
l164908060 发表于 2025-12-6 21:01
建议直接做AI编程软件,导入硬件原理图,中文输入程序要求,直接实现完整代码 ...
不知道这个功能,能不能实现;如果可以,编程就简单了。
不错,好好学习一下。
V6.96O版本的AiCube(A);
存在问题:
使用上述版本的AiCube(A)生成的STC8H8K64U代码。
第一次生成,使用串口1,TIME2作为波特率发生器,与printf涵数关联 选择 是。
再次使用AiCube(A)修改时,与printf涵数关联 选择 否 后,
代码包中的uart.c中虽然去掉了putchar重定向涵数,但串口中断涵数中 发送部分,没有去掉 fPrintfBusy = 0; //清除printf发送忙标志 这个语句。
编译时会显示error C202: 'fPrintfBusy':undefined identifier。
AiCube-ISP-v6.96O,看这里的菜单文字,表达是否准确?
康辉55AA 发表于 2026-1-18 08:27
V6.96O版本的AiCube(A);
存在问题:
使用上述版本的AiCube(A)生成的STC8H8K64U代码。
由于您所反馈的代码处于用户代码标签中间
如下图:
在原项目的基础上,无论怎么修改配置
用户标签中间的代码都不会做任何修改,会原样贴到新代码中
简单明了
发现这个软件的STC89C52RC自动生成的串口函数有错误,和stc89_def.h头文件的定义不一致,
既然有这个型号那就应该修改过来,虽然这是很简单的一个单片机型号。
希望下个版本可以修正一下
这是修改后的:
////////////////////////////////////////
// 串口初始化函数
// 入口参数: 无
// 函数返回: 无
////////////////////////////////////////
void UART_Init(void)
{
#ifdef BAUDRATE
#undef BAUDRATE
#endif
#define BAUDRATE (115200)
#define T1_RELOAD (256 - (SYSCLK * (1 + EN6T) / BAUDRATE / 12 + 8) / 16)
UART1_Timer1BRT(); //选择定时器1作为串口波特率发生器
UART1_BaudrateX2(); //串口1波特率加倍
TIMER1_TimerMode(); //设置定时器1为定时模式
TIMER1_Mode2(); //设置定时器1为模式2 (8位自动重载模式)
TIMER1_SetReload8(T1_RELOAD); //设置定时器1的8位重载值
TIMER1_Run(); //定时器1开始运行
UART1_EnableRx(); //使能串口接收数据
UART1_Mode1(); //设置串口为模式1 (8位数据可变波特率)
UART1_SetIntPriority(2); //设置中断为较高优先级
UART1_EnableInt(); //使能串口中断
//<<AICUBE_USER_UART_INITIAL_BEGIN>>
// 在此添加用户初始化代码
//<<AICUBE_USER_UART_INITIAL_END>>
}
////////////////////////////////////////
// 串口中断服务程序
// 入口参数: 无
// 函数返回: 无
////////////////////////////////////////
void UART1_ISR(void) interrupt UART1_VECTOR
{
//<<AICUBE_USER_UART_ISR_CODE1_BEGIN>>
// 在此添加中断函数用户代码
if (UART1_CheckTxFlag()) //判断串口发送中断
{
UART1_ClearTxFlag(); //清除串口发送中断标志
}
if (UART1_CheckRxFlag()) //判断串口接收中断
{
UART1_ClearRxFlag(); //清除串口接收中断标志
}
//<<AICUBE_USER_UART_ISR_CODE1_END>>
}
//<<AICUBE_USER_FUNCTION_IMPLEMENT_BEGIN>>
// 在此添加用户函数实现代码
//<<AICUBE_USER_FUNCTION_IMPLEMENT_END>>
虹涛犹珷 发表于 2026-1-31 09:26
发现这个软件的STC89C52RC自动生成的串口函数有错误,和stc89_def.h头文件的定义不一致,既然有这个型号那 ...
确实有问题,感谢反馈