freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于atmega16電容自動(dòng)測(cè)量?jī)x的設(shè)計(jì)140527-資料下載頁(yè)

2025-06-18 15:28本頁(yè)面
  

【正文】 TAL212XTAL113 PD014PD115 PD216PD317 PD418PD519 PD620 PD7 21PC0 22PC123PC2 24PC3 25PC426PC5 27PC6 28PC729AVCC 30GND 31AREF32PA7 33PA6 34PA535PA4 36PA3 37PA238PA1 39PA0 40U1ATMEGA16C422PFVSS1 VCC2VEE3 RS4R/W5 E6DB07 DB18DB29 DB310DB411 DB512DB613 DB714A15 K16U3LCDY112MHZVin1GND2Vout 3W1 LM7805E9VC1 D1IN4007 D2LEDK1VCCC322PFVCCR210KD3IN4007SB0RESETVCCVCCR3 10KD4IN4007VCCR410ΩVCCVEFVEFRSR/WEDB0DB1DB2DB3DB4DB5DB6DB7RSR/WEDB0DB1DB2DB3DB4DB5DB6DB7GND 1TRIG2OUT 3RESET 4CTRL5 THR6DIS7 VCC8U2NE555VCCVCCGNDC6VCCCXoutR551KR651KOUTD6IN5819 D7IN5819圖 24附錄 2.程序:include //包含型號(hào)頭文件include //包含位 操作頭文件include //標(biāo)準(zhǔn)輸入輸出頭文件include //包含自定義常量頭文件define uchar unsigned chardefine uint unsigned intpragrma data:codeunsigned char const kj[]={huan ying ce shi}。//開(kāi)機(jī)顯示“huan ying ce shi”pragrma data:codeunsigned char const numb[]={0x55,0x46,0x6E,0x46,0x50,0x46,0X2E}。 //UF,nF,PF,.(小數(shù)點(diǎn) ASCALL)pragram data:dataunsigned char const temp[]={0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39}。 /* 0 1 2 3 4 5 6 7 8 9 */unsigned long int x[2]。//定義數(shù)組儲(chǔ)存輸入捕捉的值uchar q=0 ,b=0,s=0,g=0,b1=0,s1=0,g1=0。//電容轉(zhuǎn)換時(shí)千百十個(gè)位和小數(shù)位unsigned int h=0,k=0。//定義溢出中斷統(tǒng)計(jì)次數(shù)和捕捉中斷次數(shù)unsigned int z=1。/*z 為 1 時(shí)測(cè)量值超出范圍,0 時(shí)為 uf 檔,2 時(shí)為 nf 檔,4 時(shí)為 pf 檔。*/pragma interrupt_handler TIMER1_CAPT:6 //定時(shí)器/計(jì)數(shù)器 1 的事件捕捉 void TIMER1_CAPT () //T1 的輸入捕捉中斷服務(wù)程序{ x[k]=ICR1H*256+ICR1L。 k++。 TIMSK|=BIT(2)。//開(kāi)啟 T/C1 溢出中斷標(biāo)志位 if(k==2){TCCR1B=0X00。//停止計(jì)數(shù)SREG=0X00。//關(guān)中斷}}pragma interrupt_handler TIMER1_OVF:iv_TIM1_OVF25//定時(shí)器/計(jì)數(shù)器 1 的溢出void TIMER1_OVF() //定時(shí)器/計(jì)數(shù)器 1 的溢出中斷服務(wù)程序{ h=h+1。 }void main () { uchar i=1。DDRD|=BIT(3)。//蜂鳴器接口初始化PORTD|=BIT(3)。//默認(rèn)關(guān)閉蜂鳴器 dy_cs()。 /* LCD 顯示子程序初始化*/display()。//開(kāi)機(jī)顯示delay(10)。DDRDamp。=~BIT(6)。//T1 輸入捕捉端口初始化PORTD|=BIT(6)。while(1){TCCR1A=0X00。 TCCR1B=0X81。/*設(shè)置為下降沿觸發(fā),無(wú)與分頻,時(shí)鐘為系統(tǒng)時(shí)鐘 ,ICP1 的輸入被濾波。*/TCNT1H=0X00。TCNT1L=0X00。TIMSK=0x20。 //輸入捕捉中斷使能 bit5 ,篢/C1 溢出中斷使能 bit2SREG=0X80。//開(kāi)中斷 while(i)//等待第二次輸入捕捉中斷結(jié)束 {if(k==2) i=0。 }SREG=0X00。 //關(guān)中斷 ,只有中斷關(guān)閉,后面的數(shù)據(jù)處理才不會(huì)受影響。shju()。display()。//顯示測(cè)量電容值delay(10)。delay(150)。k=0。//k=0,清零數(shù)組 x[],再次測(cè)量h=0。//清零溢出次數(shù)26i=1。}}unsigned int shju() //數(shù)據(jù)處理程序和檔位選擇{ float C12=0,C22=0。 unsigned long int C,C1,C2,C11。 unsigned long int C21,C22,C23。 uint temp1,temp2。 /*C2 數(shù)據(jù)處理*/C21=76*h。//C2 整數(shù)部分計(jì)算C22=*h。//C2 小數(shù)部分技計(jì)算C2=C21+C22/1。//C2 的整數(shù)部分C23=(C22C22/1)*1000。//C2 的小數(shù)部分,化為整數(shù) C23=C23/1。// 化為整數(shù)儲(chǔ)存,PF/*C1 數(shù)據(jù)處理*/if(x[1]x[0]) //x[0]x[1]證明一定有溢出 { C11=65536x[0]+x[1]。//x[0]x[1],所以 C11 一定不會(huì)溢出 C2=C276。//減去一次溢出 C23=C23566。}else C11=x[1]x[0]。//C1 的整數(shù)部分C12=*C11。//小數(shù)部分是否有進(jìn)位C12=C12/1。if(C1156109)//C1 溢出部分之后的處理 { C11=C11+C1256109。 C2=C2+76。 C23=C23+566。 }else C1=C11+C12。 //C1 算出的數(shù)據(jù)都是 PF。/*檔位選擇 z 為 1 時(shí)測(cè)量值超出范圍,0 時(shí)為 uf 檔,2 時(shí)為 nf 檔,4 時(shí)為 pf 檔.*/27if(h=1amp。C11=856amp。C11=10) //PF 檔 { z=4。//顯示 PF 擋C=C1+C2。 q=C/1000。//千位 b=C/100。//百位 s=(Cb*100)/10。//十位 g=(Cb*100s*10)/1。//個(gè)位 } else if ((h=13amp。h1)|(C11856amp。h=1)|(h==1amp。x[1]x[0])) //nF 檔 { z=2。//顯示 nF 檔.C=C2+C1/1000。C23=C23+C1%1000。C=C+C23/1000。//加上小數(shù)部分 C23 的進(jìn)位C23=C23%1000。//小數(shù)部分q=C/1000。//千位 b=C/100。//百位 s=(Cb*100)/10。//十位 g=(Cb*100s*10)/1。//個(gè)位b1=C23/100。//小數(shù)位第一位s1=(C23b1*100)/10。//小數(shù)位第 2 位g1=(C23b1*100s1*10)/1。//小數(shù)位第 3 位 } else if (h13) //UF 檔 { z=0。//顯示 UF 檔 C=C2+C1/1000。//最小為 NF temp2=C%1000。 C=C/1000。 q=C/1000。//千位 b=C/100。//百位 s=(Cb*100)/10。//十位 g=(Cb*100s*10)/1。//個(gè)位28 b1=temp2/100。//小數(shù)位第一位 s1=(temp2b1*100)/10。//小數(shù)位第 2 位 g1=(temp2b1*100s1*10)/1。//小數(shù)位第 3 位 } }void delay ( unsigned int ms )//延遲程序 { unsigned int i,j。for(i=0。ims。i++){ for(j=0。j1712。j++)。} } void write_(uchar ) //LCD1602 寫(xiě)指令程序 { PORTDamp。=~BIT(4)。//RS=L 寫(xiě)指令PORTDamp。=~BIT(5)。//RW=LPORTA=。//D0D7=數(shù)據(jù) PORTD|=BIT(7)。//E=Hdelay(1)。//E=高脈沖,要持續(xù)一段時(shí)間。PORTDamp。=~BIT(7)。//E=L } void write_data(uchar data) //LCD1602 寫(xiě)數(shù)據(jù)程序 { PORTD|=BIT(4)。//RS=H 寫(xiě)數(shù)據(jù)PORTDamp。=~BIT(5)。//RW=LPORTA=data。//D0D7=數(shù)據(jù) PORTD|=BIT(7)。//E=Hdelay(1)。//E=高脈沖,要持續(xù)一段時(shí)間。PORTDamp。=~BIT(7)。//E=L } void display() //LCD 顯示程序 { uchar i。29 write_(0x38)。//顯示模式設(shè)置delay(5)。//延遲一段時(shí)間write_(0x08)。//顯示關(guān)閉delay(5)。write_(0x01)。//顯示清屏delay(5)。write_(0x0c)。//顯示開(kāi)/關(guān)及光標(biāo)設(shè)置delay(5)。write_(0x06)。/*顯示光標(biāo)移動(dòng)設(shè)置 ,當(dāng)讀或?qū)懸粋€(gè)字符后地址指針加一,且光標(biāo)加一 */delay(5)。if(z!=1amp。z!=5){ write_(0x80+0X00)。//數(shù)據(jù)指針設(shè)置,80H+地址碼,第一行顯示 delay(5)。for(i=0。i2。i++) { write_data(numb[i+z])。/*z 為確定第一行是顯示 uf,nf,還是 pf。前 2 個(gè)空間顯示*/ delay(5)。 } write_(0xc0+0x08)。//第二行的最后 4 個(gè)空間顯示數(shù)據(jù) delay(5)。 write_data(temp[q])。//實(shí)際千位為 0 delay(5)。 write_data(temp[b])。//百位 delay(5)。 write_data(temp[s])。//十位 delay(5)。 write_data(temp[g])。//個(gè)位 delay(5)。 write_data(numb[6])。//小數(shù)點(diǎn) delay(5)。 write_data(temp[b1])。//小數(shù)第 1 位30 delay(5)。 write_data(temp[s1])。//小數(shù)第 2 位 delay(5)。 write_data(temp[g1])。//小數(shù)第 3 位 delay(5)。 } else{ write_(0x01)。//顯示清屏 delay(5)。 write_(0x80+0x00)。 write_data(0x31)。//顯示 1delay(5)。write_(0xc0)。delay(5)。for(i=0。i16。i++)//顯示 huan ying ce shi {write_data(kj[i])。 delay(5)。}PORTDamp。=~BIT(3)。//蜂鳴器報(bào)警delay(5)。PORTD|=BIT(3)。//關(guān)閉蜂鳴器 } } unsigned int dy_cs() /* LCD 顯示子程序初始化*/ { DDRA=0XFF。DDRD|=BIT(4)|BIT(5)|BIT(7)。PORTDamp。=~BIT(7)。
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1