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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

有大佬能幫我看看51的溫度和ph測不出來是怎么回事

查看數: 461 | 評論數: 1 | 收藏 0
關燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發布時間: 2025-4-21 16:22

正文摘要:

#include <reg51.h> #include <intrins.h> // DS18B20???? sbit DS18B20_DQ = P3^7; // ADC0832???? sbit ADC_CLK = P1^0; sbit ADC_DO  = P1^1; sbit ADC_CS  = P1^2; / ...

回復

ID:404160 發表于 2025-4-22 15:42
電路圖底部那三只按鍵分別連在 P3.2、P3.3、P3.4 上(INT0、INT1、T0)
代碼中卻寫成:
sbit KEY_SET = P3^1;
sbit KEY_ADD = P3^2;
sbit KEY_SUB = P3^3;
應該改為:
sbit KEY_SET = P3^2;
sbit KEY_ADD = P3^3;
sbit KEY_SUB = P3^4;

電路圖上 ADC0832 的 DI、DO 是分開的兩根線:

DI(寫入控制位) 接在 P1.1

DO(讀出 A/D 數據) 接在 P1.3

代碼中卻只定義了一個 ADC_DO = P1^1;,既用來寫又用來讀:

sbit ADC_CLK = P1^0;
sbit ADC_DO  = P1^1;   // 實際應是 ADC_DI
sbit ADC_CS  = P1^2;
// 缺少: sbit ADC_DO = P1^3;
改法:

sbit ADC_CLK = P1^0;
sbit ADC_DI  = P1^1;    // 寫控制位
sbit ADC_DO  = P1^3;    // 讀數據位
sbit ADC_CS  = P1^2;
同時,ADC0832 的數據輸出前還有兩個“空”位需要丟棄(datasheet 要求在 SGL/ODD 之后再時鐘兩次),你的 for(i=0;i<8;i++) 開始讀時實際上少跑了這兩個時鐘,把數據錯排了。
pH 閾值沒有被顯示出來
你在 Key_Process() 里調整了 ph_high/ph_low,但主循環里并沒有把它們用 LCD_ShowValue() 打出來,用戶按鍵調節時屏幕看不到反饋。

建議在第二行或第三行再加兩處 LCD_ShowValue(),把當前的 pH 高低閾值實時顯示。

(次要)DS18B20 的時序延時過長
你的 Delayms(1) 是約 1 ms,但 DS18B20 寫“1”位用的是低電平保持 1~15 μs(而你保持了 1 ms)、寫“0”位要保持 60~120 μs(1 ms 也 OK)。

雖然過長的延時通常設備“能通用”,但如果后面出現不穩定,建議改成用us 級的延時子函數更精準。

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 免费黄色大片 | 久久视频一区二区 | 一级片久久久 | 日韩av在线看 | 久久综合五月天 | 国产性生活 | 亚洲另类视频 | 日韩免费视频一区二区 | 亚洲精品一区二区三区精华液 | 亚洲久久久久久 | 秘密爱大尺度做爰呻吟 | 日韩精品在线免费观看 | 91欧美激情一区二区三区成人 | 性生活毛片 | 91蜜桃视频 | 亚洲国产精品久久 | 亚洲 欧美 另类 综合 偷拍 | 成人福利网 | 午夜激情网 | 久久精品播放 | 国产成人免费 | 五月天激情综合网 | 亚洲第一免费视频 | 欧美在线一级 | 黄色片网站在线观看 | 少妇视频在线观看 | 久久九九99 | 欧美三级又粗又硬 | 日韩成人高清 | 97久久久久| 夜夜狠狠擅视频 | 午夜99| 国产成人精品亚洲男人的天堂 | 免费国产一区 | 日韩高清在线观看 | 最新国产精品 | 久草视频观看 | 一区二区国产在线 | 国产美女一区二区三区 | 欧美激情自拍 | 天堂中文在线资 |