




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、一路模擬電壓檢測器設計1、 任務與計劃:任務主要內容: 采用AT89S51單片機的I/O口,選用PCF8591串行模數轉換器,采用C語言編程,設計一路模擬電壓檢測器,顯示班級和學號。 工作學習過程要求: 1.單片機并口共用、LED數碼管動態(tài)顯示及AD轉換器知識和案例學習,畫出電路圖, 編寫源程序。2.運行驗證:加載程序運行演示。2、 方案與電路設計如圖1-1數碼管鎖存器模塊如圖1-2PCF8591A/D轉換模塊如圖1-3電路連接圖如圖1-4開發(fā)板模塊連接模塊接線表圖1-1圖1-2圖1-3圖1-4三、程序設計#include <reg52.h> #include “i2c.h”#in
2、clude “display.h”#define AddWr 0x90 /寫數據地址 #define AddRd 0x91 /讀數據地址extern bit ack;unsigned char ReadADC(unsigned char Chl); /輸入參數 Chl 表示需要轉換的通道,范圍從0-3,返回值范圍0-255bit WriteDAC(unsigned char dat);void DelayMs(unsigned char z)unsigned int x,y;for(x=z;x>0;x-)for(y=110;y>0;y-);main() unsigned char
3、num=0; unsigned char a=0; Init_Timer0();while (1) a=ReadADC(0); num=a*1.0*5/255*1000; /求各顯示值 TempData0=DuanManum/100; /求百位 TempData1=DuanMa(num%100)/10; /求十位 TempData2=DuanMa(num%100)%10; /求個位 TempData3=DuanMa1; TempData4=DuanMa1; TempData5=0x40; TempData6=DuanMa1; TempData7=DuanMa9; DelayMs(100); u
4、nsigned char ReadADC(unsigned char Chl) unsigned char Val; Start_I2c(); /啟動總線 SendByte(AddWr); /發(fā)送器件地址 if(ack=0)return(0); SendByte(0x40|Chl); /發(fā)送器件子地址 if(ack=0)return(0); Start_I2c(); SendByte(AddWr+1); if(ack=0)return(0); Val=RcvByte(); NoAck_I2c(); /發(fā)送非應答位 Stop_I2c(); /結束總線 return(Val); 4、 安裝與調試如
5、圖1-5電壓中間值顯示如圖1-6電壓最大值顯示如圖1-7電壓最小值顯示5、 小結 通過本次實訓,我基本了解到T2C協(xié)議的基本內容,與各項功能,提高了對單片機總線傳輸的應用,加深了對PCH8591模數轉換芯片的應用能力,加深了對AD轉換的理解,同事提高了我的畫圖視圖能力,電路連接能力,以及電路各元件的特性。三路模擬電壓檢測器設計1、 任務與計劃任務主要內容: 采用AT89S51單片機的I/O口,選用PCF8591串行模數轉換器,采用C語言編程,設計四路模擬電壓檢測器,顯示班級和學號。 工作學習過程要求: 1.單片機并口共用、LED數碼管動態(tài)顯示及AD轉換器知識和案例學習,畫出電路圖, 編寫源程序
6、。 2.運行驗證:加載程序運行演示2、 方案與電路設計如圖1-1數碼管鎖存器模塊如圖1-2PCF8591A/D轉換模塊如圖1-3電路連接圖如圖1-4開發(fā)板模塊連接模塊接線表 圖1-1 圖1-2圖1-3圖1-43、 程序設計#include <reg52.h> #include "i2c.h"#include "display.h"#define AddWr 0x90 /寫數據地址 #define AddRd 0x91 /讀數據地址extern bit ack;unsigned char ReadADC(unsigned char Chl);
7、/輸入參數 Chl 表示需要轉換的通道,范圍從0-3,返回值范圍0-255bit ReadADFlag;void DelayMs(unsigned char z)unsigned int x,y;for(x=z;x>0;x-)for(y=110;y>0;y-);void main() unsigned char i,num=0; Init_Timer0(); DelayMs(100);while (1) /主循環(huán) if(ReadADFlag) ReadADFlag=0; for(i=0;i<5;i+) /連續(xù)讀五次,輸入通道后多讀幾次,取最后一次值,以便讀出穩(wěn)定 num=Re
8、adADC(0);num=num*5*10/256;/乘以10表示吧實際值擴大10倍,方便下一步處理TempData0=DuanManum/10|0x80; TempData1=DuanManum%10; for(i=0;i<5;i+) num=ReadADC(1);num=num*5*10/256;TempData2=DuanManum/10|0x80; TempData3=DuanManum%10;for(i=0;i<5;i+) num=ReadADC(2);num=num*5*10/256;TempData4=DuanManum/10|0x80; TempData5=Duan
9、Manum%10;TempData6=DuanMa1; /顯示學號 TempData7=DuanMa9; unsigned char ReadADC(unsigned char Chl) unsigned char Val; Start_I2c(); /啟動總線 SendByte(AddWr); /發(fā)送器件地址 if(ack=0)return(0); SendByte(0x40|Chl); /發(fā)送器件子地址 if(ack=0)return(0); Start_I2c(); SendByte(AddWr+1); if(ack=0)return(0); Val=RcvByte(); NoAck_I
10、2c(); /發(fā)送非應位 Stop_I2c(); /結束總線 return(Val); 4、 安裝與調試如圖1-5電壓最大值顯示如圖1-6電壓中間值顯示如圖1-7電壓最小值顯示 圖1-5圖1-6圖1-7五、小結 通過本次實訓,基本掌握PCF8591模數轉換的原理與用法,復習并鞏固了74HC573鎖存器,還有8位共陰極的數碼管的應用,掌握了延時函數的改寫,以及程序編譯問題的分析與解決,加深了對單片機定時器與計數器的掌握,提高了對電路連接原理的分析能力。DA轉換器動態(tài)顯示應用設計 一、任務與計劃任務主要內容:采用AT89S51單片機的I/O口,選用PCF8591串行數模轉換器,采用C語言編程,設計
11、DA數模轉換器,顯示班級和學號。 工作學習過程要求: 1.單片機并口共用、LED數碼管動態(tài)顯示及DA轉換器知識和案例學習,畫出電路圖, 編寫源程序。 2.運行驗證:加載程序運行演示。2、 方案與電路設計如圖1-1數碼管鎖存器模塊如圖1-2PCF8591A/D轉換模塊如圖1-3電路連接圖如圖1-4開發(fā)板模塊連接模塊接線表 圖1-1 圖1-2圖1-3圖1-43、 程序設計#include <reg52.h> #include "i2c.h"#include "display.h"#define AddWr 0x90 /寫數據地址 #define
12、AddRd 0x91 /讀數據地址extern bit ack;unsigned char ReadADC(unsigned char Chl);bit WriteDAC(unsigned char dat);void delay(unsigned char z)unsigned int x ,y;for(x=z;x>0;x-)for(y=110;y>0;y-);void main() unsigned char num=0; Init_Timer0();while (1) /主循環(huán) WriteDAC(num); num+;/從0255反復循環(huán)累加 TempData0=DuanMa
13、num/100; /分離百位 TempData1=DuanMa(num%100)/10;/分離十位 TempData2=DuanMa(num%100)%10; /分離個位 TempData3=0x40; TempData4=DuanMa1;/顯示班級學號 TempData5=DuanMa1; TempData6=DuanMa1; TempData7=DuanMa9; delay(100); bit WriteDAC(unsigned char dat) Start_I2c(); /啟動總線 SendByte(AddWr); /發(fā)送器件地址 if(ack=0)return(0); SendByt
14、e(0x40); /發(fā)送器件子地址 if(ack=0)return(0); SendByte(dat); /發(fā)送數據 if(ack=0)return(0); Stop_I2c(); 四、安裝與調試如圖1-5數碼管顯示數字信號LED燈亮度觀察模擬信號如圖1-6數碼管一開始LED亮度 圖1-5圖1-65、 小結通過本次實訓我了解了從模數轉換到數模轉換的的跳變,掌握了A/D轉換的芯片基本應用,對PCF8591芯片的更加深入的掌握,復習了鎖存器的應用,夯實了以后發(fā)展的基礎,掌握了子函數的調用,以及數組的應用,掌握了I2C總線協(xié)議的應用。 液晶顯示數字電壓表設計 一、任務與計劃任務主要內容: 采用AT8
15、9S51單片機的I/O口,選用PCF8591串行模數轉換器,采用C語言編程,設計數字電壓表,采用液晶顯示,顯示電壓、班級和學號。 工作學習過程要求: 1.單片機并口共用、液晶顯示及AD轉換器知識和案例學習,畫出電路圖, 編寫源程序。 2.運行驗證:加載程序運行演示。2、 方案與電路設計如圖1-1液晶顯示模塊如圖1-2PCF8591A/D轉換模塊如圖1-3電路連接圖如圖1-4開發(fā)板模塊連接模塊接線表圖1-1圖1-2圖1-3圖1-43、 程序設計#include <reg52.h> #include "i2c.h"#include "1602.h"
16、;#include <stdio.h>#define AddWr 0x90 /寫數據地址 #define AddRd 0x91 /讀數據地址extern bit ack;unsigned char ReadADC(unsigned char Chl);bit WriteDAC(unsigned char dat);void DelayMs(unsigned char z);void DelayMs(unsigned char z)unsigned int x,y;for(x=z;x>0;x-)for(y=110;y>0;y-);void main() unsigned
17、char num=0,i; unsigned char temp7;/定義顯示區(qū)域臨時存儲數組 float Voltage; /定義浮點變量 LCD_Init(); /初始化液晶 DelayMs(20); /延時有助于穩(wěn)定 LCD_Clear(); /清屏while (1) /主循環(huán) for(i=0;i<5;i+)/連續(xù)讀5次,取最后一次,以便讀取穩(wěn)定值 num=ReadADC(0); /讀取第1路電壓值,范圍是0-255 Voltage=(float)num*5/256; /根據參考電源VREF算出時間電壓,float是強制轉換符號,用于將結果轉換成浮點型 sprintf(temp,&
18、quot;%4.3fV",Voltage);/格式輸出電壓值,%4.3f 表示浮點輸出,共4位數,小數點后3位 LCD_Write_String(0,0,temp); LCD_Write_String(7,0,"1101-19 LiuPP"); DelayMs(200); unsigned char ReadADC(unsigned char Chl) unsigned char Val; Start_I2c(); /啟動總線 SendByte(AddWr); /發(fā)送器件地址 if(ack=0)return(0); SendByte(0x40|Chl); /發(fā)送器件子地址 if(ack=0)return(0); Start_I2c();
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030中國失禁裝置行業(yè)市場現狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030中國天絲坯布行業(yè)發(fā)展分析及發(fā)展前景與投資研究報告
- 2025-2030中國多形性膠質母細胞瘤(GBM)療法行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略研究報告
- 保障性住房受理服務行業(yè)跨境出海戰(zhàn)略研究報告
- 2025-2030中國復古地板行業(yè)市場全景調研及投資價值評估咨詢報告
- 外國特色風味正餐行業(yè)跨境出海戰(zhàn)略研究報告
- 2025-2030中國塑覆銅管市場運行態(tài)勢與競爭力深度研究研究報告版
- 2025-2030中國城軌車輛供電行業(yè)市場發(fā)展分析及發(fā)展趨勢與投資前景研究報告
- 2025-2030中國垃圾發(fā)電設備行業(yè)市場發(fā)展深度分析及前景趨勢與投資研究報告
- 2025-2030中國地西泮行業(yè)市場現狀供需分析及投資評估規(guī)劃分析研究報告
- 養(yǎng)老年護理員職業(yè)道德規(guī)范
- 2025年-浙江建筑安全員A證考試題庫附答案
- 動物生理學第十二章-泌乳
- 金屬礦床地下開采-全知識點
- 血站服務禮儀培訓
- 八下歷史第三單元大單元教學設計
- 本科畢業(yè)論文完整范文(滿足查重要求)城市社區(qū)管理中存在的問題與對策研究
- 房屋市政工程生產安全重大事故隱患判定標準(2024版)危險性較大的分部分項工程專項施工方案嚴重缺陷清單(試行)解讀
- 《明清家居家具設計》課件
- 與父母依戀關系和與同伴依戀關系量表(IPPA)
- ANCA相關性小血管炎
評論
0/150
提交評論