查看: 199|回复: 7

[未解决] 使用delay延时时会将时间缩短100倍?

[复制链接]
  • TA的每日心情
    奋斗
    2020-7-15 19:38
  • 签到天数: 9 天

    [LV.3]偶尔看看II

    发表于 2020-7-5 20:21 | 显示全部楼层 |阅读模式
    如题,去年刚入门的时候就有这个问题了:https://www.arduino.cn/thread-92697-1-1.html
    过了大半年再捡起来依然无法解决,目前尝试的几种方法只有把delay里的数据放大100倍效果才会同预期一样,更改arduino-x.x.x\hardware\arduino\avr\boards.txt里uno的F_cpu也没用,那个数值一旦改了用blink测试时表现效果就是常亮,怎么改delay的时长都是常亮了,编译详情里f_cpu也等于16000000L,完全不知道问题出在哪里,难不成是我的电脑c语言编译环境出问题了?因为我无论是用win10商城还是安装包还是免安装包的ide问题是一摸一样的,把文档里的库删光重下也一样。求大佬指点,不想以后写的代码万一要迁移到别的电脑上要干一个个改数据这么傻的事啊。
    (还有一个小插曲是这台电脑上的ide第一次运行的时候编译必报错,会无法加载arduino-1.8.13\hardware\tools\avr\avr\include中的inttypes.h,必须把它放到arduino-1.8.13\hardware\tools\avr\avr\include\avr里跟pgmspace.h在一个文件夹下再改一下导航才能编译成功就很奇怪好像全网就我有这个问题,是不是电脑哪里有问题?)

  • TA的每日心情
    郁闷
    2018-12-6 22:21
  • 签到天数: 48 天

    [LV.5]常住居民I

    发表于 2020-7-5 20:32 | 显示全部楼层
    自制的板子?
  • TA的每日心情
    奋斗
    2020-7-15 19:38
  • 签到天数: 9 天

    [LV.3]偶尔看看II

     楼主| 发表于 2020-7-5 20:35 | 显示全部楼层

    盗版板子,正版的也试过,结果都一样
  • TA的每日心情
    擦汗
    2019-7-29 00:08
  • 签到天数: 47 天

    [LV.5]常住居民I

    发表于 2020-7-5 23:30 | 显示全部楼层
    我在另一个帖子看了,当时以为 LZ 已经解决掉了。

    今天用 IDA 详细反汇编了你的代码,建议已经给你贴在原帖子上了。
    估计还是哪次不小心把库改了
  • TA的每日心情
    擦汗
    2020-8-8 01:43
  • 签到天数: 35 天

    [LV.5]常住居民I

    发表于 2020-7-6 06:50 | 显示全部楼层
    本帖最后由 shouzama 于 2020-7-6 07:04 编辑

    就我個人的經驗,當你的板子晶振頻率的設定
    跟你編譯時所設定的晶振頻率不一樣時,
    就會出現時間不同步的問題

    比方說我設定好 8MHz 的 attiny13a,編譯程式
    時忘了將它調在 8MHz 而設定了 1MHz,編譯
    完燒錄到 attiny13a 後,開機慢閃 2次的燈號變成
    瞬閃完成 ><"

    有些單晶出廠時晶振設定有內定值,不是你在編譯時
    指定不一樣的頻率,上傳程式後晶振頻率就會跟著變更,
    它不會! 所以要嘛你在編譯時配合它的頻率,要嘛手動
    變更單晶的內定頻率值(僅適合用內建晶振的時候)
    ====
    後來有看到您使用的是 uno 的板子,而編譯時 uno
    沒有頻率選項可以用,理論上都是一樣 16MHz 才對,
    那情況又跟上述的不一樣了

    要不要重燒 BOOTLOADER/修改熔絲位試試?
  • TA的每日心情
    奋斗
    2020-7-15 19:38
  • 签到天数: 9 天

    [LV.3]偶尔看看II

     楼主| 发表于 2020-7-6 11:11 | 显示全部楼层
    shouzama 发表于 2020-7-6 06:50
    就我個人的經驗,當你的板子晶振頻率的設定
    跟你編譯時所設定的晶振頻率不一樣時,
    就會出現時間不同步的問題 ...

    换了好几块板子都是一样的问题,像是我电脑的编译出错了
  • TA的每日心情
    擦汗
    2020-8-8 01:43
  • 签到天数: 35 天

    [LV.5]常住居民I

    发表于 2020-7-6 15:06 | 显示全部楼层
    FSSFS二号机 发表于 2020-7-6 11:11
    换了好几块板子都是一样的问题,像是我电脑的编译出错了

    還是說您那塊所謂的"盜版"的 UNO,
    它官方有出自己專用的開發板模組,
    因為選錯開發板所以造成時脈不對?
    看能不能找到那塊板子的廠商/官網,
    或用它的廠牌型號上網搜尋一下有沒有
    其他人遇到跟您一樣的問題
  • TA的每日心情
    奋斗
    2020-7-15 19:38
  • 签到天数: 9 天

    [LV.3]偶尔看看II

     楼主| 发表于 2020-7-6 18:02 | 显示全部楼层
    shouzama 发表于 2020-7-6 15:06
    還是說您那塊所謂的"盜版"的 UNO,
    它官方有出自己專用的開發板模組,
    因為選錯開發板所以造成時脈不對?

    淘宝20元的完全仿照官方uno的板子。。。因为不太懂模电数电所以也看不出来有啥不一样,外观很还原
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    热门推荐

    5分钟带你快速了解新一代开发板:M5STACK
    5分钟带你快速了解新一代
    一、什么是M5Stack M5Stack是一种模块化、可堆叠扩展的开发板,每个模块
    创客火首发无人机编队套装,开启不一样的人工智能教育
    创客火首发无人机编队套装
    2017年国务院发布《新一代人工智能发展规划》,提出要广泛开展人工智能科普活动,在中
    胸卡式儿童红花榜(blinker+三色墨水屏)
    胸卡式儿童红花榜(blinke
    【项目名称】胸卡式儿童红花榜【项目简介】 小朋友有很强的自尊心和荣誉感,也有自
    ADAFRUIT_GFX库 tft屏真彩图怎么取模
    ADAFRUIT_GFX库 tft屏真彩
    请问这种16位的是用什么软件取的,网上找了好久取模软件,取的都是8位的
    温度传感器实验求代码
    温度传感器实验求代码
    求详细代码,急!
    Copyright   ©2015-2016  Arduino中文社区  Powered by©Discuz!   
    快速回复 返回顶部 返回列表