本发明涉及mcu,具体涉及一种适用上位机自动获取mcu时钟频率的方法及系统。
背景技术:
1、mcu类芯片,作为一种通用型的可编程器件,用户在进行程序开发的过程中,往往需要多次进行程序烧录和调试验证。在进行flash程序烧录时,时序的设定是基于mcu的输入时钟或者系统时钟频率作为时基的。因此,在程序烧录的过程中,用户需要仔细查找硬件电路,以确定目标芯片的输入时钟频率,并据此配置其烧录主频。这一过程需要用户手动实现。
2、对于第一类mcu,其片内并没有集成片内时钟源模块。在这种情况下,上位机调试软件会提供一个默认的时钟频率。用户需要根据硬件板级的输入时钟来配置,手动设置时钟频率。这种处理方法虽然在某些情况下可以满足需求,但用户需要具备一定的硬件知识和调试经验。
3、对于第二类mcu,其片内已经集成了时钟源模块。在这种情况下,上位机默认会选择片内已知的时钟频率,且用户无法进行配置。这种处理方法虽然简化了操作,但其灵活性不高,可能无法满足所有用户的需求。因此,在选择mcu时,用户需要根据自己的具体需求和应用场景来决定选择哪一类mcu。
技术实现思路
1、针对现有技术的不足,本发明公开了一种适用上位机自动获取mcu时钟频率的方法及系统,用于解决上述问题。
2、本发明通过以下技术方案予以实现:
3、第一方面,本发明提供了一种适用上位机自动获取mcu时钟频率的方法,包括以下步骤:
4、上位机与目标芯片连接,将倍频系数评测程序下载至目标芯片,并配置最低倍频系数;
5、运行倍频系数评测程序并进行评测,上位机获取评测结果,判断程序是否通过,若通过则进入下一步,若不通过则调整倍频系数;
6、下载捕获解析程序至目标芯片并配置倍频系数,同时配置仿真器jtag_tdi脚产生固定已知的pwm频率;
7、捕获解析程序初始化,识别捕获模式变量,配置cap和gpio寄存器,连续读取pwm引脚电平状态至数据ram;
8、解析时钟频率,生成程序结束标志并保存至数据ram,上位机连接目标芯片,获取时钟频率并保存。
9、更进一步的,所述方法中,在上位机与目标芯片进行连接的过程中,采用基于mcu-jtag仿真调试接口的同步协议。上位机通过usb接口与仿真器相连,进而与目标芯片建立通信链路,以实现对微控制器(mcu)寄存器和随机存取存储器(ram)的读写操作。
10、更进一步的,所述方法中,倍频系数评估程序旨在对目标芯片进行数据传输、逻辑运算,并生成运行终止的标志位。运算结果及终止标志位将被存储于预定的数据ram区域。
11、更进一步的,所述方法中,在上位机接收到评测结果后,若未能满足通过标准,则应将倍频系数降低2个单位,以此作为捕获解析程序的新的倍频系数。
12、更进一步的,所述方法中,首先,设定最低的倍频系数以进行性能评估。随后,每次测试后逐步增加倍频系数,持续进行循环。若在测试过程中出现计算结果异常,或者未产生结束标志位,这表明当前的倍频系数已超过微控制器单元(mcu)的最大主频。此时,上位机应读取相位锁定环(pll)倍频寄存器的配置值。
13、更进一步的,所述方法中,上位机负责下载并解析程序,同时设定目标芯片程序的入口地址,并发出运行指令。在jtag接口中,tms和tck引脚应配置为低电平状态,而其他引脚则应保持高阻态,以维持空闲状态。
14、更进一步的,所述方法中,捕获解析程序启动初始化阶段,上位机向仿真器发出指令,配置jtag接口的tms和tck引脚为低电平状态。同时,tdi引脚输出稳定的脉冲宽度调制(pwm)频率信号,该信号作为微控制器(mcu)时钟频率计算的基准时间。时钟频率与该基准时基之间的关系,将依据时钟频率解析算法进行设定。
15、更进一步的,所述方法中,上位机负责读取微控制器单元(mcu)的程序终止标志位以及时钟频率值。若终止标志位显示无效,则表明时钟频率的解析过程未能成功执行;反之,若终止标志位有效,则应进行时钟频率的读取并将其存储。
16、更进一步的,所述方法中,读取的脉冲宽度调制(pwm)电平周期数应不少于三个。
17、第二方面,本发明提供了一种适用上位机自动获取mcu时钟频率的系统,所述系统用于实现第一方面所述的适用上位机自动获取mcu时钟频率的方法,包括
18、上位机,用于运行在pc端,仿真调试和指令程序发送;
19、仿真器,用于实现usb转jtag协议并产生pwm频率;
20、jtag口,用于实现仿真调试的通讯协议接口;
21、内核cpu ,用于实现系统控制和算法功能;
22、程序ram ,用于提供倍频系数评测程序和捕获解析程序运行空间;
23、数据ram,用于提供io捕获电平数据缓存空间;
24、gpio,用于实现io复用、输入输出和io状态缓存功能;
25、cap,用于实现边沿触发自动捕获pwm周期和脉宽功能;
26、pll,用于实现对输入时钟频率倍频,提供系统与外设时钟。
27、本发明的有益效果为:
28、本发明通用性强、无需额外硬件支撑、实现简单。flash程序烧录软件自动获取时钟频率,减少人为因素导致频率设置异常。通过自动获取时钟,上位机通信等待时间更精准减少状态标志轮询。可以实现系统时钟诊断。
1.一种适用上位机自动获取mcu时钟频率的方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的一种适用上位机自动获取mcu时钟频率的方法,其特征在于,所述方法中,上位机与目标芯片连接时,基于mcu-jtag仿真调试接口并使用同步协议,上位机通过usb连接仿真器与目标芯片建立通讯,实现对mcu寄存器、ram进行读写。
3.根据权利要求1所述的一种适用上位机自动获取mcu时钟频率的方法,其特征在于,所述方法中,倍频系数评测程序用于目标芯片内数据迁移、逻辑运算并产生运行结束标志位,运算结果与结束标志位保存至指定数据ram空间。
4.根据权利要求1所述的一种适用上位机自动获取mcu时钟频率的方法,其特征在于,所述方法中,上位机获取评测结果后,若不通过则将倍频系数减2后作为捕获解析程序的倍频系数。
5.根据权利要求1所述的一种适用上位机自动获取mcu时钟频率的方法,其特征在于,所述方法中,先配置最低倍频系数进行评测,每次测试通过倍频系数递增,依次循环当计算结果异常或结束标志位未产生表示此倍频系数已超mcu的最高主频,上位机读取pll倍频寄存器配置值。
6.根据权利要求1所述的一种适用上位机自动获取mcu时钟频率的方法,其特征在于,所述方法中,上位机下载解析程序,设置目标芯片程序入口地址,下发运行指令,jtag口tms,tck引脚配置为低电平,其余为高阻态,保持空闲状态。
7.根据权利要求1所述的一种适用上位机自动获取mcu时钟频率的方法,其特征在于,所述方法中,捕获解析程序初始化,上位机命令仿真器配置jtag口tms,tck为低电平,tdi产生固定pwm频率作为mcu时钟频率计算的参考时基,频率关系通过时钟频率解析算法设定。
8.根据权利要求1所述的一种适用上位机自动获取mcu时钟频率的方法,其特征在于,所述方法中,上位机读取mcu程序结束标志位与时钟频率值,如果结束标志位无效说明时钟频率解析失效,如果结束标志位有效,读取时钟频率并保存。
9.根据权利要求1所述的一种适用上位机自动获取mcu时钟频率的方法,其特征在于,所述方法中,读取pwm电平周期数≥3。
10.一种适用上位机自动获取mcu时钟频率的系统,所述系统用于实现如权利要求1-9任一项所述的适用上位机自动获取mcu时钟频率的方法,其特征在于,包括
