打印
[PIC®/AVR®/dsPIC®产品]

【8月晒板卡】+ 重新建立样例

[复制链接]
1092|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
hu9jj|  楼主 | 2019-10-2 10:34 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 hu9jj 于 2019-10-2 12:02 编辑

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



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



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

example_1.X.rar (82.93 KB)



使用特权

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



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

void delay_ms(uint16_t ms)
{
    uint16_t i,j,k;
   
    for(i=ms; i>0; i--){
        for(j=60000; j >0; j--){
            for(k=60000;k>0;k--);
        }
    }
}



使用特权

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



使用特权

评论回复
地板
小卡| | 2019-10-4 12:02 | 只看该作者
推一下

使用特权

评论回复
5
zhuomuniao110| | 2019-10-5 12:23 | 只看该作者
非常六六六。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

认证:Microchip
简介:让我们来为您提供帮助。我们可提供各种资源来帮助您解决一切问题。是否需要与我们的客户支持团队联系?您可以通过电话、在线聊天功能或电子邮件与他们联系。

151

主题

1059

帖子

11

粉丝