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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1971|回復(fù): 5
打印 上一主題 下一主題
收起左側(cè)

51單片機倒計時程序 初學(xué)者求思路 中斷函數(shù)還沒有學(xué)

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:1002906 發(fā)表于 2022-1-21 19:20 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式

剛學(xué)單片機一周,布置的任務(wù)是讓數(shù)碼管從10變化到0,每次變化間隔1秒。我知道怎么從9變化到0,但是如何讓10變化到9呢?我只知道如何讓數(shù)碼管一直顯示10,但是不知道怎么讓10顯示1秒并且變成9。單片機用的清翔的開發(fā)板,有沒有大佬給個思路,非常感謝。

中斷函數(shù)沒有學(xué),目前只學(xué)了延時函數(shù),有沒有辦法用延時函數(shù)做到這個功能?

附上開發(fā)板原理圖。


開發(fā)板原理圖.png (100.19 KB, 下載次數(shù): 32)

開發(fā)板原理圖

開發(fā)板原理圖
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:213173 發(fā)表于 2022-1-21 21:36 | 只看該作者
用你能理解的寫法,用延時函數(shù)寫了兩位數(shù)碼管動態(tài)顯示10秒循環(huán)倒計時。

  1. #include <reg51.h>

  2. sbit dula=P2^6;                        //段
  3. sbit wela=P2^7;                        //位

  4. unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//共陰數(shù)碼管段碼
  5. unsigned int i;//無符號整型變量
  6. bit sign;//位變量
  7. char num;//有符號字符型變量

  8. void delay(unsigned int t)//延時函數(shù)
  9. {                                               
  10.         unsigned int i,j;
  11.         for(i=t;i>0;i--)
  12.                 for(j=110;j>0;j--);
  13. }

  14. void main(void)
  15. {
  16.         num=10;//賦初值
  17.         sign=0;//賦初值
  18.         while(1)
  19.         {
  20.                 sign=~sign;//取反
  21.                 if(sign==0)       
  22.                 {
  23.                         P0=0xfe;//送位碼
  24.                         wela=1;//位碼鎖存
  25.                         wela=0;
  26.                         P0=table[num/10];//送十位段碼
  27.                         dula=1;//段碼鎖存
  28.                         dula=0;
  29.                 }
  30.                 if(sign==1)       
  31.                 {
  32.                         P0=0xfd;//送位碼
  33.                         wela=1;//位碼鎖存
  34.                         wela=0;
  35.                         P0=table[num%10];//送個位段碼
  36.                         dula=1;//段碼鎖存
  37.                         dula=0;
  38.                 }
  39.                 i++;
  40.                 if(i==1000)//約1秒
  41.                 {       
  42.                         i=0;
  43.                         num--;
  44.                         if(num<0)
  45.                         {
  46.                                 num=10;
  47.                         }
  48.                 }
  49.                 delay(1);//延時約1ms,以此控制主循環(huán)周期
  50.         }
  51. }
復(fù)制代碼
回復(fù)

使用道具 舉報

板凳
ID:1002906 發(fā)表于 2022-1-21 23:09 | 只看該作者
wulin 發(fā)表于 2022-1-21 21:36
用你能理解的寫法,用延時函數(shù)寫了兩位數(shù)碼管動態(tài)顯示10秒循環(huán)倒計時。

好的,謝謝
回復(fù)

使用道具 舉報

地板
ID:857072 發(fā)表于 2022-1-22 00:23 來自手機 | 只看該作者
中斷不會,天問51了解一下。一鍵生成。
回復(fù)

使用道具 舉報

5#
ID:64068 發(fā)表于 2022-1-22 09:55 | 只看該作者
本帖最后由 kema 于 2022-1-22 09:59 編輯

給你個最笨的方法哈哈
i=10;

while(1)
{
if(i==10)
{
你會讓他顯示10
}

if(i==9)
{顯示9}

if(i==8)
{顯示8}
……

delay(1秒);
i--;
if(i==0)
i=10;


}簡單吧


回復(fù)

使用道具 舉報

6#
ID:1002906 發(fā)表于 2022-1-22 10:14 | 只看該作者
kema 發(fā)表于 2022-1-22 09:55
給你個最笨的方法哈哈
i=10;

讓他顯示10我會,但是不是得讓這個10一直刷新持續(xù)1s么?因為這個10我只會用動態(tài)顯示。你這個方法不能讓10持續(xù)顯示1s吧
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 美女黄色在线观看 | 一区二区三区国产 | 懂色中文一区二区在线播放 | 嫩草研究影院 | 成人精品免费 | a亚洲精品 | 美女在线观看国产 | 欧美一级久久久猛烈a大片 日韩av免费在线观看 | 毛片毛片毛片毛片毛片 | 一区二区三区国产好 | 欧美日韩视频 | 国产精品海角社区在线观看 | 成年人在线观看 | 最新免费av网站 | 中文字幕 在线观看 | 国产精品美女一区二区三区 | 91精品久久久久久久久久入口 | 久久精品欧美一区二区三区不卡 | 国产一区精品 | 国产在线中文字幕 | 色婷婷国产精品综合在线观看 | 欧美视频在线播放 | 91精品国产91久久综合桃花 | 欧美一极视频 | 国产成人精品亚洲日本在线观看 | 91精品国产高清久久久久久久久 | 国产精品美女久久久av超清 | 久久99精品久久久久蜜桃tv | 午夜男人天堂 | 久久视频免费看 | 欧美在线视频一区二区 | 仙人掌旅馆在线观看 | 一区精品视频 | 欧美国产精品 | 午夜影院在线观看视频 | 午夜一区二区三区在线观看 | 日韩在线 | av色在线 | 日韩中文字幕在线免费 | 免费一级片 | 久热久热 |