找回密码
 立即注册
查看: 281|回复: 0

快速将官方的Ai8051U-8Bit实列程序移植到PI+SDCC,工程模板

[复制链接]
  • 打卡等级:以坛为家II
  • 打卡总天数:469
  • 最近打卡:2025-04-10 16:59:05

45

主题

69

回帖

1225

积分

金牌会员

积分
1225
发表于 2025-1-10 12:29:37 | 显示全部楼层 |阅读模式

ai8051u(stc8051u)没有板级开发环境的,先移步到https://www.stcaimcu.com/forum.php?mod=viewthread&tid=13638

将官方的main.c复制到src文件夹,
  1. #include "..\comm\AI8051U.h"
  2. #include "stdio.h"
  3. #include "intrins.h"
  4. typedef         unsigned char        u8;
  5. typedef         unsigned int        u16;
  6. typedef         unsigned long        u32;
  7. #define MAIN_Fosc        22118400L   //定义主时钟(精确计算115200波特率)
复制代码
上面一堆代码替换为
#include "config.h"
需要修改频率时,就在config.h中选择相应频率
复制代码
  1. #ifdef __SDCC
  2. #define    P_HC595_SER     P34  //pin 14    SER     data input
  3. #define    P_HC595_RCLK    P35  //pin 12    RCLk    store (latch) clock
  4. #define    P_HC595_SRCLK   P32  //pin 11    SRCLK   Shift data clock
  5. #else
  6. sbit    P_HC595_SER   = P3^4;   //pin 14    SER     data input
  7. sbit    P_HC595_RCLK  = P3^5;   //pin 12    RCLk    store (latch) clock
  8. sbit    P_HC595_SRCLK = P3^2;   //pin 11    SRCLK   Shift data clock
  9. #endif
复制代码
所有sbit定义的地方都需修改为#define宏定义,没修改一般编译的错误如下图
1.jpg

  1. bit B_1ms;          //1ms标志
  2. 修改为
  3. BOOL B_1ms;          //1ms标志
复制代码
未修改编译错误
2.jpg.jpg

uart移植时,需要注意,以下地方加volatile关键字
volatile BOOL B_TX1_Busy; //发送忙标志

demo.7z

16.32 KB, 下载次数: 14

回复

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-5-3 00:57 , Processed in 0.140654 second(s), 48 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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