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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

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

可顯示分秒的51單片機(jī)定時(shí)器秒表仿真(矩陣鍵盤輸入+8位數(shù)碼管)C語言源程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
這是我上個(gè)月做的單片機(jī)電路圖及proteus仿真圖用了一星期的時(shí)間
附件里有proteus仿真電路圖和文件單片機(jī)源代碼
都是自己原創(chuàng)的,沒有錯(cuò)誤,還帶注釋,方便理解,方便使用
可以顯示分秒,運(yùn)用定時(shí)器設(shè)計(jì)的一款秒表仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)


單片機(jī)源程序如下:
  1. #include<reg52.h>
  2. #define u8 unsigned char
  3. #define u16 unsigned int
  4. /******端口定義******/
  5. #define DATA P0
  6. sbit seg_sel = P1^4;
  7. sbit bit_sel = P1^5;
  8. sbit start = P3^2;
  9. sbit store = P3^3;
  10. sbit diskey = P3^4;
  11. sbit reset = P3^5;
  12. /*********變量定義********/
  13. u16 tem_ms;
  14. u8 n_ten_ms,n_sec,n_min;
  15. u8 run_flag;   //當(dāng)run_flag為1,代表開始計(jì)數(shù)
  16. u8 code seg_tab[]=
  17. {
  18.         0xc0,0xf9,0xa4,0xb0,
  19.         0x99,0x92,0x82,0xf8,
  20.         0x80,0x90,0x88,0x83,
  21.         0xc6,0xa1,0x86,0x8e
  22. };
  23. u8 code bit_tab[]=
  24. {
  25.         0x01,0x02,0x04,0x08,
  26.         0x10,0x20,0x40,0x80
  27. };
  28. u8 temp_buf[5][3];
  29. u8 arr_pt;
  30. void delay(u16 x)
  31. {
  32.         u16 i,j;
  33.         for(i=x;i>0;i--)
  34.         for(j=110;j>0;j--);
  35. }
  36. void display_led(u8 which_bit,u8 which_number)
  37. {
  38.         bit_sel = 1;
  39.         DATA = bit_tab[which_bit];
  40.         bit_sel = 0;
  41.         seg_sel = 1;
  42.         DATA = seg_tab[which_number];
  43.         seg_sel = 0;
  44.         
  45. }
  46. void display(u8 which_bit,which_number)
  47. {
  48.         u8 x,y;
  49.         x = which_number/10;  // 分離十位
  50.         y = which_number%10;   //分離個(gè)位
  51.         if(which_bit == 1)
  52.         {
  53.                 display_led(7,y);
  54.                 delay(2);
  55.                 display_led(6,x);
  56.                 delay(2);
  57.         }
  58.         if(which_bit ==2)
  59.         {
  60.                 display_led(4,y);
  61.                 delay(2);
  62.                 display_led(3,x);
  63.                 delay(2);
  64.         }
  65.         if(which_bit ==3)
  66.         {
  67.                 display_led(1,y);
  68.                 delay(2);
  69.                 display_led(0,x);
  70.                 delay(2);
  71.         }

  72. }
  73. void reflash(void)
  74. {
  75.                 display(1,n_ten_ms);
  76.                 delay(2);
  77.                 display(2,n_sec);
  78.                 delay(2);
  79.                 display(3,n_min);
  80.                 delay(2);
  81. }
  82. int main(void)
  83. {
  84.         TMOD = 0x01;         //設(shè)置定時(shí)/計(jì)數(shù)器T0
  85.         TH0 = (65535-10000)/256;
  86.         TL0 = (65535-10000)%256;
  87.         EA = 1;                   //開放總中斷
  88.         ET0 = 1;          //開放定時(shí)器0的溢出中斷
  89.         //TR0 = 1;         //開始定時(shí)
  90.         while(1)
  91.         {
  92.                 if(start == 0)
  93.                 {
  94.                         delay(10);
  95.                         if(start ==0)
  96.                         {
  97.                                 run_flag = ~run_flag;        
  98.                         } while(!start);
  99.                 }
  100.                 if(reset == 0&&run_flag ==0)
  101.                 {
  102.                         delay(10);
  103.                         if(reset == 0)
  104.                         {
  105.                                 n_ten_ms = 0;
  106.                             n_sec =0;
  107.                                 n_min = 0;
  108.                         }  while(!reset);
  109.                 }
  110.                 if(store == 0)
  111.                 {
  112.                         delay(10);
  113.                         if(store ==0)
  114.                         {
  115.                                 if((arr_pt>=0)&&arr_pt<5)
  116.                                 {
  117.                                         temp_buf[arr_pt][0]= n_ten_ms;
  118.                                         temp_buf[arr_pt][1]= n_sec;
  119.                                         temp_buf[arr_pt][2]= n_min;
  120.                                         arr_pt++;
  121.                                 }

  122.                         }  while(!store);

  123.                 }
  124.                 if(run_flag)
  125.                 {
  126.                         TR0 = 1;
  127.                 }
  128.                 else if(!run_flag)
  129.                 {
  130.                         TR0 = 0;
  131.                         if(diskey ==0)
  132.                         {
  133.                                 delay(5);
  134.                                 if(diskey == 0)
  135.                                 {
  136.                                         arr_pt --;
  137.                                         n_ten_ms = temp_buf[arr_pt][0];
  138.                                         n_sec = temp_buf[arr_pt][1];
  139.                                         n_min = temp_buf[arr_pt][2];
  140.                                 }  while(!diskey);
  141.                         }
  142.                 }
  143.                 reflash();
  144.         }        
  145. }
  146. ……………………

  147. …………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼

所有資料51hei提供下載:
mabiao_diy.zip (84.49 KB, 下載次數(shù): 79)


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

使用道具 舉報(bào)

沙發(fā)
ID:324967 發(fā)表于 2018-5-8 19:01 | 只看該作者
proteus文件里邊找不到能打開的
回復(fù)

使用道具 舉報(bào)

板凳
ID:342728 發(fā)表于 2018-6-3 22:59 | 只看該作者
有接線方式嗎?
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产一区在线免费观看 | 欧美成年黄网站色视频 | 免费在线h视频 | 日韩精品在线观看一区二区三区 | 亚洲第一黄色网 | 国产精品1区2区 | 日本一区二区在线视频 | 日本一区二区三区视频在线 | 中文字幕日韩一区 | 黄色网址在线免费观看 | www.精品一区| 亚洲 成人 在线 | 在线āv视频 | 做a视频| 久久综合狠狠综合久久综合88 | 久久里面有精品 | 欧美国产精品久久久 | 国产亚洲精品成人av久久ww | 99爱视频| 欧美日本在线 | 免费同性女女aaa免费网站 | 视频一区在线观看 | 一区二区三区亚洲 | 国产一区二区三区四区 | 欧美成人综合 | 99久久精品免费 | 日韩三级免费观看 | 欧美中文字幕在线 | 欧美日韩国产在线观看 | 色婷婷综合久久久中文字幕 | 国产91久久久久 | 中文字幕一级毛片 | 精品视频一二区 | 国产99视频精品免费视频7 | 在线免费观看日本 | 黄色中文字幕 | 欧美日韩综合视频 | 国产人成在线观看 | 成人乱人乱一区二区三区软件 | 欧美视频成人 | 国产亚洲第一页 |