資源簡介
數據采集系統——ADC0808的應用,單片機編程,protues仿真,很好用,內有ADC0808/ADC0809的中文資料,很全,很詳細
代碼片段和文件信息
#include?
#include?
#define?uint?unsigned?int
#define?uchar?unsigned?char
void?Adc_toString();
uchar?AdcBuffer[6];
/***********1602液晶顯示部分子程序****************/
//Port?Definitions**********************************************************
sbit?LcdRs =?P2^5;
sbit?LcdRw =?P2^6;
sbit?LcdEn?? =?P2^7;
sfr??DBPort? =?0x80; //P0=0x80P1=0x90P2=0xA0P3=0xB0.數據端口
//內部等待函數**************************************************************************
unsigned?char?LCD_Wait(void)
{
LcdRs=0;
LcdRw=1; _nop_();
LcdEn=1; _nop_(); ?
LcdEn=0;
return?DBPort;
}
//向LCD寫入命令或數據************************************************************
#define?LCD_COMMAND 0??????//?Command
#define?LCD_DATA 1??????//?Data
#define?LCD_CLEAR_SCREEN 0x01??????//?清屏
#define?LCD_HOMING?? 0x02??????//?光標返回原點
void?LCD_Write(bit?style?unsigned?char?input)
{
LcdEn=0;
LcdRs=style;
LcdRw=0; _nop_();
DBPort=input; _nop_();//注意順序
LcdEn=1; _nop_();//注意順序
LcdEn=0; _nop_();
LCD_Wait();
}
//設置顯示模式************************************************************
#define?LCD_SHOW 0x04????//顯示開
#define?LCD_HIDE 0x00????//顯示關 ??
#define?LCD_CURSOR 0x02? //顯示光標
#define?LCD_NO_CURSOR 0x00????//無光標 ?????
#define?LCD_FLASH 0x01????//光標閃動
#define?LCD_NO_FLASH 0x00????//光標不閃動
void?LCD_SetDisplay(unsigned?char?DisplayMode)
{
LCD_Write(LCD_COMMAND?0x08|DisplayMode);
}
//設置輸入模式************************************************************
#define?LCD_AC_UP 0x02
#define?LCD_AC_DOWN 0x00??????//?default
#define?LCD_MOVE 0x01??????//?畫面可平移
#define?LCD_NO_MOVE 0x00??????//default
void?LCD_SetInput(unsigned?char?InputMode)
{
LCD_Write(LCD_COMMAND?0x04|InputMode);
}
//初始化LCD************************************************************
void?LCD_Initial()
{
LcdEn=0;
LCD_Write(LCD_COMMAND0x38);???????????//8位數據端口2行顯示5*7點陣
LCD_Write(LCD_COMMAND0x38);
LCD_SetDisplay(LCD_SHOW|LCD_NO_CURSOR);????//開啟顯示?無光標
LCD_Write(LCD_COMMANDLCD_CLEAR_SCREEN);???//清屏
LCD_SetInput(LCD_AC_UP|LCD_NO_MOVE);???????//AC遞增?畫面不動
}
//液晶字符輸入的位置************************
void?GotoXY(unsigned?char?x?unsigned?char?y)
{
if(x==0)
LCD_Write(LCD_COMMAND0x80|y);
if(x==1)
LCD_Write(LCD_COMMAND0x80|0xC0|y);
}
//將字符輸出到液晶顯示
void?Print(unsigned?char?*str)
{
while(*str!=‘\0‘)
{
LCD_Write(LCD_DATA*str);
str++;
}
}
//液晶顯示程序
void?show()???
{?
??Adc_toString();???????
??GotoXY(00);
??Print(“Current?Voltage:“);?
??GotoXY(15);
??Print(AdcBuffer);??
}
/***********ADC0809數模轉換部分子程序****************/
//端口定義*****************************************
sbit?START=P3^1;
sbit?OE=P3^2;
sbit?EOC=P3^3;
//ADC轉換程序
uchar?ADC_Convert()
{
uchar?num;
OE=0;
START=0;
START=1;//鎖存通道地址?
START=0;//啟動AD??
while(!EOC);//等待轉化結束?
OE=1;//允許輸出?
num=P1;?
OE=0;//復位寄存器?
return?num;//返還num值?
}
//ADC轉換的數據轉換成液晶顯示形式
void?Adc_toString()
{
float?rt;
unsigned?int?t
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????9385??2013-06-17?15:34??數據采集系統——ADC0808的應用\ADC0808
?????文件???????3218??2013-06-17?15:34??數據采集系統——ADC0808的應用\ADC0808.hex
?????文件?????????62??2013-06-17?15:34??數據采集系統——ADC0808的應用\ADC0808.lnp
?????文件??????13049??2013-06-17?15:34??數據采集系統——ADC0808的應用\ADC0808.M51
?????文件???????1400??2013-06-17?15:34??數據采集系統——ADC0808的應用\ADC0808.plg
????.......?????55666??2013-06-17?15:37??數據采集系統——ADC0808的應用\ADC0808.uvopt
????.......?????13406??2013-06-17?15:32??數據采集系統——ADC0808的應用\ADC0808.uvproj
????.......?????55654??2013-06-17?15:36??數據采集系統——ADC0808的應用\ADC0808_uvopt.bak
????.......?????????0??2013-06-17?15:26??數據采集系統——ADC0808的應用\ADC0808_uvproj.bak
?????文件?????939008??2013-06-17?15:33??數據采集系統——ADC0808的應用\ADC0808芯片中文資料.doc
?????文件???????3536??2013-06-20?02:14??數據采集系統——ADC0808的應用\ADC0809.c
?????文件?????160016??2013-06-20?02:13??數據采集系統——ADC0808的應用\ADC0809.DSN
?????文件?????536140??2013-06-20?02:07??數據采集系統——ADC0808的應用\ADC0809.EMF
?????文件???????7559??2013-06-17?15:34??數據采集系統——ADC0808的應用\ADC0809.LST
?????文件???????9034??2013-06-17?15:34??數據采集系統——ADC0808的應用\ADC0809.OBJ
?????文件????????768??2013-06-20?02:13??數據采集系統——ADC0808的應用\ADC0809.PWI
?????文件?????160016??2013-06-20?02:13??數據采集系統——ADC0808的應用\Last?Loaded?ADC0809.DBK
?????文件???????6376??2009-05-07?14:37??數據采集系統——ADC0808的應用\STARTUP.A51
?????文件??????14069??2013-06-17?15:34??數據采集系統——ADC0808的應用\STARTUP.LST
?????文件????????749??2013-06-17?15:34??數據采集系統——ADC0808的應用\STARTUP.OBJ
?????目錄??????????0??2013-06-20?02:13??數據采集系統——ADC0808的應用
-----------?---------??----------?-----??----
??????????????1989111????????????????????21
- 上一篇:一個比較完整的開源cad 圖形程序
- 下一篇:Php 導出數據為EXCEL程序
評論
共有 條評論