STC89C52單片機(jī)AD測試實(shí)驗(yàn)
實(shí)現(xiàn)功能: 調(diào)節(jié)實(shí)驗(yàn)板上的標(biāo)號為AD0的電位器改變電壓,通過PCF8591的采集,把
實(shí)驗(yàn)板型號:BS-XYD-C52
實(shí)驗(yàn)名稱:
編寫人:
編寫日期:
///////////////////////////////////////////////////////////////////////////
#include
#include
#define uchar unsigned char
#define uint unsigned int
uchar code table[]={
0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};//共陰數(shù)碼管1至F數(shù)字編碼
sbit duan=P2^6;
sbit wei=P2^7;
sbit sda=P2^0;
sbit scl=P2^1;
float val;
///////////////////////////////////////////////////////////////////////////
函數(shù)名稱:毫秒延時(shí)函數(shù)
函數(shù)功能:實(shí)現(xiàn)毫秒級的延時(shí)
參數(shù)介紹:Delay_MS: 定義需要延時(shí)的毫秒的數(shù)值
返回值:
注意事項(xiàng):本實(shí)驗(yàn)是在所用晶振為12M的前提下實(shí)現(xiàn)的毫秒延時(shí),本函數(shù)是通過循環(huán)的形
///////////////////////////////////////////////////////////////////////////
void DelayMs(uint Delay_MS)
{
}
///////////////////////////////////////////////////////////////////////////
函數(shù)名稱:DelayUs
函數(shù)功能:延時(shí)幾個(gè)微秒(us),用來IIC總線延時(shí)
參數(shù)介紹:無
返回值:
注意事項(xiàng):無
///////////////////////////////////////////////////////////////////////////
void DelayUs()
{;;}
///////////////////////////////////////////////////////////////////////////
函數(shù)名稱:Display_V
函數(shù)功能:把通過PCF8591采集到的數(shù)據(jù),在單片機(jī)處理完之后,顯示在數(shù)碼管上
參數(shù)介紹:cBai:要顯示在第一個(gè)數(shù)碼管上的數(shù)字
返回值:
注意事項(xiàng):注意實(shí)驗(yàn)板上所要用到底的數(shù)碼管為共陰極的數(shù)碼管
///////////////////////////////////////////////////////////////////////////
void
{
}
///////////////////////////////////////////////////////////////////////////
函數(shù)名稱:Init_IIC
函數(shù)功能:完成對IIC總線數(shù)據(jù)線時(shí)鐘線初始化
參數(shù)介紹:無
返回值:
注意事項(xiàng):無
///////////////////////////////////////////////////////////////////////////
void Init_IIC()
{
}
///////////////////////////////////////////////////////////////////////////
函數(shù)名稱:Start_IIC
函數(shù)功能:IIC總線的開始條件
參數(shù)介紹:無
返回值:
注意事項(xiàng):具體請參考相關(guān)的文檔
///////////////////////////////////////////////////////////////////////////
void Start_IIC()//開始條件
{
}
///////////////////////////////////////////////////////////////////////////
函數(shù)名稱:Stop_IIC
函數(shù)功能:IIC總線的終止條件
參數(shù)介紹:無
返回值:
注意事項(xiàng):具體請參考相關(guān)的文檔
///////////////////////////////////////////////////////////////////////////
void Stop_IIC()
{
}
///////////////////////////////////////////////////////////////////////////
函數(shù)名稱:Response_IIC
函數(shù)功能:IIC總線的應(yīng)答條件
參數(shù)介紹:cNumber: 定義一個(gè)延時(shí)的變量
返回值:
注意事項(xiàng):具體請參考相關(guān)的文檔
///////////////////////////////////////////////////////////////////////////
void Response_IIC()//
{
}
///////////////////////////////////////////////////////////////////////////
函數(shù)名稱:Write_byte
函數(shù)功能:通過IIC總線向PCF8591寫入一個(gè)字節(jié)
參數(shù)介紹:cData:要寫入的字節(jié)的值
返回值:
注意事項(xiàng):具體請參考相關(guān)IIC文檔
///////////////////////////////////////////////////////////////////////////
void Write_byte(uchar cData)
{
}
///////////////////////////////////////////////////////////////////////////
函數(shù)名稱:Read_byte
函數(shù)功能:通過IIC總線,從器件里讀取一個(gè)字節(jié),因?yàn)楸仨毷且晃灰晃蛔x,所以需要
參數(shù)介紹:cNumber:for句用到的循環(huán)變量
返回值:
注意事項(xiàng):請參考相應(yīng)的文檔
///////////////////////////////////////////////////////////////////////////
uchar Read_byte()
{
}
///////////////////////////////////////////////////////////////////////////
函數(shù)名稱:Read_channel
函數(shù)功能:選取PCF8591的AD輸入通道,然后再讀出采集到數(shù)值,即電壓值
參數(shù)介紹:無
返回值:
注意事項(xiàng):無
///////////////////////////////////////////////////////////////////////////
uchar Read_channel(uchar cChannel)//PCF通道選擇函數(shù)
{
}
///////////////////////////////////////////////////////////////////////////
函數(shù)名稱:main
函數(shù)功能:完成對采集到的電壓值的處理,然后顯示到前三個(gè)數(shù)碼管上
參數(shù)介紹:cBai:因?yàn)榘褦?shù)分離,才能顯示到數(shù)碼管上,作為分離后顯示在第一個(gè)數(shù)
返回值:
注意事項(xiàng):無
///////////////////////////////////////////////////////////////////////////
void main()
{
}
評論