[8/16位单片机] 【8月晒板卡】+ 重新建立样例

[复制链接]
394|5
 楼主 | 2019-10-2 10:34 | 显示全部楼层 |阅读模式
本帖最后由 hu9jj 于 2019-10-2 12:02 编辑

    在添加、修改了一些代码之后,原来的项目编译出错,但又找不出原因,只好重新建立项目,这次建立了一个仅开通了按键(PF6)和LED灯(PF5)再加上延时函数的项目,准备在此基础上稳扎稳打,每修改一处就试编译看能否通过,否则立即撤消,每完成一步就压缩保存以备随时恢复。
    原来的项目出错主要是数据类型的宏定义出错,我又没有改动代码,但数据类型的宏定义uint8_t却提示“无法解析的标识符”。
new_60.jpg


    我尝试将数据类型修改成可以解析的int后,这些提示消失了,但代码编译却出错了。
new_61.jpg



    为了方便大家测试,现将项目代码打包上传:

example_1.X.rar (82.93 KB, 下载次数: 2)

使用特权

评论回复
 楼主 | 2019-10-2 15:49 | 显示全部楼层
    我在测试的主循环中利用系统提供的延时,每隔100毫秒切换一次LED的状态,然后再加上自己编写的延时代码,却无论如何调整延时参数,延时都似乎不起作用,不知是何原因。
new_62.jpg


    增加的延时代码如下,我设立了三重循环,每重循环为60000次,按理说能够有延时作用吧,可是实际上LED灯闪烁的频率却无明显的变化,有兴趣的坛友帮忙分析测试一下,看有没有延时的效果。
  1. int main(void)
  2. {
  3.     /* Initializes MCU, drivers and middleware */
  4.     SYSTEM_Initialize();
  5. s    /* Replace with your application code */
  6.     while (1){
  7.         IO_PF5_Toggle();
  8.         DELAY_milliseconds(100);
  9.         delay_ms(60000);  //参数从100到60000测试
  10.     }
  11. }

  12. void delay_ms(uint16_t ms)
  13. {
  14.     uint16_t i,j,k;
  15.    
  16.     for(i=ms; i>0; i--){
  17.         for(j=60000; j >0; j--){
  18.             for(k=60000;k>0;k--);
  19.         }
  20.     }
  21. }
复制代码



使用特权

评论回复

评论

lihui567 2019-10-4 12:22 回复TA
不错,非常详细 
 楼主 | 2019-10-2 16:39 | 显示全部楼层
    我尝试在MCC中添加了I2C EEPROM代码,结果编译出错,到MCC中删除了这个选择,重新生成代码,编译仍然出错,此时,我的压缩备份就起作用了,解压缩后又可以在上一步基础上进行测试了。
new_63.jpg


使用特权

评论回复
| 2019-10-4 12:02 | 显示全部楼层
推一下

使用特权

评论回复
| 2019-10-5 12:23 | 显示全部楼层
非常六六六。

使用特权

评论回复
扫描二维码,随时随地手机跟帖
您需要登录后才可以回帖 登录 | 注册

本版积分规则

我要发帖 投诉建议 创建版块 申请版主

快速回复

您需要登录后才可以回帖
登录 | 注册
高级模式

论坛热帖

在线客服 快速回复 返回顶部 返回列表