找回密码
 立即注册
查看: 85|回复: 3

希望STC-ISP里增加带参延时函数生成功能

[复制链接]
  • 打卡等级:以坛为家I
  • 打卡总天数:222
  • 最近打卡:2025-08-11 05:47:56

143

主题

183

回帖

389

积分

中级会员

积分
389
发表于 2025-8-1 21:32:56 | 显示全部楼层 |阅读模式
STC-ISP里有延时函数生成工具,可惜不能生成带参数的延时函数,希望增加此功能。带参的可以简化程序,一函数多用。
回复

使用道具 举报 送花

3

主题

2076

回帖

1000

积分

等待验证会员

积分
1000
发表于 2025-8-1 21:33:00 | 显示全部楼层
尊敬的用户:

您好!感谢您对STC-ISP工具的关注与建议。关于您提到的“希望STC-ISP中增加带参延时函数生成”的需求,我们已认真阅读并充分理解其背后的技术诉求。

目前,STC-ISP作为一款面向STC系列单片机的烧录与调试工具,主要功能集中在程序下载、芯片擦除、读取、配置等基础操作上,其内置的延时函数生成功能主要用于生成固定时间的延时代码,适用于简单应用场景。该功能虽然在实际开发中具有一定的实用性,但确实存在参数化不足的问题,无法满足复杂或动态延时需求。

针对您的建议,我们认为其具备较高的技术价值和实用意义。带参延时函数能够提高代码的灵活性与复用性,尤其在需要根据不同场景调整延时时间的应用中,将极大提升开发效率与代码质量。因此,我们将在后续版本规划中考虑引入此类功能,并结合以下方向进行优化:

1. 支持参数化延时函数:允许用户输入延时时间(如毫秒、微秒),自动生成可调用的延时函数,例如 void delayms(uint32t ms),实现更灵活的延时控制。

2. 兼容多种单片机型号:确保生成的延时函数适用于不同频率的STC系列芯片,避免因时钟频率差异导致的误差。

3. 集成到STC-ISP界面:在现有工具中增加“延时函数生成”模块,提供直观的参数输入界面,简化用户操作流程。

4. 提供示例代码与文档说明:为开发者提供清晰的使用指南与代码示例,帮助快速集成与验证。

我们深知,优秀的开发工具应不断迭代以适应日益复杂的开发需求。您的反馈对我们优化产品具有重要参考价值。我们将持续关注用户需求,致力于提升STC-ISP的功能完整性与用户体验。

再次感谢您的支持与建议!如有其他问题或建议,欢迎随时与我们联系。

此致  
敬礼!

国芯人工智能团队  
2025年4月

[本文内容由国芯人工智能辅助生成,仅供参考]
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:511
  • 最近打卡:2025-08-11 00:11:18
已绑定手机

39

主题

2385

回帖

3159

积分

荣誉版主

积分
3159
发表于 2025-8-2 22:01:56 | 显示全部楼层
比如, 根据选择的主频生成delay_ms(u16 nms)或者delay_us(u16 nus)之类的函数,确实会实用很多。
睁开眼睛做场梦~~~
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家III
  • 打卡总天数:622
  • 最近打卡:2025-08-11 01:47:42

11

主题

1222

回帖

5842

积分

论坛元老

积分
5842
发表于 2025-8-3 14:29:11 | 显示全部楼层
/*********************************************
                程序名称        :软件延时函数
*********************************************/

//#define MAIN_Fosc 48000000L        //定义主时钟
//#define MAIN_Fosc 44236800L        //定义主时钟
//#define MAIN_Fosc 40000000L        //定义主时钟
//#define MAIN_Fosc 36864000L        //定义主时钟
//#define MAIN_Fosc 35000000L        //定义主时钟
//#define MAIN_Fosc 33177600L        //定义主时钟
//#define MAIN_Fosc 30000000L        //定义主时钟
//#define MAIN_Fosc 27000000L        //定义主时钟
//#define MAIN_Fosc 24000000L        //定义主时钟
//#define MAIN_Fosc 22118400L        //定义主时钟
//#define MAIN_Fosc 20000000L        //定义主时钟
//#define MAIN_Fosc 18432000L        //定义主时钟
#define MAIN_Fosc 12000000L        //定义主时钟
//#define MAIN_Fosc 11059200L        //定义主时钟
//#define MAIN_Fosc 6000000L        //定义主时钟
//#define MAIN_Fosc 5529600L        //定义主时钟

//软件延时函数
//STC单片机自适应毫秒级延时函数:
void Delay(unsigned int ms)                //注:ms_max=65536
{
                unsigned int i;
                do
                        {
//                                i=MAIN_Fosc/96000L;                //STC89/90_12T
//                                i=MAIN_Fosc/48000L;                //STC89/90_6T
//                                i=MAIN_Fosc/14000;                 //STC12
                                i=MAIN_Fosc/13000;                 //STC15
//                                i=MAIN_Fosc/10000;                 //STC8
//                                i=MAIN_Fosc/6030;                  //STC32
                                while(--i)        ;
                                }
                        while(--ms);
}

回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-8-11 13:18 , Processed in 0.121819 second(s), 62 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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