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

正文內(nèi)容

單片機(jī)c語(yǔ)言學(xué)習(xí)心得轉(zhuǎn)載-預(yù)覽頁(yè)

 

【正文】 ,并不需要你用實(shí)驗(yàn)板和仿真器了,直接在你的PC上完成,但是軟件畢竟是軟件,從某個(gè)特定的意義上來(lái)說(shuō)是并不能代替硬件的),即使你每天捧著本書,把那本書翻爛,也永遠(yuǎn)學(xué)不會(huì)單片機(jī)的!剛接觸單片機(jī)的朋友,看了資料,一定會(huì)對(duì)以下幾個(gè)詞見的比較多,但是具體的概念還是比較模糊,現(xiàn)作如下說(shuō)明:(1)編程器編程器是用來(lái)燒單片機(jī)芯片的,是把HEX或者BIN文件燒到單片機(jī)ROM里的。這樣以來(lái),可以省去了來(lái)回插拔芯片帶來(lái)的不必要麻煩?,F(xiàn)在想想實(shí)在是又氣又笑。如果你能上網(wǎng)通過(guò)論壇或者,問題就很快得到解決。比如為了讓單片機(jī)實(shí)現(xiàn)某個(gè)功能,你可能不知道怎么去寫某個(gè)程序。一般只須連接晶體、VCC、GND、RST即可,一般情況下,AT89C51的31腳須接高電平。void main(void){while(1){P1_0 = 0。類似與C語(yǔ)言中的賦值語(yǔ)句,即把 0 賦給單片機(jī)的P1_0引腳,讓它輸出相應(yīng)的電平。這里就不再講了。硬件連接,在P1_1P1_7上再接7個(gè)LED即可。sbit P1_3 = P1 ^ 3。sbit P1_7 = P1 ^ 7。i++)。Delay(250)。P1_1 = 1。P1_3 = 0。Delay(250)。P1_5 = 1。P1_7 = 0。main函數(shù)調(diào)用Delay()函數(shù)。函數(shù)unsigned char _crol_(unsigned char a, unsigned char n)可以使變量a循環(huán)左移n位,如果我們先給P1口賦0000 0001那么當(dāng)n為1時(shí),便會(huì)產(chǎn)生和上面一樣的效果!includeincludevoid Delay(unsigned char a){unsigned char i。}}void main(void){unsigned char b, i。i++){P1 = char _crol_(b, 1)。流水燈的花樣很多,我還寫過(guò)那種拉幕式的流動(dòng)等,程序很簡(jiǎn)單,有興趣的朋友,可以自己試著寫寫!對(duì)了,講了那么多,有些朋友一定還不知道編譯軟件怎么用?這里給大家介紹幾個(gè)吧?WAVE(偉福)大家一定聽說(shuō)過(guò)吧!還有一個(gè)就是KEIL2,我用的就是KEIL2,下面就來(lái)講講如何使用KEIL2這個(gè)編譯軟件!,這個(gè)應(yīng)該不用再講了吧!,啟動(dòng)KEIL軟件左擊ProjectNew Project輸入文件名選擇我們所以使用的芯片(這里我們一般用到Atmel的AT89C51或AT89C2051,點(diǎn)確定。Source Group 139。Target 139。//載入高8位初值。//設(shè)置定時(shí)器0 工作方式0TH0 =(655365000)% 256。產(chǎn)生中斷后,我們?cè)趺刺幚砟兀亢俸?!仔?xì)想想?^_^ 每次中斷后,我們可以讓一個(gè)變量自加1,那么200次中斷后,不就是1秒的時(shí)間了嗎?比起上面我們說(shuō)的延時(shí)來(lái)出來(lái)是不是更加精確多了呢?那是肯定的!但是想想1秒種的時(shí)間就讓單片機(jī)產(chǎn)生那么多次的中斷,單片機(jī)會(huì)不會(huì)累著呢?恩,那么不好。unsigned char SEG_TAB_B[] = {0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}。j 125。Delay(5)。Delay(5)。Delay(5)。Delay(5)。Delay(5)。Delay(5)。if(count == M){count = 0。if(min == 60){hou++。TH0 = HI。EA = 1。中斷和定時(shí)/記數(shù)器器,是個(gè)很重要的東西,幾乎用到單片機(jī)的地方都會(huì)涉及到中斷和定時(shí)!所以大家要好好掌握哦!^_^哈哈,趕緊編譯HEX文件,搭好硬件,燒入單片機(jī),上電看看效果先!呵呵,現(xiàn)在你應(yīng)該有成就感了吧,想不到一個(gè)時(shí)鐘居然那么簡(jiǎn)單,嘿嘿!但是問題來(lái)了!時(shí)鐘雖然做出來(lái)了,但是他的精度怎么樣呢?一兩個(gè)小時(shí),或許看不出什么誤差,但是一天或者一年呢?暈,我的天呀,要是按年來(lái)算的話,那這個(gè)時(shí)鐘根本沒有實(shí)用價(jià)值!人家都說(shuō)用C寫不出,精度高的時(shí)鐘程序來(lái)的?。∈遣皇怯悬c(diǎn)后悔了,去學(xué)匯編吧!但是既然選擇了C,那么就不要后悔!嘿嘿,想想C的高級(jí)語(yǔ)言,怎么會(huì)輸給匯編呢 ^_^ 呵呵!看下面這段代碼:static unsigned char count = 0。TR0 = 1。先關(guān)閉定時(shí)器T0,然后重新給TH0和TL0 賦值,再開啟 TR0 = 1。} 來(lái)彌補(bǔ)!這樣可能會(huì)出現(xiàn)這樣的現(xiàn)象:秒直接跳變!我們可以再通過(guò)細(xì)分來(lái)實(shí)現(xiàn),不要10小時(shí)那么大,小些的就行!具體的操作還是留給朋友們吧!(七)這回我們來(lái)講講鍵盤,大家肯定見過(guò)銀行柜員機(jī)吧,取錢輸入密碼就要用到鍵盤,超市購(gòu)物取回寄存物品要輸入密碼,還有你現(xiàn)在在用的PC機(jī)的鍵盤。//0到F的16個(gè)鍵植/******************************************************************************/ void Delayt(unsigned char t)//延時(shí)函數(shù) {unsigned char i。if(P1!=0xf0){Delayt(25)。}/******************************************************************************/ void main(void)//主函數(shù) {unsigned char key,j,k,s。j{s=P1amp。case 0xd0: key=4*j+1。case 0x70: key=4*j+3。}//for}//if//if((P1amp。}//while }還有一種就是線反轉(zhuǎn)法,實(shí)現(xiàn)如下:,把列線置低電平,行置高,讀行狀態(tài) ,把行置低,列置高,讀列狀態(tài),則為2次所讀狀態(tài)的結(jié)果即為鍵所在的位置,這樣2次輸出和2次讀入可以完成鍵的識(shí)別?。∽雍瘮?shù)如下:unsigned char key_vscan(void){unsigned char row, col。row = rowamp。0x0F。}下面我們?cè)賮?lái)介紹介紹一鍵多能的程序,即按下一個(gè)鍵,可以執(zhí)行不同的命令!void main(void){unsigned char b = 0。}while(P3_2 == 0)。//..............add your code here!}} }(八)/ /以上的文字寫于2005年5月,由于時(shí)間關(guān)系,一直未能將此完成,最近閑著無(wú)聊又接著寫了些文字,以下寫于2006年6月5日!在這里我想對(duì)上面一點(diǎn),作個(gè)簡(jiǎn)單的說(shuō)明,如果你是剛學(xué)單片機(jī),那么你寫的代碼是VERY GOOD的,但是如果把上面的代碼應(yīng)用于產(chǎn)品的話,那么我可以告訴你,上面所寫的按鍵識(shí)別代碼全部是垃圾代碼,^_^,這下傻了吧,呵呵。有什么辦法嗎?呵呵,那是肯定的。void Delay(unsigned char Delaytime)// { while(Delaytime!=0)。EX2:define Press_key = P2 ^ 7。amp。}void Timer0_interrupt(void)interrupt 1 using 2 { P_key()。這是對(duì)我寫怎么多文字最好的回答。第五篇:?jiǎn)纹瑱C(jī)C語(yǔ)言學(xué)習(xí)單片機(jī)C語(yǔ)言之一___________________________________________________________________ _____________________ 預(yù)處理 一》宏定義:不帶參數(shù):define 標(biāo)識(shí)符 常量表達(dá)式/*define是宏定義命令,宏名(標(biāo)識(shí)符)好習(xí)慣用大寫*/ define NIL 0x80帶參數(shù):/*相當(dāng)于小函數(shù)*/ define 宏名(參數(shù)表)字符串/*不僅要時(shí)行字任串替換還要進(jìn)行參數(shù)的替換,在宏定義時(shí),宏名與帶參數(shù)的括弧之間不應(yīng)該加空格,否則將空格以后的字符串都作為替代字符串的一部分,這可是很容易出錯(cuò)的*/ 如:define SQ(a,b)a*b 使用:x=12。*/ if、elif、else、endif、ifdef、ifndef /*選擇不同的編譯范圍,產(chǎn)生不同的代碼,提供通用性。sbit P0_1=P0^1。 ┃ | ┃ ^ ┃ ━━━━╋━━━━━╋━━━━━╋━━━━━━╋━━━━━━╋━━━━━━按位取反┃ 按位與 ┃ 按位或 ┃ 按位異或 ┃ 左移 ┃ 右移━━━━┻━━━━━┻━━━━━┻━━━━━━┻━━━━━━┻━━━━━━對(duì)移位:如邏輯表達(dá)式? 表達(dá)式1:表達(dá)式2 六》指針與地址運(yùn)算符: *取內(nèi)容 amp。TH0=(1000/256)。TMOD=0X01。ET0=1。(, 恢復(fù)浮點(diǎn)寄存器的狀態(tài)函數(shù)為fprestore)如果在中斷函數(shù)中調(diào)用了其他函數(shù),則被調(diào)函數(shù)所使用的工作寄存器組與中斷函數(shù)的一致!*/單片機(jī)C語(yǔ)言之四_____________________________________________________________________________________一、局部變量與全局變量(外部變量):全局變量若不在開頭定義則加extern全局變量會(huì)使代碼長(zhǎng),占用內(nèi)存多二、存儲(chǔ)方式:自動(dòng)變量(auto):缺省,函數(shù)調(diào)用存在,退出消失。通常只給編譯器一個(gè)建議,由編譯器根 據(jù)實(shí)際情況確定。temp=1。return(temp)。}利用存儲(chǔ)器混合模式編程,充分利用有限的存儲(chǔ)空間,還可加快程序的執(zhí)行速度!單片機(jī)C語(yǔ)言之五_____________________________________________________________________________________ 數(shù)組 1初始化數(shù)組: unsigned char a[5]={0x11,0x22,0x33,0x44,0x55} 或unsigned char a[ ] ={0x11,0x22,0x33,0x44,0x55,0x66} 3數(shù)組作為函數(shù)的參數(shù):不但可以由變量作為函數(shù)的參數(shù)外,還可以用數(shù)組名作為函數(shù)的參數(shù)。見下圖:a[0] a[1] a[2] a[3] a[4] a[5] a[6] a[7] a[8] a[9] 起始地址1000 b[0] b[1] b[2] b[3] b[4] b[5] b[6] b[7] b[8] b[9] 用數(shù)組名作為函數(shù)的參數(shù),應(yīng)該在主調(diào)函數(shù)和被調(diào)函數(shù)中分別進(jìn)行數(shù)組定義而不能只在一方定義數(shù)組。定義型參數(shù)組時(shí)可以不指定長(zhǎng)度,只在數(shù)組名后面跟一個(gè)方括號(hào)[]。{ int I。float pot_2[3]={11,22,}。我在實(shí)際應(yīng)用中采用8535對(duì)32路數(shù)據(jù)進(jìn)行采集(8535帶10位AD,帶看門狗),發(fā)現(xiàn)數(shù)據(jù)跳動(dòng)有時(shí)達(dá)7%%,這是由于各種干擾造成的。在實(shí)際中我們采用每路猜9個(gè)值,排序,取中間3個(gè),求平均。char xdata *address。在中斷服務(wù)函數(shù)int1()中通過(guò)temp=*ADC和*ADCdata=temp。/*定義ADC0809數(shù)據(jù)緩沖器指針*/ unsigned char I。/* ADC0809有8個(gè)模擬輸入通道*/ EA=1。/*啟動(dòng)ADC0809*/ WHILE(I)。/*結(jié)果值存到數(shù)據(jù)緩沖區(qū)*/ ADCdata++。/*定義ADC0809端口地址*/ define ADCdata 0X1000 /*定義數(shù)據(jù)緩沖器地址*/ unsigned char I。it1=1。tmp=XBYTE[ADC]。/*啟動(dòng)下一個(gè)模擬輸入通道A/D轉(zhuǎn)換*/ } 兩指針相減計(jì)算字符串的長(zhǎng)度 include main(){char *s=”abcdef”。while(*p!=’’)p++。Void
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1