久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 997|回復: 6
打印 上一主題 下一主題
收起左側

求教STC單片機軟件延時問題

[復制鏈接]
跳轉到指定樓層
樓主
ID:483407 發表于 2024-12-12 16:37 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
在使用1602液晶延時函數時,發現了這個STC8F2K6S2,在使用延時函數的時候,修改毫秒、50毫秒、秒這3個函數的循環次數,都可以改變延時的結果,但是對于50微秒這個函數中,將i改為100,50,20,最后的延時都沒有改變!搞不明白這是為什么?
void delay_50us(uchar us50){        //@12.000MHz
        uchar  i;
        i = 198;                  //i=198:STC軟件中查到的12M時鐘數據
        while(us50--)while (--i);
}
void delay_ms(unsigned char ms){
        while(ms--)delay_50us(20);          //100
}
void delay_50ms(uchar i){
        while(i--)delay_ms(50);
}
void delay_s(unsigned char s){
        while(s--)delay_50ms(20);
}


clock.rar

137.18 KB, 下載次數: 0

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:92781 發表于 2024-12-13 10:47 | 只看該作者
重新看了一下,樓下是對的,void delay_50us(uchar us50)的局部變量i在第一次循環到0之后沒有重新賦值,后面相當于都是while(0),直接跳過了
回復

使用道具 舉報

板凳
ID:161164 發表于 2024-12-13 11:47 | 只看該作者
因為i沒有重裝
  1. void delay_50us(uchar us50)         //@12.000MHz
  2. {
  3.         uchar  i;
  4.         while(us50--)
  5.         {
  6.                 i = 198;                  //i=198:STC軟件中查到的12M時鐘數據
  7.                 while (--i);
  8.         }
  9. }
復制代碼

評分

參與人數 1黑幣 +5 收起 理由
jjy1039 + 5 很給力!很認真,我第一次看的時候忽略了,.

查看全部評分

回復

使用道具 舉報

地板
ID:1109793 發表于 2024-12-13 13:14 | 只看該作者
板凳說的對,局部變量只初始化一次,所以只在調用時=198;之后都是0,--i就是255了。在循環內部I = 198;就OK了。
回復

使用道具 舉報

5#
ID:1139662 發表于 2024-12-13 14:58 來自手機 | 只看該作者
1.循環變量初始化位置:在delay_50us函數中,變量i的初始化應該放在內層while循環的內部,以確保每次外層while循環時i都能被重新初始化。如果i只初始化一次,那么不論外層循環執行多少次,i的值都不會改變,導致延時不變。正確的做法是將i = 198;放在內層while循環內部,如下所示: void delay_50us(uchar us50){     //@12.000MHz     uchar  i;     while(us50--){         i = 198; // i=198:STC軟件中查到的12M時鐘數據         while (--i);     } } 這樣
回復

使用道具 舉報

6#
ID:1139664 發表于 2024-12-13 17:08 | 只看該作者
是不是太快了你沒看出來啊
回復

使用道具 舉報

7#
ID:483407 發表于 2024-12-19 11:40 | 只看該作者
論壇里有經驗的高手很多呀,感謝2、3、4、5、6樓的各位。仔細看了一下代碼,確實如各位所說。我還是經驗缺
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 在线只有精品 | 欧美色综合 | 欧美影院久久 | 欧美视频xxx | 国产精品日韩欧美一区二区 | 国产高清在线精品一区二区三区 | 婷婷综合激情 | 成年人在线观看视频 | 久久精品国产免费一区二区三区 | 国产精品69毛片高清亚洲 | 精品一区二区三区91 | 91亚洲国产亚洲国产 | 在线国产视频观看 | 久久精品久久久 | 国产黄a一级 | 精品国产一区二区在线 | 久久久精品在线 | 久久国产综合 | 激情六月丁香婷婷 | 亚洲第一成人影院 | 亚洲精品日本 | 免费久| 国产日韩一区二区 | 春色av| 久久精品国产a三级三级三级 | 国产精品久久片 | 亚洲一在线 | 北条麻妃99精品青青久久 | 精品亚洲永久免费精品 | 久久精品视频免费观看 | 久久精品在线播放 | 在线电影日韩 | 欧美性受xxxx白人性爽 | 欧美色综合一区二区三区 | 91精品国产91综合久久蜜臀 | 免费黄色在线观看 | 国产欧美一区二区三区久久人妖 | 亚洲福利一区二区 | 精品国产乱码久久久久久蜜柚 | 奇米av| 欧美精品久久久 |