wwwxxx国产_337p日本欧洲亚洲大胆张筱雨_免费在线看成人av_日本黄色不卡视频_国产精品成熟老女人_99视频一区_亚洲精品97久久中文字幕_免费精品视频在线_亚洲色图欧美视频_欧美一区二三区

標題: 51單片機的水塔水位控制系統設計 [打印本頁]

作者: 622323wjl    時間: 2025-11-13 21:16
標題: 51單片機的水塔水位控制系統設計

代碼如下
  1. #include <reg51.h>

  2. // 數碼管段碼定義(共陰極,0-9)
  3. unsigned char code seg_code[] = {
  4.     0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F, 0x6F // 0-9
  5. };

  6. // 數碼管位選定義(低電平有效)
  7. sbit dig1 = P2^0;  // 千位
  8. sbit dig2 = P2^1;  // 百位
  9. sbit dig3 = P2^2;  // 十位
  10. sbit dig4 = P2^3;  // 個位

  11. // 按鍵與IO口定義
  12. sbit key_reset = P1^0;   // 重置按鍵
  13. sbit key_high = P1^1;    // 高水位按鍵
  14. sbit key_normal = P1^2;  // 正常水位按鍵
  15. sbit key_low = P1^3;     // 低水位按鍵
  16. sbit key_add = P1^4;     // 加10圈按鍵
  17. sbit key_sub = P1^5;     // 減10圈按鍵
  18. sbit motor = P1^7;       // 電機控制(水泵)

  19. // LED與IO口定義(狀態互斥)
  20. sbit led_reset = P3^0;   // 重置狀態燈
  21. sbit led_low = P3^1;     // 低水位紅燈
  22. sbit led_normal = P3^2;  // 正常水位綠燈
  23. sbit led_high = P3^3;    // 高水位黃燈
  24. sbit led_150 = P3^4;     // 150圈提示燈
  25. sbit led_300 = P3^5;     // 300圈提示燈
  26. sbit led_450 = P3^6;     // 450圈提示燈
  27. sbit motor_pulse = P3^7; // 電機脈沖輸入

  28. // 全局變量
  29. #define MAX_COUNT 9990    // 最大圈數(10的倍數,避免個位非0)
  30. #define DEFAULT_TARGET 450 // 默認目標圈數(抽滿水)
  31. unsigned int target_count = DEFAULT_TARGET;  // 目標圈數(10的倍數)
  32. unsigned int current_count = 0;              // 當前已轉圈數
  33. bit is_running = 0;                          // 水泵運行標志
  34. bit timer_flag = 0;                          // 0.5秒定時標志
  35. unsigned int timer_cnt = 0;                   // 定時器計數

  36. // 函數聲明
  37. void update_leds(void);
  38. void timer0_init(void);
  39. void delay_ms(unsigned int ms);
  40. void display_scan(void);
  41. void key_scan(void);
  42. void motor_run_one_circle(void);
  43. void clear_status_leds(void);

  44. // 定時器0初始化(0.5秒定時)
  45. void timer0_init() {
  46.     TMOD &= 0xF0;
  47.     TMOD |= 0x01;
  48.     TH0 = 0x4C;
  49.     TL0 = 0x00;
  50.     ET0 = 1;
  51.     EA = 1;
  52.     TR0 = 0;
  53. }

  54. // 定時器0中斷服務函數
  55. void timer0_isr() interrupt 1 {
  56.     TH0 = 0x4C;
  57.     TL0 = 0x00;
  58.     timer_cnt++;
  59.     if (timer_cnt >= 10) {  // 10*50ms=500ms(每圈時間)
  60.         timer_cnt = 0;
  61.         timer_flag = 1;
  62.     }
  63. }

  64. // 毫秒級延時
  65. void delay_ms(unsigned int ms) {
  66.     unsigned int i, j;
  67.     for (i = 0; i < ms; i++)
  68.         for (j = 0; j < 112; j++);  // 11.0592MHz晶振下約1ms
  69. }

  70. // 數碼管動態掃描
  71. void display_scan() {
  72.     unsigned char units, tens, hundreds, thousands;
  73.     unsigned int disp_num = current_count;

  74.     if (disp_num > MAX_COUNT) disp_num = MAX_COUNT;

  75.     // 提取各位數字
  76.     units = disp_num % 10;
  77.     tens = (disp_num / 10) % 10;
  78.     hundreds = (disp_num / 100) % 10;
  79.     thousands = (disp_num / 1000) % 10;

  80.     // 個位顯示
  81.     dig1 = 1; dig2 = 1; dig3 = 1; dig4 = 1;
  82.     P0 = seg_code[units];
  83.     delay_ms(1);
  84.     dig4 = 0;
  85.     delay_ms(2);
  86.     dig4 = 1;

  87.     // 十位顯示
  88.     dig1 = 1; dig2 = 1; dig3 = 1; dig4 = 1;
  89.     P0 = seg_code[tens];
  90.     delay_ms(1);
  91.     dig3 = 0;
  92.     delay_ms(2);
  93.     dig3 = 1;

  94.     // 百位顯示
  95.     dig1 = 1; dig2 = 1; dig3 = 1; dig4 = 1;
  96.     P0 = seg_code[hundreds];
  97.     delay_ms(1);
  98.     dig2 = 0;
  99.     delay_ms(2);
  100.     dig2 = 1;

  101.     // 千位顯示
  102.     dig1 = 1; dig2 = 1; dig3 = 1; dig4 = 1;
  103.     P0 = seg_code[thousands];
  104.     delay_ms(1);
  105.     dig1 = 0;
  106.     delay_ms(2);
  107.     dig1 = 1;
  108. }

  109. // 清除所有狀態燈(P3.0-P3.3)
  110. void clear_status_leds(void) {
  111.     led_reset = 0;
  112.     led_low = 0;
  113.     led_normal = 0;
  114.     led_high = 0;
  115. }

  116. // 更新LED狀態(圈數提示燈)
  117. void update_leds(void) {
  118.     led_150 = (current_count >= 150) ? 1 : 0;
  119.     led_300 = (current_count >= 300) ? 1 : 0;
  120.     led_450 = (current_count >= 450) ? 1 : 0;  // 450圈提示(默認滿水)
  121. }

  122. // 按鍵掃描(核心:加/減10圈邏輯)
  123. void key_scan() {
  124.     // 重置按鍵:恢復默認450圈目標,計數清零
  125.     if (key_reset == 0) {
  126.         delay_ms(10);  // 消抖
  127.         if (key_reset == 0) {
  128.             current_count = 0;
  129.             target_count = DEFAULT_TARGET;  // 重置為默認450圈
  130.             motor = 0;
  131.             is_running = 0;
  132.             TR0 = 0;
  133.             clear_status_leds();
  134.             led_reset = 1;
  135.             update_leds();
  136.             while (key_reset == 0) display_scan();
  137.         }
  138.     }

  139.     // 低水位按鍵:啟動水泵
  140.     if (key_low == 0) {
  141.         delay_ms(10);
  142.         if (key_low == 0) {
  143.             is_running = 1;
  144.             motor = 1;
  145.             TR0 = 1;
  146.             clear_status_leds();
  147.             led_low = 1;
  148.             while (key_low == 0) display_scan();
  149.         }
  150.     }

  151.     // 正常水位按鍵:停止水泵
  152.     if (key_normal == 0) {
  153.         delay_ms(10);
  154.         if (key_normal == 0) {
  155.             motor = 0;
  156.             is_running = 0;
  157.             TR0 = 0;
  158.             clear_status_leds();
  159.             led_normal = 1;
  160.             while (key_normal == 0) display_scan();
  161.         }
  162.     }

  163.     // 高水位按鍵:停止水泵
  164.     if (key_high == 0) {
  165.         delay_ms(10);
  166.         if (key_high == 0) {
  167.             motor = 0;
  168.             is_running = 0;
  169.             TR0 = 0;
  170.             clear_status_leds();
  171.             led_high = 1;
  172.             while (key_high == 0) display_scan();
  173.         }
  174.     }

  175.     // 加按鍵:每次增加10圈(限制不超過最大值)
  176.     if (key_add == 0) {
  177.         delay_ms(10);
  178.         if (key_add == 0) {
  179.             if (target_count + 10 <= MAX_COUNT) {
  180.                 target_count += 10;  // 加10圈
  181.             }
  182.             while (key_add == 0) display_scan();  // 等待釋放,避免連加
  183.         }
  184.     }

  185.     // 減按鍵:每次減少10圈(限制不低于0)
  186.     if (key_sub == 0) {
  187.         delay_ms(10);
  188.         if (key_sub == 0) {
  189.             if (target_count >= 10) {  // 確保不低于0
  190.                 target_count -= 10;  // 減10圈
  191.             }
  192.             while (key_sub == 0) display_scan();  // 等待釋放,避免連減
  193.         }
  194.     }
  195. }

  196. // 電機每轉一圈處理
復制代碼




作者: lf1286    時間: 2025-11-30 14:49
里面的圈指的是什么?




歡迎光臨 (http://m.izizhuan.cn/bbs/) Powered by Discuz! X3.1
精品自拍视频在线观看| 亚洲美女视频一区| 国产精品初高中精品久久| 欧美性另类69xxxx| 懂色中文一区二区在线播放| 久久综合婷婷综合| 亚洲免费av一区二区| 国产亚洲精品va在线观看| 成年免费视频| 亚洲成色777777女色窝| 一道本在线观看| 伊人久久一区| 成人精品福利视频| 国产无遮挡裸体视频在线观看| 久久久精品人体av艺术| 国产探花在线看| 狠久久av成人天堂| 亚洲天堂资源在线| 久久精品国内一区二区三区| 亚洲色图 激情小说| 丰满放荡岳乱妇91ww| 五月天激情国产综合婷婷婷| 亚洲激情五月婷婷| 深夜福利视频网站| 欧美一区国产二区| 狠狠干天天干| 欧美自拍大量在线观看| 黑人玩欧美人三根一起进| 欧美激情国产精品| 在线黄色.com| 久久精品午夜一区二区福利| 牛牛国产精品| 免费日韩一级片| 亚洲精品自在久久| 天堂8中文在线| 激情综合在线观看| a在线欧美一区| 欧美一区二区激情视频| 成人福利视频网站| 国产精品久久无码一三区| 亚洲综合免费观看高清在线观看| 中文天堂最新版本在线观看| 综合欧美国产视频二区| 免费av网站在线看| 久久草视频在线看| 国产成人精品福利| 人妻无码视频一区二区三区| 成人自拍视频| 色中文字幕在线观看| 久久成人麻豆午夜电影| 日日摸夜夜夜夜夜添| 欧美日韩一区在线观看视频| 国产爆初菊在线观看免费视频网站| 国语对白做受69| 91福利国产在线观看菠萝蜜| 无罩大乳的熟妇正在播放| 一本色道久久综合亚洲精品酒店 | www.777色| 久热精品视频在线观看一区| 狠狠人妻久久久久久综合麻豆| 成人午夜电影久久影院| 亚洲图片中文字幕| 欧亚洲嫩模精品一区三区| 手机福利小视频在线播放| 日韩中文字幕av| 热久久中文字幕| 日韩av在线免播放器| 中文字幕永久在线| 成人黄页毛片网站| 亚洲精品国产熟女久久久| 中文字幕久久午夜不卡| 亚洲精品国产一区二区| 国产成人精品在线视频| 在线观看精品一区二区三区| 亚洲图片欧洲图片av| 福利视频在线| 黄色三级中文字幕| 99久久99久久精品免费观看| 国产男男chinese网站| 亚洲免费黄色| 在线观看国产小视频| 日韩一区二区影院| 91九色porn在线资源| 欧美有码在线观看视频| fc2ppv国产精品久久| 在线观看av的网址| 岛国一区二区在线观看| 五福影院新址进入www1378| 天涯成人国产亚洲精品一区av| 国产黄色av网站| 日韩在线播放一区| 亚洲视频国产| 岛国毛片在线观看| 国产在线一区二区| 国产污污视频在线观看| 91精品国产综合久久香蕉的特点| 91小视频xxxx网站在线| 亚洲午夜精品一区| 激情五月综合网| 内射中出日韩无国产剧情| 一区二区三区不卡在线观看| 精品美女视频在线观看免费软件 | 猫咪av永久| 欧美性天天影院| 天堂网av成人| av在线免费看片| 一区二区三区欧美久久| av网站无病毒在线| 久久人妻无码一区二区| 国产真实有声精品录音| 91午夜精品亚洲一区二区三区| 久久精品视频在线| 久久精品国产大片免费观看| 自拍偷拍校园春色| 久久久亚洲午夜电影| 中文在线天堂网www| 国产精品网红福利| 日韩av在线发布| 麻豆精品视频入口| 亚洲欧美国产精品va在线观看| 国产爆初菊在线观看免费视频网站| 亚洲乱码国产一区三区| 欧美久久久久久久久| 日本三级视频在线播放| 亚洲色图欧美日韩| 欧美日韩成人激情| 69视频在线| 成年人视频大全| 欧美亚洲一区| 国产成人精品777777| 欧美中文字幕视频在线观看| 久久精品男女| 最近最新mv在线观看免费高清| 色七七在线观看| 精品久久人人做人人爽| 国产精品成人a在线观看| 三年片免费观看大全| 美女黄色片视频| 亚洲精选在线观看| 亚洲精品系列| 天堂在线视频| 日韩女同一区二区三区| 韩日精品中文字幕| 粉嫩一区二区三区在线观看| 日韩欧美高清在线观看| 国严精品久久久久久亚洲影视| 一区二区三区国产| 欧美色图国产精品| 调教视频vk| 免费视频一二三区| 日本视频一区二区在线观看| 欧美三级韩国三级日本三斤| 日韩中文字幕区一区有砖一区| 青青草av免费在线观看| 极品人妻一区二区| 亚洲成人免费在线视频| 久久亚洲精品中文字幕蜜潮电影| 欧美另类极品videosbest视频| 日本福利视频一区| 中文字幕国产精品久久| 国产精品影音先锋| 国模精品一区二区| 日韩xxx高潮hd| 国产精品欧美久久| 欧美日韩国产高清一区二区三区 | 黑人性受xxxx黑人xyx性爽| 91黄色精品| 亚洲一区二区三区不卡国产欧美| 丁香婷婷久久| 国产激情视频一区二区三区| 亚洲免费黄色网| 欧美无乱码久久久免费午夜一区| 在线观看操人| 中文字幕乱码视频| 91黑丝高跟在线| 亚洲午夜精品一区 二区 三区| 成年在线播放小视频| 538任你躁在线精品视频网站| 99中文字幕| 欧美三级乱人伦电影| 蘑菇福利视频一区播放| 国产精品最新乱视频二区| av男人的天堂av| 热re99久久精品国产99热| 亚洲精品一区二区在线观看| 老鸭窝一区二区久久精品| 麻豆网站免费在线观看| 国产精品人人爱一区二区白浆| www.色多多| 久久香蕉综合色| 亚洲精品美女网站| 国产亚洲婷婷免费| 国产二区三区四区| 欧美日韩精品在线观看视频 | 成人三级做爰av| 国产在线视频欧美一区二区三区| 在线看日韩欧美| 午夜影院在线观看欧美| 国内精品第一页| 欧美在线高清| 精品成人免费一区二区在线播放| 午夜爽爽爽男女免费观看影院| 极品白嫩的小少妇| 热门国产精品亚洲第一区在线| 亚洲欧美视频在线观看视频| 国产一区二区欧美| 久草影视在线| www日本高清视频| 天天操,天天操| 国产精品久久久久久久久影视 | 国产精品第二十页| 日韩网站在线免费观看| 日韩在线欧美在线| 国产色产综合产在线视频| 狂野欧美xxxx韩国少妇| 可以在线观看的av| 男男gay免费网站| 妺妺窝人体色www婷婷| 亚洲一区亚洲二区亚洲三区| 欧美一区二区三区日韩| 99re成人精品视频| 美女尤物久久精品| 亚洲精品**中文毛片| 国产又粗又猛又黄又爽无遮挡| 亚洲黄色网址在线观看| 国产精品久久久久久亚洲调教| youjizz久久| 九九精品调教| 国产传媒视频在线观看| www.黄色av| 老女人性淫交视频| 粉嫩av一区二区三区天美传媒 | 97久久精品人人澡人人爽| 婷婷综合伊人| 日韩中文字幕在线一区| 国产伦理精品| 九九九伊在人线综合| 欧美1819sex性处18免费| 亚洲国产成人在人网站天堂| 一级黄色片网站| 五月婷婷激情网| 三级av在线免费观看| av网站免费在线播放| 99精品999| 五月天亚洲视频| 国产网站免费在线观看| 亚洲人成网站在线播放2019| 国产91亚洲精品一区二区三区| 日韩av电影在线播放| aa级大片欧美三级| 天天射综合网视频| 国产精品伦理久久久久久| 欧美aaaa视频| 欧美.www| 亚洲影院一区| 久久久久综合| 久久99精品久久久久| fc2成人免费人成在线观看播放| 国产九九视频一区二区三区| 99久久久精品| 亚洲视频免费观看| 亚洲日本乱码在线观看| 精品一区二区在线播放| 一本综合久久| 日韩dvd碟片| 超碰成人福利| 成人香蕉视频| 理论片午午伦夜理片在线播放| 日本高清中文字幕| www色啪啪| 日本免费看片网站| 黄色小视频免费| 九色porn蝌蚪| 色在线视频播放| 国产精品区一区二| 国产女人高潮的av毛片| 在线观看黄网站| 91久久免费视频| 暗呦丨小u女国产精品| 中文字幕无码乱码人妻日韩精品| 国产免费看av| 国自产拍偷拍精品啪啪一区二区| 国产日韩精品推荐| 日韩亚洲综合在线| 亚洲国产日韩欧美在线99| 亚洲成av人片一区二区梦乃| 欧美三级不卡| 国产麻豆精品久久| 欧美一区影院| 99在线|亚洲一区二区| 久久看片网站| 东方aⅴ免费观看久久av| 91成人网在线观看| 国产传媒在线观看| 欧美jizz18hd性欧美| 国产粉嫩在线观看| 欧美日韩在线精品一区二区三区激情综合| 国产成人精品亚洲日本在线观看| 免费精品一区| 婷婷久久综合九色综合99蜜桃| 成人免费在线电影| 麻豆资源在线| 欧美色图另类| av在线理伦电影| 天堂精品久久久久| 成人免费看片39| 999成人精品视频线3| 久久国产成人精品| 91日韩视频| 国产精品亚洲专一区二区三区| ●精品国产综合乱码久久久久| 精品久久久久久亚洲国产300| 亚洲第一精品福利| 欧美影院久久久| 亚洲一区二区三区午夜| 欧美精品色视频| 亚洲GV成人无码久久精品| 影音先锋中文字幕在线| 理论片在线观看理伦片| 国产第一精品| 99精品热6080yy久久| 国产精品亲子伦对白| 精品av久久707| 91精品在线国产| 男人天堂999| 国产成人愉拍精品久久| 国产美女在线一区二区三区| 高清av在线| 久9re热视频这里只有精品| 久久aⅴ国产欧美74aaa| 成人做爰免费视频免费看| 最新亚洲视频| 欧美特黄级在线| 国产精彩精品视频| 国产在线久久久| 国产无遮挡猛进猛出免费软件 | 免费黄色大片| jyzzz在线观看视频| 婷婷亚洲精品| 不卡在线观看av| 亚洲第一区中文99精品| 久久久久久香蕉网| 国产精品成人观看视频免费| 黄色三级中文字幕| 午夜成人亚洲理伦片在线观看| 久久精品视频2| 精品一区二区91| 欧美激情图区| 国产精品自在线拍| 在线播放不卡| 国产精品萝li| 日韩精品视频免费| 国产成人av一区二区三区| 992kp免费看片| 少妇高潮久久久| 天使と恶魔の榨精在线播放| 亚洲区综合中文字幕日日| 成人精品gif动图一区| 欧美影视一区二区三区| 欧美福利视频在线| 91久久久久久久一区二区| 熟女俱乐部一区二区| 国产对白国语对白| 在线最新版中文在线| 欧美一级二级三级视频| 99久久国产综合精品色伊| 国产清纯美女被跳蛋高潮一区二区久久w| 欧美一区二区三区在线观看视频| 国产传媒欧美日韩| 国产黄色片在线免费观看| 美女啪啪无遮挡| 欧美videos极品另类| 成人免费直播在线| 91免费视频网| 88国产精品欧美一区二区三区| 拔插拔插华人永久免费| 一本大道久久a久久精品| 国内不卡的一区二区三区中文字幕| 亚洲国产精品精华液2区45| 国产精品自拍视频| 国产精品久久国产精麻豆96堂| 一级毛片视频| 国产亚洲精品自拍| 最新亚洲国产精品| 国产999免费视频| 小次郎av收藏家| 国产在线欧美| 亚洲欧美日韩精品久久亚洲区| 国产理论在线播放| 在线观看色视频| 婷婷中文字幕一区| 亚洲激情 国产| 制服丝袜中文字幕第一页| 娇小发育未年成性色xxx8| 性欧美69xoxoxoxo| 日韩高清免费观看| 精品国产伦一区二区三区观看方式 | 精品无人码麻豆乱码1区2区| 91国产美女在线观看| 精品熟女一区二区三区|