找回密码
 立即注册
查看: 2085|回复: 26

传统51开发板学习资料汇总,2025/15

[复制链接]
  • 打卡等级:以坛为家I
  • 打卡总天数:276
  • 最近打卡:2025-08-23 14:05:57
已绑定手机

80

主题

2983

回帖

6363

积分

荣誉版主

无情的代码机器

积分
6363
发表于 2025-7-6 22:54:21 | 显示全部楼层 |阅读模式
传统51开发板学习资料汇总下载:
===【下载资料的网址】见 图片上方网址
环境搭建:

【萌新指南】keil5安装指南(官方渠道方法下载并安装C251) - 仿真/编译器/汇编器/头文件 国芯技术交流网站 - AI32位8051交流社区

传统51开发板学习资料汇总:
B站江协教程资料-普中HC6800-ES V2.0开发板:
B站江协教程资料-普中HC6800-ES-V2.0开发板-V20250715.zip
普中3.0开发板资料:
普中3.0开发板资料-V20250715.zip
郭天祥开发板-TX-1C:
郭天祥开发板-TX-1C-V20250715.zip
金沙滩KST-51开发板配套资料:
金沙滩KST-51开发板配套资料-V20250715.zip

其它开发板原理图:
官方与第三方51单片机开发板原理图分享 | 资料备查 - SCH/PCB EDA设计技术交流区 国芯技术交流网站 - AI32位8051交流社区

51学完,进阶学习32位/8位模式都支持的 Ai8051U,有强大的 AI8051U-核心板,实验箱,【免费+包邮送】:
【Ai8051U】擎天柱核心板学习记录贴 | 已有部分开源程序发布 - 传统89C52单片机学习板,升级到强大的 Ai8051U,管脚兼容穿越到32位的性能,SDCC实战 国芯技术交流网站 - AI32位8051交流社区

截图202507161154333592.jpg
从STC最新版ISP及图形化程序自动生成工具软件,
AiCube-ISP V6.95Y 或更高版本软件的
资料下载 | 传统51开发板学习资料汇总】栏目

可以下载到这些资料

更多AiCube图形化应用链接如下:
程序自动生成, STC89C52RC系列各功能模块, AiCube-ISP V6.95Y, 7/7 - AiCube-ISP , 程序自动生成工具, 支持STC89/15/8H/32/AI8051U 国芯技术交流网站 - AI32位8051交流社区

最新ISP烧录软件, 从 www.STCAI.com 下载
图形化程序生成器 AiCube-ISP 及各种工具手册下载:
截图202507152130419825.jpg
深圳国芯人工智能有限公司-工具软件


三天不学习,赶不上刘少奇~
回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:161
  • 最近打卡:2025-08-23 08:11:44

775

主题

1万

回帖

1万

积分

管理员

积分
18735
发表于 2025-7-8 14:13:59 | 显示全部楼层
下载不成功如何解决

1,用最新版STC-ISP软件,现在是 AiCube-ISP-V6.95Y版或更高版本


截图202507122211235921.jpg

2,STC89C52RC 和 STC89C52RC不是同一个型号
STC89C52RC型号要如下点击芯片型号按钮后输入,而不是错误的STC89C52型号, 少 RC



截图202507081409142677.jpg

3,STC89系列单片机上电过程:


截图202507122215059690.jpg

5,ISP烧录,全自动-自动停电上电下载,手动上电下载,说明

截图202507122208256348.jpg

截图202507122209263184.jpg




回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:161
  • 最近打卡:2025-08-23 08:11:44

775

主题

1万

回帖

1万

积分

管理员

积分
18735
发表于 2025-7-14 20:59:31 | 显示全部楼层
使用 普中的实验箱,下载不成功的原因,及解决办法

1,永远用 最新的软件 AiCube-ISP-V6.95Y
截图202507142058332249.jpg
https://www.stcai.com/gjrj

2,下载最新的数据手册
截图202507142059298446.jpg

截图202507142102473822.jpg


截图202507142100438389.jpg

截图202507142101014358.jpg

截图202507142101209790.jpg

截图202507142101532592.jpg


3,可能要选择 STC89C52RC, 和 STC89C52 不是同一个型号
点击 下面的 【芯片型号】按钮,输入 STC89C52RC
截图202507142100227735.jpg

添加型号头文件到Keil
截图202507142128328704.jpg


截图202507142129163188.jpg



最新软件 AiCube-ISP-V6.95Y 支持图形化程序自动生成






回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:161
  • 最近打卡:2025-08-23 08:11:44

775

主题

1万

回帖

1万

积分

管理员

积分
18735
发表于 2025-7-14 21:09:44 | 显示全部楼层
最新软件 AiCube-ISP-V6.95Y 支持图形化程序自动生成

01,【图形化程序自动生成工具-AiCube】使用说明, 最新ISP软件AiCube-ISP-V6.95Y或以上版本
截图202507142109409408.jpg

1, STC89C52RC@AiCube-选择要自动配置生成程序的MCU型号STC89C52RC系列
截图202507142110407576.jpg

2, STC89C52RC@AiCube-设置KEIL编译器连接器的配置项, 用默认是最优
截图202507142111233701.jpg

3, STC89C52RC@AiCube-通知MCU的工作时钟频率,方便定时器串行口软件延时自动计算
截图202507142111456024.jpg

4, STC89C52RC@AiCube-配置外部中断0
截图202507142112039602.jpg

5, STC89C52RC@AiCube-配置外部中断0-1
截图202507142116021101.jpg

6, STC89C52RC@AiCube-配置外部中断0-1-2
截图202507142116444506.jpg

7, STC89C52RC@AiCube-配置外部中断0-1-2-3
截图202507142117186286.jpg

8, STC89C52RC@AiCube-配置定时器0-16位不自动重装载
截图202507142118314511.jpg

9, STC89C52RC@AiCube-配置定时器2-16位自动重装载
截图202507142119084755.jpg

10, STC89C52RC@AiCube-配置-串行口-定时器1做波特率发生器
截图202507142119429506.jpg

11, STC89C52RC@AiCube-点击那个播放的按键-是产生KEIL-C51项目
截图202507142120369213.jpg

12, STC89C52RC@AiCube-查看产生的KEIL-C51项目-外部中断0-1
截图202507142121256350.jpg

13, STC89C52RC@AiCube-查看产生的KEIL-C51项目-外部中断2-3
截图202507142122033416.jpg

14, STC89C52RC@AiCube-查看产生的KEIL-C51项目-定时器-T0
截图202507142123477975.jpg

15, STC89C52RC@AiCube-查看产生的KEIL-C51项目-定时器-T2
截图202507142124211999.jpg

16, STC89C52RC@AiCube-查看产生的KEIL-C51项目-串行口
截图202507142124541599.jpg

图形化程序自动生成, STC89C52RC@AiCube-ISP-V6.95Y, 20250711.zip

7.9 MB, 下载次数: 18

STC89C52RC@AiCube-TEST1.zip

46.93 KB, 下载次数: 11

回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:161
  • 最近打卡:2025-08-23 08:11:44

775

主题

1万

回帖

1万

积分

管理员

积分
18735
发表于 2025-7-14 21:34:29 | 显示全部楼层
//<<AICUBE_USER_HEADER_REMARK_BEGIN>>
////////////////////////////////////////
// 在此添加用户文件头说明信息  
// 文件名称: main.c
// 文件描述:
// 文件版本: V1.0
// 修改记录:
//   1. (2025-07-07) 创建文件
////////////////////////////////////////
//<<AICUBE_USER_HEADER_REMARK_END>>


#include "config.h" //默认已包含stdio.h、intrins.h、ai_usb.h等头文件


//<<AICUBE_USER_INCLUDE_BEGIN>>
// 在此添加用户头文件包含  
//<<AICUBE_USER_INCLUDE_END>>


//<<AICUBE_USER_GLOBAL_DEFINE_BEGIN>>
// 在此添加用户全局变量定义、用户宏定义以及函数声明  
//<<AICUBE_USER_GLOBAL_DEFINE_END>>


BOOL fPrintfBusy;


////////////////////////////////////////
// 项目主函数
// 入口参数: 无
// 函数返回: 无
////////////////////////////////////////
void main(void)
{
    //<<AICUBE_USER_MAIN_INITIAL_BEGIN>>
    // 在此添加用户主函数初始化代码  
    //<<AICUBE_USER_MAIN_INITIAL_END>>

    SYS_Init();

    //<<AICUBE_USER_MAIN_CODE_BEGIN>>
    // 在此添加主函数中运行一次的用户代码  
    printf("Hello World !\n");
    //<<AICUBE_USER_MAIN_CODE_END>>

    while (1)
    {
        //<<AICUBE_USER_MAIN_LOOP_BEGIN>>
        // 在此添加主函数中用户主循环代码  
        //<<AICUBE_USER_MAIN_LOOP_END>>
    }
}

////////////////////////////////////////
// 系统初始化函数
// 入口参数: 无
// 函数返回: 无
////////////////////////////////////////
void SYS_Init(void)
{
    CLK_Init();             //时钟模块初始化
    TIMER0_Init();          //定时器0初始化
    TIMER2_Init();          //定时器2初始化
    UART1_Init();           //串口1初始化
    EXTI0_Init();           //INT0初始化
    EXTI1_Init();           //INT1初始化
    EXTI2_Init();           //INT2初始化
    EXTI3_Init();           //INT3初始化

    //<<AICUBE_USER_INITIAL_CODE_BEGIN>>
    // 在此添加用户初始化代码  
    //<<AICUBE_USER_INITIAL_CODE_END>>

    EnableGlobalInt();      //使能全局中断
}

////////////////////////////////////////
// 微秒延时函数
// 入口参数: us (设置延时的微秒值)
// 函数返回: 无
////////////////////////////////////////
void delay_us(uint16_t us)
{
    us /= 16;
    while (us--)
    {
        NOP(18);
    }
}


////////////////////////////////////////
// 毫秒延时函数
// 入口参数: ms (设置延时的毫秒值)
// 函数返回: 无
////////////////////////////////////////
void delay_ms(uint16_t ms)
{
    uint16_t i;

    do
    {
        i = MAIN_Fosc * (1 + EN6T) / 96000;
        while (--i);
    } while (--ms);
}

////////////////////////////////////////
// 时钟初始化函数
// 入口参数: 无
// 函数返回: 无
////////////////////////////////////////
void CLK_Init(void)
{
    //<<AICUBE_USER_CLOCK_INITIAL_BEGIN>>
    // 在此添加用户初始化代码  
    //<<AICUBE_USER_CLOCK_INITIAL_END>>
}

////////////////////////////////////////
// 定时器0初始化函数
// 入口参数: 无
// 函数返回: 无
////////////////////////////////////////
void TIMER0_Init(void)
{
#define T0_RELOAD               (65536 - (float)SYSCLK * (1 + EN6T) / 12 * 2 / 1000)

    TIMER0_TimerMode();                 //设置定时器0为定时模式
    TIMER0_Mode1();                     //设置定时器0为模式1 (16位不自动重载模式)
    TIMER0_DisableGateINT0();           //禁止定时器0门控
    TIMER0_SetIntPriority(3);           //设置中断为最高优先级
    TIMER0_EnableInt();                 //使能定时器0中断
    TIMER0_SetReload16(T0_RELOAD);      //设置定时器0的16位重载值
    TIMER0_Run();                       //定时器0开始运行

    //<<AICUBE_USER_TIMER0_INITIAL_BEGIN>>
    // 在此添加用户初始化代码  
    //<<AICUBE_USER_TIMER0_INITIAL_END>>
}

////////////////////////////////////////
// 定时器2初始化函数
// 入口参数: 无
// 函数返回: 无
////////////////////////////////////////
void TIMER2_Init(void)
{
#define T2_RELOAD               (65536 - (float)SYSCLK * (1 + EN6T) / 12 * 5 / 1000)

    TIMER2_TimerMode();                 //设置定时器2为定时模式
    TIMER2_SetIntPriority(0);           //设置中断为最低优先级
    TIMER2_EnableInt();                 //使能定时器2中断
    TIMER2_SetReload16(T2_RELOAD);      //设置定时器2的16位重载值
    TIMER2_Run();                       //定时器2开始运行

    //<<AICUBE_USER_TIMER2_INITIAL_BEGIN>>
    // 在此添加用户初始化代码  
    //<<AICUBE_USER_TIMER2_INITIAL_END>>
}

////////////////////////////////////////
// 串口1初始化函数
// 入口参数: 无
// 函数返回: 无
////////////////////////////////////////
void UART1_Init(void)
{
#ifdef BAUDRATE
#undef BAUDRATE
#endif
#define BAUDRATE                (115200)
#define T1_RELOAD               (256 - (SYSCLK * (1 + EN6T) / BAUDRATE / 12 + 8) / 16)

    UART1_Timer1BRT();                  //选择定时器1作为串口1波特率发生器
    UART1_BaudrateX2();                 //串口1波特率加倍
    TIMER1_TimerMode();                 //设置定时器1为定时模式
    TIMER1_Mode2();                     //设置定时器1为模式2 (8位自动重载模式)
    TIMER1_SetReload8(T1_RELOAD);       //设置定时器1的8位重载值
    TIMER1_Run();                       //定时器1开始运行

    UART1_EnableRx();                   //使能串口1接收数据
    UART1_Mode1();                      //设置串口1为模式1 (8位数据可变波特率)
    UART1_SetIntPriority(0);            //设置中断为最低优先级
    UART1_EnableInt();                  //使能串口1中断

    fPrintfBusy = 0;                    //清除发送数据忙标志

    //<<AICUBE_USER_UART1_INITIAL_BEGIN>>
    // 在此添加用户初始化代码  
    //<<AICUBE_USER_UART1_INITIAL_END>>
}

////////////////////////////////////////
// 重写printf字符发送重定向函数
// 入口参数: dat (printf函数待打印的字符)
// 函数返回: 需要返回入口参数的数据
////////////////////////////////////////
char putchar (char dat)                 //将串口1和printf函数绑定
{
    while (fPrintfBusy);
    UART1_SendData(dat);
    fPrintfBusy = 1;

    return dat;
}

////////////////////////////////////////
// 外部中断INT0初始化函数
// 入口参数: 无
// 函数返回: 无
////////////////////////////////////////
void EXTI0_Init(void)
{
    INT0_FallingInt();          //设置外部中断为下降沿中断
    INT0_SetIntPriority(3);     //设置中断为最高优先级
    INT0_EnableInt();           //使能外部中断

    //<<AICUBE_USER_EXTI0_INITIAL_BEGIN>>
    // 在此添加用户初始化代码  
    //<<AICUBE_USER_EXTI0_INITIAL_END>>
}

////////////////////////////////////////
// 外部中断INT1初始化函数
// 入口参数: 无
// 函数返回: 无
////////////////////////////////////////
void EXTI1_Init(void)
{
    INT1_FallingInt();           //设置外部中断为下降沿中断
    INT1_SetIntPriority(2);      //设置中断为较高优先级
    INT1_EnableInt();            //使能外部中断

    //<<AICUBE_USER_EXTI1_INITIAL_BEGIN>>
    // 在此添加用户初始化代码  
    //<<AICUBE_USER_EXTI1_INITIAL_END>>
}

////////////////////////////////////////
// 外部中断INT2初始化函数
// 入口参数: 无
// 函数返回: 无
////////////////////////////////////////
void EXTI2_Init(void)
{
    INT2_FallingInt();                  //设置外部中断为下降沿中断
    INT2_SetIntPriority(1);             //设置中断为较低优先级
    INT2_EnableInt();                   //使能外部中断

    //<<AICUBE_USER_EXTI2_INITIAL_BEGIN>>
    // 在此添加用户初始化代码  
    //<<AICUBE_USER_EXTI2_INITIAL_END>>
}

////////////////////////////////////////
// 外部中断INT3初始化函数
// 入口参数: 无
// 函数返回: 无
////////////////////////////////////////
void EXTI3_Init(void)
{
    INT3_FallingInt();                  //设置外部中断为下降沿中断
    INT3_SetIntPriority(0);             //设置中断为最低优先级
    INT3_EnableInt();                   //使能外部中断

    //<<AICUBE_USER_EXTI3_INITIAL_BEGIN>>
    // 在此添加用户初始化代码  
    //<<AICUBE_USER_EXTI3_INITIAL_END>>
}


////////////////////////////////////////
// 定时器0中断服务程序
// 入口参数: 无
// 函数返回: 无
////////////////////////////////////////
void TIMER0_ISR(void) interrupt TMR0_VECTOR
{
    TIMER0_SetReload16(T0_RELOAD);  //重置定时器0的16位重载值      

    //<<AICUBE_USER_TIMER0_ISR_CODE1_BEGIN>>
    // 在此添加中断函数用户代码  
    //<<AICUBE_USER_TIMER0_ISR_CODE1_END>>
}

////////////////////////////////////////
// 定时器2中断服务程序
// 入口参数: 无
// 函数返回: 无
////////////////////////////////////////
void TIMER2_ISR(void) interrupt TMR2_VECTOR
{
    //<<AICUBE_USER_TIMER2_ISR_CODE1_BEGIN>>
    // 在此添加中断函数用户代码                                          
    if (TIMER2_CheckFlag())     //判断定时器中断
    {
        TIMER2_ClearFlag();     //清除中断标志
    }

    if (EXF2_CheckFlag())       //判断定时器外部中断
    {
        EXF2_ClearFlag();       //清除外部中断标志
    }
    //<<AICUBE_USER_TIMER2_ISR_CODE1_END>>
}

////////////////////////////////////////
// 串口1中断服务程序
// 入口参数: 无
// 函数返回: 无
////////////////////////////////////////
void UART1_ISR(void) interrupt UART1_VECTOR
{
    //<<AICUBE_USER_UART1_ISR_CODE1_BEGIN>>
    // 在此添加中断函数用户代码                              
    if (UART1_CheckTxFlag())     //判断串口发送中断
    {
        UART1_ClearTxFlag();     //清除串口发送中断标志

        fPrintfBusy = 0;         //清除printf发送忙标志
    }

    if (UART1_CheckRxFlag())     //判断串口接收中断
    {
        UART1_ClearRxFlag();     //清除串口接收中断标志
    }
    //<<AICUBE_USER_UART1_ISR_CODE1_END>>
}

////////////////////////////////////////
// 外部中断INT0中断服务程序
// 入口参数: 无
// 函数返回: 无
////////////////////////////////////////
void EXTI0_ISR(void) interrupt INT0_VECTOR
{
    //<<AICUBE_USER_EXTI0_ISR_CODE1_BEGIN>>
    // 在此添加中断函数用户代码  
    //<<AICUBE_USER_EXTI0_ISR_CODE1_END>>
}

////////////////////////////////////////
// 外部中断INT1中断服务程序
// 入口参数: 无
// 函数返回: 无
////////////////////////////////////////
void EXTI1_ISR(void) interrupt INT1_VECTOR
{
    //<<AICUBE_USER_EXTI1_ISR_CODE1_BEGIN>>
    // 在此添加中断函数用户代码  
    //<<AICUBE_USER_EXTI1_ISR_CODE1_END>>
}

////////////////////////////////////////
// 外部中断INT2中断服务程序
// 入口参数: 无
// 函数返回: 无
////////////////////////////////////////
void EXTI2_ISR(void) interrupt INT2_VECTOR
{
    //<<AICUBE_USER_EXTI2_ISR_CODE1_BEGIN>>
    // 在此添加中断函数用户代码                       
    //<<AICUBE_USER_EXTI2_ISR_CODE1_END>>
}

////////////////////////////////////////
// 外部中断INT3中断服务程序
// 入口参数: 无
// 函数返回: 无
////////////////////////////////////////
void EXTI3_ISR(void) interrupt INT3_VECTOR
{
    //<<AICUBE_USER_EXTI3_ISR_CODE1_BEGIN>>
    // 在此添加中断函数用户代码  
    //<<AICUBE_USER_EXTI3_ISR_CODE1_END>>
}


//<<AICUBE_USER_FUNCTION_IMPLEMENT_BEGIN>>
// 在此添加用户函数实现代码  
//<<AICUBE_USER_FUNCTION_IMPLEMENT_END>>



STC89C52RC@AiCube-TEST1.zip

46.93 KB, 下载次数: 13

回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:161
  • 最近打卡:2025-08-23 08:11:44

775

主题

1万

回帖

1万

积分

管理员

积分
18735
发表于 2025-7-6 23:00:32 | 显示全部楼层
最新版 STC-ISP 软件 下载,
AiCube 各功能模块程序自动生成工具

截图202507072059052116.jpg
深圳国芯人工智能有限公司-工具软件

最新数据手册下载:

截图202507072101091434.jpg
深圳国芯人工智能有限公司-芯片手册

STC89C52RC/RD+ 系列数据手册下载
https://www.stcaimcu.com/data/do ... /STC89C52RC-RD+.pdf


AI8051U 数据手册下载,管脚兼容 STC89C52RC/RD+ 系列
https://www.stcaimcu.com/data/download/Datasheet/AI8051U.pdf



从STC最新版ISP及图形化程序自动生成工具软件,
AiCube-ISP-V6.95Y 或更高版本软件的
资料下载 | 传统51开发板学习资料汇总】栏目

可以下载到这些资料


截图202507101401125191.jpg



回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:161
  • 最近打卡:2025-08-23 08:11:44

775

主题

1万

回帖

1万

积分

管理员

积分
18735
发表于 2025-7-6 23:03:42 | 显示全部楼层
截图202507062303096007.jpg
截图202507062303255408.jpg
Ai8051U-LQFP48,RMB1.9
USB 32 80511T 8051,支持328051指令集和88051指令集
比普通32位机强太多的地方:
1,  Ai8051U有TFPU@120MHz, 算力强, uS级硬件三角函数/浮点运算器
2,  Ai8051U的抗干扰强;12位ADC全新设计更精准,轨到轨比较器
3,  Ai8051U内置专业级复位电路,彻底省外部复位;
4,  Ai8051U的内部高可靠时钟完全满足串口通信要求,4高速串口
5,  Ai8051U有QSPIFlash,直送i8080/M6800-TFT接口,视频级刷彩屏,C8T6没有;
6,  Ai8051U的PWM支持硬件移相@120MHz,DMA可以外设直接到外设P2P
7,  Ai8051U是 34K SRAM,64K Flash
8,  Ai8051U是自带硬件USB1个芯片就能直接USB连接电脑仿真/下载,全球唯一
9  PDIP40LQFP44LQFP48封装,管脚兼容经典的89C52RC,12C5A60S2
10,当328051使用,可以用 Keil C251 编译器,双核兼容设计
11,当88051使用,可以用 Keil C51/IAR/SDCC 编译器
Ai8051U-LQFP48,USB 32 8051RMB1.9含税

回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:161
  • 最近打卡:2025-08-23 08:11:44

775

主题

1万

回帖

1万

积分

管理员

积分
18735
发表于 2025-7-7 21:05:13 | 显示全部楼层
从STC最新版ISP及图形化程序自动生成工具软件,
AiCube-ISP-V6.95Y 或更高版本软件的
资料下载 | 传统51开发板学习资料汇总】栏目

可以下载到这些资料
截图202507072119531617.jpg



回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:161
  • 最近打卡:2025-08-23 08:11:44

775

主题

1万

回帖

1万

积分

管理员

积分
18735
发表于 2025-7-7 21:05:45 | 显示全部楼层
占楼

截图202507072120116580.jpg
回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:161
  • 最近打卡:2025-08-23 08:11:44

775

主题

1万

回帖

1万

积分

管理员

积分
18735
发表于 2025-7-7 21:06:16 | 显示全部楼层
占楼
截图202507072120218954.jpg
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:276
  • 最近打卡:2025-08-23 14:05:57
已绑定手机

80

主题

2983

回帖

6363

积分

荣誉版主

无情的代码机器

积分
6363
发表于 2025-7-8 11:38:48 | 显示全部楼层
更新记录:

20250707:
1.所有资料 添加最新AiCube-ISP-v6.95Y及手册STC89C52RC-RD+_20250707。
三天不学习,赶不上刘少奇~
回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:161
  • 最近打卡:2025-08-23 08:11:44

775

主题

1万

回帖

1万

积分

管理员

积分
18735
发表于 2025-7-8 14:48:28 | 显示全部楼层
2.18  【变量的声明要求在可执行语句之前,C89标准,KEILC语言】

见 最新 STC89C52RC系列数据手册,

第2章【集成开发环境的使用与ISP下载软件的介绍
2.18  【变量的声明要求在可执行语句之前,C89标准,KEILC语言】

回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:161
  • 最近打卡:2025-08-23 08:11:44

775

主题

1万

回帖

1万

积分

管理员

积分
18735
发表于 2025-7-8 15:22:43 | 显示全部楼层
江协打包的普中STC89C52RC原理图:
截图202507081522085104.jpg

A2开发板原理图.pdf

227.86 KB, 下载次数: 5

回复

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-8-24 00:22 , Processed in 0.146052 second(s), 109 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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