7.10电赛备赛记录

发布时间:2026/7/21 19:47:24
7.10电赛备赛记录 一、接上文的补充1超声波移植补充上文不是说超声波的移植代码一定要在syscfg里面按照它的文件名称配置好了之后才能使用那个底层文件吗。我后来在移植按键、LED、蜂鸣器的时候发现我可以写代码的时候不用那个宏定义也是可以的。也就是说后续有时间可以修改底层文件可以从syscfg上面不设置这么复杂的名字去修改也可以直接改底层文件就是不用这么复杂的文件名称直接换GPIOB...后面有时间可以试一下由于任务关系我现在得要移植下一个文件。超声波的移植用到了TIMA0这个定时器定时器是根据时钟树的配置而来的我后面的九轴的测量也用到了时钟树虽然我现在在代码里面没有看出来九轴到底用到了时钟树的哪个部分所以现在两个文件移植在一起我不知道如何修改我的时钟树。2九轴移植补充在移植超声波的时候我用的是视频里面移植过来的空文件该文件应该是对时钟树没有进行修改的。在移植超声波就没有任何的影响但是在移植九轴的时候就直接卡住一个数值了。后面我在上一届的代码里面进行修改我发现把上一届的时钟树修改之后和没修改之前也产生了变化。修改之后的现象跟我移植空文件的九轴一模一样所以我判断是时钟树的问题。但是后来我又在空文件配置了时钟树结果还是出现像之前一样的问题最终我也没有解决出来后续有时间可以研究一下。但是可以判定代码没有问题应该是syscfg配置的问题。二、九轴移植具体步骤三、按键移植1注意上一届使用的按键出现了两个问题导致第二个按键和第四个按键一直安不出来。1、第二个按键使用的是PA18但是这个按键的功能超级复杂所以一般是不使用这个按键的。如果要使用的话要把J8的跳线帽拔掉才能单独使用PA18的引脚如果不拔掉的话就只能使用左侧的按键但是其他几个按键就使用不了了所以不建议使用PA18。2、在配置的时候把第四个按键配置成了input这就导致按键0时的逻辑执行不通。按键的使用是用到了时钟树的因此也就解答了九轴用的GPIO的SCL和SDA超声波也是用的GPIO的TRIG和ECHO所以为什么时钟树不同就导致九轴和超声波的运行效果不同。还有一个问题就是上文提到的不知道为什么文件都移植好了下载编译包括烧录也没有问题但就是会存在找不到文件的问题。这个问题是因为在使用syscfg工具的时候没有在keil的syscfg配置界面没有在这个界面还修改了端口的配置然后保存的时候也不在keil的syscfg界面这就会导致后面找不到文件。还有一种情况就是配置好了之后没有在syscfg界面进行编译这也会造成在后面找不到文件。