国产肉体XXXX裸体137大胆,国产成人久久精品流白浆,国产乱子伦视频在线观看,无码中文字幕免费一区二区三区 国产成人手机在线-午夜国产精品无套-swag国产精品-国产毛片久久国产

新聞中心

PIC16F877A的AD學(xué)習(xí)

作者: 時(shí)間:2016-11-09 來(lái)源:網(wǎng)絡(luò) 收藏
今天晚上開(kāi)始編寫(xiě)ADC程序!

下面是一個(gè)3*3AD鍵盤(pán)的原理圖

本文引用地址:http://m.ptau.cn/article/201611/317654.htm

程序的頭文件

#ifndef ADC_H
#define ADC_H

#include "main.h"
void init_adc() ;
char get_key() ;

#endif
子程序

#include "adc.h"
void init_adc()
{
//定義端口方向
TRISA0=1 ;
ADCS1=0 ;//選擇系統(tǒng)時(shí)鐘
ADCS0=0 ;
//選擇通道RA0 ;
//CH2=0 ;
//CH1=0 ;
//CH3=0 ;
bitclr(ADCON0,5) ;
bitclr(ADCON0,4) ;
bitclr(ADCON0,3) ;
ADON=1 ;//AD就緒
ADFM=0 ;

}
char get_key()
{ char adata=0;
ADGO=1;
while(ADGO);
if(ADRESH>0xcb)
adata=1;
else if(ADRESH>0xa8)
adata=2;
else if(ADRESH>0x8f)
adata=3;
else if(ADRESH>0x7d)
adata=4;
else if(ADRESH>0x6f)
adata=5;
else if(ADRESH>0x63)
adata=6;
else if(ADRESH>0x5a)
adata=7;
else if(ADRESH>0x53)
adata=8;
else if(ADRESH>0x4c)
adata=9;
else
adata=0;

return adata;

}
主程序

#include
#include
#include

#include "main.h"
#include "t232.h"
#include "adc.h"
#include "lcd.h"

bank1 char temp ;
bank1 char t1 ;
bank1 char dat[6] ;
bank1 char key_data=0 ;


void init_all()
{
init_adc() ;
init_232() ;
init_lcd() ;
}

void main()
{
init_all() ;
while(1)
{
key_data=0 ;
while(key_data==0)
{
key_data=get_key() ;
}
temp=get_key() ;
if(temp==key_data)
{
while(key_data)
{
key_data=get_key() ;
}
t1=temp+0x30 ;
sprintf(dat,"key%c",t1) ;
send_str(dat) ;

}
}
}
將讀取的鍵盤(pán)數(shù)值傳送到上位機(jī)!

經(jīng)測(cè)試發(fā)現(xiàn)AD鍵盤(pán)不是很好用,容易出現(xiàn)按鍵錯(cuò)誤,不是很穩(wěn)定,所以實(shí)際當(dāng)中最好不要使用AD鍵盤(pán),打算使用zlg7290鍵盤(pán)來(lái)作鍵盤(pán)和顯示!



關(guān)鍵詞: PIC16F877AAD學(xué)

評(píng)論


技術(shù)專(zhuān)區(qū)

關(guān)閉