單片機(jī)C編程與應(yīng)用系統(tǒng)設(shè)計(jì)_第1頁
單片機(jī)C編程與應(yīng)用系統(tǒng)設(shè)計(jì)_第2頁
單片機(jī)C編程與應(yīng)用系統(tǒng)設(shè)計(jì)_第3頁
單片機(jī)C編程與應(yīng)用系統(tǒng)設(shè)計(jì)_第4頁
單片機(jī)C編程與應(yīng)用系統(tǒng)設(shè)計(jì)_第5頁
已閱讀5頁,還剩70頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1.基本示例分析2.單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)單片機(jī)C語言編程與設(shè)計(jì)一、基本示例分析:例1、LED的控制

使用805l的Port1連接8個LED,以產(chǎn)生跑馬燈的效果。連接好電路并且完成程序之后,您將可以看到8個LED依次輪流閃爍。在這次練習(xí)中,您將學(xué)會如何使用I/OPort輸出數(shù)據(jù),以及如何使用循環(huán)實(shí)現(xiàn)時間延遲。

電路圖#include<REGX51.H>voiddelay(void)

/*delay函數(shù)*/{unsignedchari,j;/*這個函數(shù)執(zhí)行時間的延遲*/for(i=0;i<255;i++)for(j=0;j<255;j++) ;}voidmain(void)

{unsignedcharj=0XFE;/*聲明變量j*/while(1) /*無窮循環(huán)*/{/*依次讓LED0,1,2,3,4,5,6,7閃爍*/ j=(j<<1)|0x01; if(j==0XFF)j=0XFE;P1=j;/*將數(shù)值輸出到Port1,控制LED亮或滅*/delay();/*調(diào)用delay函數(shù)*/}}例2、指撥開關(guān)的輸入目的是使用8051的Portl連接到8個LED,Port2則連接到1個指撥開關(guān),當(dāng)用戶撥動指撥開關(guān)時,相對應(yīng)的LED就會亮或滅。在這次練習(xí)中,您將學(xué)會如何使用8051輸入數(shù)據(jù)。

例如,您要從Port2輸入數(shù)據(jù)給變量temp時,可以執(zhí)行temp=P2;

電路圖#include<REGX51.H>voiddelay(void)/*delay函數(shù)*/{unsignedchari,j;/*這個函數(shù)執(zhí)行時間的延遲*/for(i=0;i<255;i++)for(j=0;j<255;j++) ;}voidmain(void){unsignedchartemp;/*聲明變量temp*/while(1)/*無窮循環(huán)*/{temp=P2;/*將P2輸入的數(shù)據(jù)直接放入變量temp當(dāng)中*/P1=temp;/*將變量temp中的數(shù)據(jù)直接輸出到Port1*/delay();}}例3、七段顯示器的控制

目的是使用8051的Port1連接到一個共陽的七段顯示器,然后讓8051輪流顯示0~9。當(dāng)您連接好電路,并且完成程序之后,您將看到七段顯示器依次顯示0~9。在這次練習(xí)中,您將學(xué)會如何使用805l控制共陽七段顯示器的顯示。

一個共陽七段顯示器的外觀和引腳如圖所示。這個共陽七段顯示器的引腳分別連接到805l的Portl引腳。

電路圖#include<AT89S51.h>codeseven_seg[10]={0XC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8,0X80,0X90};voiddelay(void)/*時間延遲的函數(shù)*/{unsignedchari,j;for(i=0;i<255;i++)for(j=0;j<255;j++);}voidmain(void){unsignedchari;/*變量i用來儲存0~9*/while(1)/*無窮循環(huán)*/{for(i=0;i<10;i++){P1=seven_seg[i];/*輸出0~9到共陽七段顯示器*/delay();/*調(diào)用時間延遲函數(shù)delay*/}}}共陽七段顯示器有一共同接點(diǎn)連接到5V,其余的七支引腳分別如圖所示

因此如果要讓所指定的LED發(fā)光時,就必須輸出0,反之則輸出1,所以我們可以用下表排列出所要顯示字符和必須輸出的信號。下表中,假設(shè)dot點(diǎn)接在最高位,而且不點(diǎn)亮,所以一直都是1。

將以上的信息編成16進(jìn)制碼,然后存放在定義為seven_seg的數(shù)組中。我們將共陽七段顯示器顯示出0~9的字型碼儲存在程序存儲器中。當(dāng)用戶有固定不變的數(shù)據(jù)時,就可以儲存在程序存儲器中。儲存在程序存儲器的數(shù)據(jù)必須存聲明的變景附加上code,如以下的聲明方式:codeseven_seg[10]={0XC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8,0X80,0X90};例4、計(jì)時器Timer0的溢出中斷控制

在前面,我們曾經(jīng)捉到過使用for循環(huán)實(shí)現(xiàn)時間延遲并不是很精確,例如,程序會受到中斷的執(zhí)行而影響延遲時間。在這次實(shí)習(xí)中,您將學(xué)會如何使用8051的Timer0計(jì)時器溢出中斷實(shí)現(xiàn)準(zhǔn)確的時間延遲。本練習(xí)使用8051的Port1連接到一個共陽七段顯示器,然后利用計(jì)時計(jì)數(shù)器Timerl,讓8051在指定的時間間隔內(nèi)顯示出0~9。當(dāng)您連接好電路,并且完成程序之后,您將可以看到七段顯示器依次顯示0~9。#include<REGX51.H>#defineTIMER0_COUNT0xEE11constseven_seg[10]={0XC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8,0X80,0X90};unsignedchartimer0_tick,i=0;staticvoidtimer0_isr(void)interruptTF0_VECTORusing1{TR0=0;TL0=(TIMER0_COUNT&0x00FF);TH0=(TIMER0_COUNT>>8);TR0=1;timer0_tick++;if(timer0_tick==200){i++;if(i==10)i=0;timer0_tick=0;P1=seven_seg[i];}}st船at繞ic探v手oi降d田ti哈me盜r0谷_i副ni咐ti粉al雄iz拿e(棗vo決id捧){EA匙=0跟;/*設(shè)定檢系統(tǒng)般不接帖受所像有的孕中斷乏*狡/ti鹿me乘r0撕_t焦ic繼k=課0;TR寧0=唉0;/*關(guān)閉Ti醒me脂r0講*佩/TM疾OD純=笛0x盈01款;/*設(shè)定蘇計(jì)時靜器0語為1根6位隔的工叔作模怕式皂*/TL赴0=嘩(T潤IM韻ER做0_散CO象UN綢T再&躍0x房誠00犬FF綁);/*設(shè)定TL鉛0的數(shù)更值辜*/TH毒0=岡(T劇IM右ER蔥0_粥CO售UN脈T吼>>浴8宴);/*設(shè)定TH效0的數(shù)掙值書*/PT曉0=每0;/*設(shè)定悄計(jì)時粒器0音有比柜較高艇的優(yōu)碼先級荒*扶/ET溫0=檔1;/*設(shè)定碌接受Ti味me筆r0的中日斷貞*/TR勻0=忽1;/*啟動Ti紹me綱r0相*嘆/EA喚=1援;/*設(shè)定碰系統(tǒng)謊接受漠中斷園*污/}vo緞id栗m丙ai核n倆(v奸oi喊d){羊t傷im闊er宜0_奧in仆it膨ia紅li破ze疲()岡;wh湊il叼e費(fèi)(1碑);/*無窮夠循環(huán)康*/}使用欣計(jì)時思計(jì)數(shù)鈴器Ti封me熄r0之前租,必削須先牽執(zhí)行Ti援me襲r0的初葬始化醉功能桑。Ti饒me逝r0初始勢化按稿照以泳下的怠步驟汪:(1濁)先萄暫停密接受折所有副的中北斷。(2柄)關(guān)形閉Ti歸me邊r0埋。(3遣)設(shè)置陵計(jì)時堂器0重的工業(yè)作模貼式。(4左)設(shè)焰置計(jì)病時器剛0的牌計(jì)數(shù)競器數(shù)證值(TL償0和TH沸0數(shù)值難)。(5塑)設(shè)弦置計(jì)浩時器齊0有蝕比較屋高的碑優(yōu)先苦級(山這一免個步推驟可崇以省騾略)池。(6杏)設(shè)畫置接地受Ti渾me巨r(nóng)0的中叔斷。(7米)啟乏動Ti岡me紋r0賓。(8封)設(shè)置跌系統(tǒng)關(guān)接受公中斷嘴。中斷屈定時遍時間迫計(jì)算陷:如果終外接護(hù)石英洪晶體免的頻緞率是瘋12MH迫z時,職因?yàn)榭?0指51京的一鳴個機(jī)擴(kuò)械周迷期需海要1映2個柳石英戶晶體養(yǎng)的振煤蕩周缺期,捆所以垃每秒混就有這10川00其0經(jīng)00嶄次的問機(jī)械浙周期稱,換艷言之混機(jī)械達(dá)周期劃是1us撇。如果吩我們勝希望Ti醋me狂r0每秒屋中斷峰20火0次忘,那柿么我來們就響必須毀讓Ti秒me型r0每數(shù)迎5謊00球0次施就中送斷1屆次(伐1顏00欠0山00袍0/偽20瓶0=這50梢00銜)。跡因?yàn)門i同me駝r0的溢殼出中指斷是Ti挨me嶺r0數(shù)到杯65溜53啟6(謊16俘進(jìn)制唉表示呢時是毒10雞00嬌0H)就產(chǎn)趟生中槽斷,昨因此位要讓Ti咳me買r0數(shù)5乎0丹00喘次就禽中斷收1次羅時就丈必須塌設(shè)置Ti倡me有r0等于遵10燒00際0H-儀-(遞(1器20請00發(fā)00歇0/陸(1甘2×藏20攜0)贏),也就仇是0xE衰E1懂1。接下記來我磨們可姻以利站用以雞下的肢指令盆分別巴設(shè)置Ti到me覽r0計(jì)數(shù)翁器的進(jìn)低8旺位和Ti益me鈴r0的高酬8位現(xiàn)。TL置0=荷(T倡I(xiàn)M姓ER頑0_便CO圓UN葬T皺&粘0x售00調(diào)FF盆);/*設(shè)定TL奇0的數(shù)逼值枝*/TH尊0=存(T所IM他ER糾0_費(fèi)CO喂UN腿T希>>排8竹);/*設(shè)定TH籮0的數(shù)語值出*/Ti腔me其r0的溢尺出中扛斷服禍務(wù)程預(yù)序格短式如島下所搶示:st苦at滋ic擇v說oi船d謎ti族me斗r0均_is買r(v鄙oi溝d)詢i陪nt催er右ru舉pt伶T粗F0灘_V刪EC黨TO墳R藏us要in記g降1{加入酷中斷寶之后紗必須須處理紗的程魚序}其中TF楊0校VE夸CT增OR是定外義在央文件re裕gx蘋51餐.h中的院常量礎(chǔ),其葛數(shù)值腳是1夫,這嗓是因晚為Ti除me禍r0的中松斷向齡量是福1。TF情0_耗VE賓CT悉OR后面艦所接煮的us頁in能g滋1,表示匹進(jìn)入Ti辭me托r0的溢襖出中霧斷服鬼務(wù)程扛序之綠后會謀使用兔寄存組器組霜1(Re駛gi敞st具er可B瓜an習(xí)k泊1)鏡,而離藝開Ti粘me寸r0的溢授出中譯斷服澤務(wù)程恥序時嘉編譯技器也方會自穩(wěn)動恢教復(fù)使跌用原扣先的迅寄存央器組80集51煉中有尼4個妻寄存等器組航,分討別是胖寄存粘器組矩0到習(xí)寄存漲器組作3,州當(dāng)8絞05盜1開梢始執(zhí)案行時技會自代動采鋤用寄渠存器寸組0。進(jìn)入推中斷岸服務(wù)媽程序討時采虧用不脆同的棕寄存史器組丙,可偏以避鄙免破項(xiàng)壞原敲先尚叼未進(jìn)進(jìn)入Ti筒me征r0溢出朗中斷廁服務(wù)師程序政時所疤使用捏的寄泰存器場內(nèi)容飾。用戶炎當(dāng)然戀也可雕以采鉗用原蕩先的撿寄存臉器,利但是匹此時潛就必遵須維常護(hù)寄使存器棄的內(nèi)蓄容,淹一般岸足存英進(jìn)入野中斷棕服務(wù)匆程序兇前先肆將使拜用到鳴的寄暢存器昆放入碰堆棧穩(wěn)中,丈等到鋪要離礎(chǔ)開之機(jī)后冉緣瑞重新華由堆怎棧取憐出,在并恢筑復(fù)原醋先的改數(shù)值犬,這匙種做顆法在帳維護(hù)墓管理越上要翠小心盟。例5、外碑部中店斷IN沾T0本實(shí)索驗(yàn)使卸用AT塘89展S5列1的Po控rt和1連接殼到8爬顆LE賭D,痕Po扶rt栗1在正瓶常狀尸況下跨會輸翁出跑著馬燈披,然鋼后通玻過用壯戶觸辜動外啊部的父硬件輔來中導(dǎo)斷IN光T0毫,當(dāng)IN系T0引腳包有低錢電位香的脈堆沖出剃現(xiàn)時視,8停個LE何D會一跨閃一茂滅4否次。在這堪次練五習(xí)中知,您羞將學(xué)晝會如冷何使渡用外等部中鵝斷IN款T0壯。電路什圖#in純cl鴨ud省e離<R獸EG拆X5思1.昆H>vo燙id掉d河el繩ay新(此vo嫌id掙)/*瘦d手el搏ay函數(shù)泡*爪/{考un廟si論gn奸ed胳c節(jié)ha像r膜i,忙j;/*這個幣函數(shù)熄執(zhí)行促時間阻的延狂遲雀*/fo納r窩(i傷=0鍛;i或<2盆55艷;i愿++竊)fo熊r(業(yè)j=虜0;拍j<束25航5;朱j+箱+);}vo聚id榴d嚼el啦ay旁_4味is掀r鐘(v越oi拒d)/*遠(yuǎn)d穿el情ay旬_4易is野r函數(shù)裙*蛇/{鵝un鄙si機(jī)gn羞ed侵c占ha竭r磨i,筑j;/*這個秒函數(shù)科執(zhí)行拆時間呆的延打遲筑*/fo奔r寧(i戚=0圍;i掌<2李55軟;i創(chuàng)++叼)fo談r(痰j=賞0;帽j<裁25沙5;亦j+停+);}st病at哄ic脅v佛oi錯d炒xi墓nt甩0_is迷r(v妥o(hù)i自d)鼻i琴nt層er理ru礎(chǔ)pt烏I勝E0季_V走EC忘TO夾R{戒un冤si攪gn岔ed皂c龍ha抗r鬧i,博j=籃0X拒FF根;/*變量j津*/fo徒r(摸i=唉0;鈔i<柜16茶;i貿(mào)++拒){j=敬~j蓬;P1猶=澆j幟;/*將數(shù)毒值輸瀉出到LE漸D輸出截端口怕*疏/de田la嚷y_躁4i林sr掏(臣);}}vo輔id段m漫ai臂n共(v愧oi晴d){氏un體si洗gn筐ed燃c區(qū)ha飾r奧j=這0X盒FF勢;/*變量j不*/EA厲=0齒;/*設(shè)定拔系統(tǒng)爐不接暢受所丙有的猾中斷毒*偵/EX沫0=鼓1;/*設(shè)定掌接受IN其T0的中血斷茶*/PX盲0=展1;EA耗=1騰;/*設(shè)定欄系統(tǒng)蛋接受莖中斷今*傘/wh鋪il臂e犧(1晶)/*無窮貿(mào)循環(huán)微*厘//*漢依朵次讓LE泳D節(jié)0,穗1,飽2,芳3,佩4,痕5,袖6,仔7閃爍葉*雪/{j=飾(j疾<<貿(mào)1)女|享0宋x0睬1;if茄(j創(chuàng)==鞠0X絨FF扭)喊j=勞0X流FE恐;P1逆=遭j撞;/*將數(shù)止值輸鄭出到LE責(zé)D輸出養(yǎng)端口睬*雪/de譯la定y(裳);/*調(diào)用de菊la據(jù)y函數(shù)綿*/}}例6、按攻鈕檢附測1目的慎是使諸用8卡05渴1洪的PO艇RT傍2連接剪到一執(zhí)個彈簡跳式宗按鈕晉作為尼輸入不,PO酸RT航1則連究接到輪1個錦共陽蓬七段腹顯示攏器。叢程序?yàn)a執(zhí)行丈時,僚共陽百七段減顯示俊器會棒先顯過示0,之后脫當(dāng)用系戶每注按一燒次彈噸跳按輕鈕,視共陽褲七段盤顯示耀器所碰顯示安的數(shù)撇字就刻會加驅(qū)1,零直到指9之傭后又子會恢仁復(fù)到關(guān)0。電路叛圖#in講cl鋸ud脊e唉<R痰EG午X5渣1.踏H>#d件ef贏in莫e榴TR蓬UE崇1#d秘ef揭in梨e饞FA層LS貪E膚0co根de逢se協(xié)ve求n_se概g[1嘗0]秒={乞0X夾C0拍,趙0X末F9圖,茫0X坑A4投,盒0X趙B0驢,機(jī)0X導(dǎo)99眾,回0X過92墨,墨0X曾82嫌,急0X免F8軍,痛0X昏80鞋,方0X沸90停};vo青id爺d旦el疲ay吉(舉vo雙id失)弊/*酒w計(jì)ai害t杏fu風(fēng)nc調(diào)ti墓on非*狡/{un茫si奴gn為ed秤c謙ha貞r擊i,騙j;/*斗o券nl區(qū)y嗓to舌d鉆el妄ay鍵f行or怎L噸ED港f鈔la舌sh抱es遙*霉/fo踐r按(i撞=0飲;i收<9盤6;悶i+釣+)fo羅r(株j=搏0;壁j<話25俱5;驅(qū)j+辜+);}//函數(shù)ke貌yp醋re取ss踢ed檢查美是否壩有按逐鍵按積下in黨t摟ke蒸yp黨re吊ss刺ed(){do卷{wh越il江e獵(P登2_壟0=雀=1昌);de仿la神y(墾);if賽(P貓2_迅0=拼=0稈)駛{de喇la暖y(真);if版(誘P2蝴_0騎==某0)re嚇tu搖rn秤T們RU狹E;}}池wh脹il牙e(割1)終;}vo錫id燭m攀ai咐n策(v貫oi虹d){in求tc;P1節(jié)=s誓ev蹄en薄_se便g[c忍];do衰{if娘(ke敢yp規(guī)re柴ss圖ed()不)演c坊++麥;if店(c婦==物10才)透c=衣0;P1歌=s困ev僑en枕_se狠g[c端];}稱wh咳il涉e(趴1)橡;}在這伙一個捏程序繞中,汁我們范寫了名一個電判斷閱按鈕教是否水被按俯下的頌函數(shù)ke誤yp停re圖ss林ed,這一為個函臘數(shù)在撥用戶展按下盛按鈕雅時就母返回TR評UE漂(1郵)。因?yàn)橥诎聪路野粹o急時,澇必須曠消除左按鈕遞彈起父的時搞間,催因此禽當(dāng)程脅序檢腰測到鎖按鈕銀事件畫時(P2受0等于這0時判),占必須菊延遲蘭一段敵時問否之后頓再檢簽查P2益_0是否酬還是易0,如果烤還是識0,就表掏示按刪鈕確液實(shí)被激按下羽,否杏則就授表示步只是坦無效斧信息呀而已森。根忙據(jù)這養(yǎng)個原泉理,猾所以匪設(shè)計(jì)糧出函妻數(shù)ke測yp燥re專ss全ed的流易程圖絲式,如派圖所價示。例7、按疼鈕檢陜測2上一串節(jié)的怪按鈕推檢測被程序蚊中,辦消除化彈起期的時藝間是亮利用丙循環(huán)聯(lián)來延個長一呀段時愧間之盯后,嘴然后思再檢記查按汽鈕,益這種散做法牛雖然槐可以迷消除拉彈起范時間種,但弓是卻國也造羨成循之環(huán)執(zhí)示行時嗓其他夢工作莊無法風(fēng)進(jìn)行笨的缺牛點(diǎn),釣所以湖在這否一節(jié)輩中,赴我們咐把時駱間延計(jì)遲的股部分紫交給Ti協(xié)me槍r0來處現(xiàn)理,冰如此個一來森,就隔可以卵讓CP會U處理必其他趕事情肉了。本練習(xí)使用槍80院51駛的PO鞏RT磚2連接灶到2饅個彈別跳式夠按鈕貓作為嘴輸入爐,其奇中一懂個是裳上數(shù)致的彈陳跳按期鈕,輝另一弓個則炒是下繳數(shù)的感彈跳幼按鈕旦。PO器RT妻l則連曠接到凳1個隔共陽龍七段趕顯示煙器。說程序鮮執(zhí)行醒時,永共陽勞七段誼顯示鑼器會挪先顯處示出犧0,之后暑每當(dāng)糕用戶將單擊泳一次乎上數(shù)慈的彈鹽跳按事鈕,藏共陽開七段壯顯示露器所報顯示技的數(shù)梅字就胞會加贈1,肢直到蔽9之殖后又瀉會恢基復(fù)到眉0。而每線當(dāng)用寺戶按孫一次樓下數(shù)染的彈把跳按沃鈕,邊共陽輸七段夫顯示膠器所沃顯示薄的數(shù)姐字就掉會減沒1,啟直到旦0之喚后又芳會恢忽復(fù)到尸9。電路棄圖#in汁cl疑ud浮e逗<R諸EG效X5浩1.蔬H>#d仁ef周in朵e腫T嬸IM功ER高0_狹CO扒UN床T盆0X澤EE相11#d別ef咬in珠e盯T燦RU畢E障1#d品ef盯in柱e榨F蹲AL暮SE擇0#d裙ef淹in扇e點(diǎn)T辛IM粉ES把25co選dese秩ve多n_se暗g[1釣0]辭={冒0X綢C0絮,停0X價F9多,族0X摸A4孩,無0X維B0捷,采0X答99騎,螞0X扯92倉,桐0X攀82弱,津0X伶F8蠻,材0X距80污,榆0X污90戴};in拍tc,誦u天ps貢,梅do嬸wn刷s;st升at蘇ic固v持oi濾d踢ti壺me披r0唇_i生ni湊ti匹al果iz顯e(點(diǎn)vo還id良){曠EA阿=0景;TR走0=寇0;TM內(nèi)OD我&董=薪0X蘿F0猾;TM反OD禮|案=0緞x0崗1;TL亦0=研(T廚IM努ER裝0_陷CO匙UN漫T璃&讓0x蠅00源FF密);TH成0=秀(T蛙IM滑ER沖0_誦CO羞UN梅T視>>職8笨);PT訊0=王0;ET對0=靈1;TR幸0=趁1;EA器=1禮;}vo貿(mào)id符m愧ai畫n巴(v偵oi略d){c=殼0;up畏s=科0;do介wn沾s=傘0;ti皮me叨r0棉_i掘ni賤ti恐al填iz鋒e(粥);P1飼=s盛ev竭en丘_se軍g[c民];wh看il板e(渣1)歪;}//函數(shù)ti押me猜r0拜_is協(xié)r檢查售是否飲有按修鍵按羽下st嚼at燭ic增v焦oi清d炸ti話me螞r0仍_is感r(v緊oi梁d)思i純nt個er緒ru托pt糕T膨F0淘_V目EC得TO區(qū)R峽us紗in攤g犯1{見T刮R0店=0狼;TL械0=儲(T去IM則ER塊0_嫌CO堆UN凍T漂&統(tǒng)0x看00勝FF懸);TH核0=西(T煤IM膝ER善0_餃CO撿UN霜T仍>>胃8籌);TR趨0=封1;if臉(示up缸s商!=要0)//檢查up惜s等于偉0嗎禾?{up茶s-她-;//如果up輝s不等粉于0型,就炕將up維s減1if喘(穿up級s=未=0辯&逢&套P2奮_0球==絹0)//如果up坊s減到姻0,賴就檢揮查P2國_0個==淡0{c+鏟+;//如果P2季_0是0攤就表款示上傷數(shù)的島彈跳郵按鈕吼被按裙下,澤所以c加1if上(c蠟==刷10竄)仙c筋=0衰;//如果c加到吵10確,就陪將c恢復(fù)衣為0}}el飽se袍i寺f矩(P照2_散0=楊=0滴)up筆s=暢TI悉ME慢S;//如果up芽s=氣0且P2蠢_0大=0就將up俯s設(shè)為濱25if哪(騰do喂wn蒙s胡!=認(rèn)0)//檢查do收wn階s等于懼0嗎洞?{do脆wn雅s-躬-;//如果do輩wn羨s不等辨于0偷,就腫將do妹wn視s減1if撐(國do拒wn亦s=課=0弱&緞&弄P2幼_1累==具0)//如果do敵wn糟s減到隙0,厚就檢氏查P2靈_1迎=0{c-沃-;//如果P2柱_1是0副就表述示下食數(shù)的室彈跳梁按鈕廈被按開下,鋒所以c減1if鳴(c慨==麻-1汪)娛c=叔9;//如果c減到躲-1朵時,擋就將c恢復(fù)抄為1呢0}}el題se攤i秘f拉(P以2_巾1=霞=0販)do暫wn往s=招TI本ME夫S;//如果do同wn順s=漸0且P2臨_1以=斃0//就將do由wn飾s設(shè)為瀉25P1舅=s番ev孕en信_se燦g[c判];}如何羅計(jì)程港序可克以使老用Ti郵me蟻r0延遲丙一段憑時間銹呢?柳在此冷我們秋利用猛變量up碧s,當(dāng)?shù)诤梢淮沃茩z查須到P2今_0等于襖0時堅(jiān)就設(shè)嗎置up撤s=咸25概,然后駛每一還次Ti謠me厭r0中斷弟之后量,就夾將up效s減1事,直主到0主為止他,剛玻好經(jīng)穿歷2槽5/花20牌0秒特,接皆下來爆再檢晝查P2杏_0是否鳴依然較等于榆0,就可磚以判殃斷上遣數(shù)的像彈跳斗按鈕孟是否被單路擊。昌程序粉部分懼如下辭所示遣:if倡(陶up冒s漸!=吹0)//檢查up株s等于種0嗎捉?{up冬s-理-;//如果up受s不等罷于0吊,就酬將up罰s減1if屑(泉up布s=甘=0列&隱&蔑P2聽_0蠻==乞0)//如果up繳s減到紗0,征就檢拘查P2錄_0壓==皮0{c+清+;//如果P2富_0是0疲就表分示上調(diào)數(shù)的亞彈跳獻(xiàn)按鈕座被按急下,憲所以c加1if摩(c親==瞎10浩)贈c槽=0機(jī);//如果c加到液10摧,就剪將c恢復(fù)方為0}}el器se嚴(yán)i佛f賺(P毀2_稅0=務(wù)=0乘)up刮s=加TI諷ME吩S;//如果up總s=靈0且P2羅_0刃=0就將up鳳s設(shè)為橫25例8、四甲個七任段顯顧示器艦的顯松示控麻制本練習(xí)使用窯80尚5l的Po委rt習(xí)1連接知到四現(xiàn)個七乞段顯喂示器暖。這恭四個倚共陽投七段河顯示聚器的a、脫b、卵c、碑d、柔e、梳f和g全部首都連槽接在盤一起遣,因泥此PO尖RT偶1所輸垮出的團(tuán)數(shù)據(jù)領(lǐng)按理謀說應(yīng)奔該會瓦在四蠶個共爺陽七腳段顯呢示器傘都顯嫌示出其來。礙但足嘉我們埋利用PO憐RT產(chǎn)0的低等4位摸分別餐控制絕這四段個共庸陽七文段顯唱示器流,讓衣四個題共陽與七段詢顯示奇器使振用掃快描的婦方式場輪流捕顯示充數(shù)字耀,因皇此PO宋RT歉1每一是次輸碎出的足數(shù)據(jù)寺恰好鎮(zhèn)只會孩在其譜中一正個共舒陽七杠段顯優(yōu)示器囑顯示蹈數(shù)字輩。當(dāng)女您連怨接好園電路晴,并取且完殺成程枕序之透后,皺您將涂可以播看到要這四會個七杰段顯伐示器番上顯毛示0睡~9燈99贊9。端在這旱次實(shí)毯習(xí)中牌,您吳將學(xué)俯會如拔何使園用輪海流驅(qū)琴動的桑方式支,讓陳四個共飽陽七別段顯良示器懷輪流寧顯示亮數(shù)字著。電路敬圖程序虎描述屆:說刃明如蛾何使秧用8亮05令1米的Po莖rt中1連接屯到四挨顆七品段顯臟示器景,PO怖RT晃0的低抖4位習(xí)分別脅控制訊這四簡顆共智陽七困段顯影示器頓,讓捏四顆捐共陽儲七段歌顯示吳器使維用掃臘描的代方式練輪流扯顯示可數(shù)字雨。這四黑顆七貨段顯奸示器帳將顯際示0箏到楊99晉99驅(qū)。#in江cl確ud匹e扔<R尼EG戀X5訓(xùn)1.僵H>#d扯ef錦in命e多TI貧ME筍R0殼_C綢OU娘NT井0仰xF躍C1未8co糊de攻se暈ve擺n_se辱g[1唯0]雀={緊0X按C0爹,猛0X陳F9踐,有0X待A4益,霸0X桿B0纖,侄0X瓦99條,鴨0X勤92糠,啦0X駱82位,驕0X亭F8勵,死0X鄰80手,誼0X至90是};co謠de注s飾ca框n[孕4]吐={移0X潤0E湯,烏0X階0D排,懶0X丹0B匙,廈0X捧07臘};un董si金gn亞ed北c小ha械r判co滑un觸te活r[限4]禁={惰0,擊0,茂0,粱0}菠;un別si豈gn圍ed宜c侵ha耀r臂i=親0;in拌tti關(guān)me渡r0撒_t抱ic虜k;st局at化ic垮v叢oi御d廊ti翠me班r0慶_i可ni觀ti援a(chǎn)l葬iz扒e(管vo鐵id臣){EA存=0喪;ti暖me牲r0蠢_t準(zhǔn)ic填k=想0;TR盡0=嫩0;TM倒OD花&研=狡0X竟F0悉;TM捧OD說|負(fù)=0恰x0濃1;TL煩0=粥(T喂IM拌ER桑0_即CO性UN率T王&慮0x恐00刪FF輩);TH景0=路(T扭IM便ER旱0_揚(yáng)CO凱UN抵T叉>>議8買);PT慣0=灶0;ET漏0=造1;TR化0=喂1;EA揀=1守;}vo臂id甜m吩ai蝴n悠(v守oi存d)怎{ti芬me彩r0講_i熟ni桌ti磁al松iz去e(濱);wh怒il糟e稱(1免);/*無窮會循環(huán)渴*聯(lián)/}st輔at詢ic花v高oi開d籌ti上me樣r0峰_is增r(v情oi壞d)棵i絮nt鞭er盆ru禽pt養(yǎng)T忘F0遍_V離EC畏TO私R丘us些in矛g做1{盲T偽R0題=0歐;TL鈔0=述(T耽IM塌ER月0_相CO擦UN蘆T原&抹0x叫00穿FF謊);TH充0=榮(T銹IM列ER甩0_碰CO原UN激T蛙>>囑8甚);TR拌0=健1;P1巷=s蚊ev厭en絹_se輕g[c裂ou磨nt散er庫[i系]]坡;P0腐=s弦ca蠶n[啊i]蝦;i+藝+;if暫(i攻==采4)橋i僵=0順;ti慶me付r0縣_t四ic現(xiàn)k+訓(xùn)+;if誤(茄ti檔me傭r0福_t罩ic哄k=疑=1黑00投0)匠{ti苦me份r0鎮(zhèn)_t隆ic鴉k=縣0;co躁un恒te踏r[拐0]鞏++伏;//個位韻數(shù)加凝1if理(似co萌un接te斜r[粱0]殖==塔10予)炎{//如果定個位殊數(shù)等鑒于1隔0,形則執(zhí)繡行以貪下的欺部分co崗un樂te恩r[侄0]沾=0穗;//個位灣數(shù)變即成0co賢un卡te羨r[招1]總++蕩;//十位標(biāo)數(shù)加爐1if屬(c碑ou后nt蓄er勤[1振]=僑=1貸0)愛{//如果襖十位恭數(shù)等刷于1槽0,趙則執(zhí)蔬行以柿下的努部分co體un尿te謙r[獎1]翼=0槽;//十位樸數(shù)變腔成0co務(wù)un啦te影r[逼2]邁++房誠;//百位咐數(shù)加亞1if注(c天ou蝦nt泥er塊[2傅]=周=1要0)花{//如果蜻百位班數(shù)等摸于1液0,箱則執(zhí)米行以敵下的制部分co通un洲te寬r[稈2]斥=0渡;//百位闊數(shù)變忙成0co萄un困te孤r[斯3]輩++華;//千位不數(shù)加兼1if廳(c祖ou吧nt周er乒[3桑]=青=1開0)逗c廢ou充nt板er董[3廈]=插0;//如果庸千位浴數(shù)等救于1掀0,狂則變右成0}}}}}0數(shù)織到9盈99正9的圍程序稈部分努說明醬如下鞭。我沾們利桂用co憶un雷te竊r[回0]出、c肌ou套nt迅er璃[1善]、擠co勻un嶼te商r[鋒2]見~c旨o(jì)u填nt偵er敗[3銹]分別估來儲蝦存?zhèn)€壯位數(shù)團(tuán)、十示位數(shù)史、百防位數(shù)汗和千遇位數(shù)躬。所鍵以每存隔一侮秒就壺將co朝un板te具r[淘0]加1晶,如溫果co湖un討te矩r[筒0]等于時10油就必類須進(jìn)細(xì)位,楚于是擇將co反un沃te盒r[屢0]設(shè)為0,同時co盡un添te壤r[承1]加1旦。co林un揮te掩r[洞1]等于戴10伏的時纖候也漠是同銳樣的存道理列,依樣次進(jìn)速位到co書un砍te屬r[鍋2]止~c翁ou梳nt第er臣[3偽],程序游如下所兇示:例9、4版*4訪小案鍵盤速輸入本練匆習(xí)使兩用前梁一節(jié)材的4灣個七搏段顯封示器夜電路蹈,然走后外贈加一披個4頃×4躬的小從鍵盤馬,其籍中8仰05攝1的PO膝RT同2連接朋到4綿×4也小鍵擠盤輸茶入。扁程序垃執(zhí)行距時,環(huán)用戶長可以晌從4或×4堆小鍵律盤輸擇入數(shù)殘據(jù),耀而所擺輸入的數(shù)就據(jù)會支顯示湯在4原個七樹段顯忘示器剖上。電路詢圖函數(shù)飽描述渾:ch狼argo棄tk斑ey(v房誠oi慕d)從4左×4判小鍵形盤輸外入數(shù)變據(jù),勞返回丸0~1倡5小鍵腫盤的勺連接餐方式適:主程澆序:ex損-9帽.c#d桌ef女in失e壯TI萍ME湯R0蟻_C單OU漁NT臣0霜xE沿E1合1co餅de惰s晨ev丹en長_s聯(lián)eg薯[1蠻6]娛={與0X劈燕C0褲,脅0X繁F9歌,譯0X鄉(xiāng)豐A4晌,夕0X悅B0跡,爺0X蹲99津,腎0X兩92戀,汗0X唇82隆,乳0X隔F8舅,競0X臥80曠,魚0X副90末,0厲X8千8,吼0X各83丘,0被XC順6,統(tǒng)0X攜A1君,0蒜X8肯6,工0X退8E俯};co劍de盆s旱ca禽n[著4]般={浮0X飯0E掏,擁0X床0D及,練0X告0B族,撓0X坡07責(zé)};un緊si惱gn土ed敵c修ha慰r總co畝un輝te漿r[船4]共={抱0,頁0,備0,續(xù)0}凡;un掘si椅gn般ed溜c根ha樹r組ti憲me濃r0敘_t突ic午k,肉k=織0;st驢at馬ic丈v杏oi虹d征ti么me百r0菠_i漏sr撥(v圓oi注d)域i唇nt珠er醫(yī)ru壤pt1us捕in會g抄1{TR敘0=填0;TL手0=娘(T輝IM絞ER疊0_卡CO遵UN雹T錫&堵0x念00浩FF錘);TH棄0=弱(T驚IM炕ER可0_斷CO佩UN息T負(fù)>>規(guī)8顛);TR骨0=丑1;P1肆=se奇ve半n_雞se彎g[策co蓬un之te貸r[撥k]]蠅;P0圾=s念ca懼n[礎(chǔ)k]隔;k+憤+;if刑(k弊==忌4)踩k彩=0半;ti賺me醫(yī)r0但_t咸ic霸k+貍+;if乖(漿ti攪me橫r0管_t悼ic亭k=秋=2比00念)特ti深me識r0尋_t掏ic斤k=保0;}st輝at介ic攀v照oi應(yīng)d鋤ti旺me很r0磨_i棉ni奇ti遇al吐iz昆e(插vo鑰id席){EA恢=0皺;ti究me江r0坐_t腿ic愧k=弱0;TR餃0=膨0;TM捧OD薦&烈=堅(jiān)0X留F0表;TM散OD遠(yuǎn)|處=0戀x0品1;TL傻0=驢(T攤IM交ER晝0_獸CO導(dǎo)UN征T嘗&靠0x牧00氣FF宗);TH庫0=釀(T匹IM誦ER腰0_弟CO戀UN俯T油>>會8疼);PT爺0=耐0;ET咳0=罪1;TR融0=覺1;EA施=1枯;}vo泊id申m樹ai拐n后(v謝oi忘d){un越si虜gn席ed炊c促ha繞r指c=泳0;ch臉arch;ti刃me芽r0艱_i繩ni休ti加al挑iz方e(弄);do魔{ch=go墳tk想ey()蘭;fo以r(障c=盡3;亭c>諷0;代c-鼠-)co鋒un紗te還r[作c]臂=c陡ou遇nt辭er責(zé)[c陪-1母];co貢un患te叔r[腫0]遠(yuǎn)=ch;}控wh企il梁e(絕1)鄰;}小鍵使盤的切輸入歷函數(shù)巡壽:ke須yp壞ad紛.c#in貍cl夏ud吼e析<R騙EG仿X5青1.繡H>co所de礙c揮ha隙r鋤ke碌y_江co毯de晚[]飲={摘0x靠7E器,娃0X喚BE驢,滲0X息BD團(tuán),置0X也BB栽,鍵0X細(xì)DE伐,頑0X賠DD例,訊0X赴DB培,駁0X草EE筐,盼0X社ED碑,闊0X忠EB北,行0X繡7D晝,循0X蔥7B奸,剝0X籠E7鉛,霉0X趨D7擁,灰0X酸B7敘,剩0X壁77子};co顧deks痛p[4釋]=雞{0記x7拉F,尖0x碎BF忽,0貼xD瀉F,裁0x牛EF張};vo慎id博d榴el拆ay流(嶄vo姥id峰)記/*時間郊延遲市函數(shù)嘩*述/{un冷si組gn沖ed已c親ha坊r爭i,憑j;fo蓬r發(fā)(i戚=0點(diǎn);i最<5廳;i終++文)fo躲r(客j=蒜0;兔j<垮25桶5;顛j+我+);}ch璃ar犯k炎ey請pa熟d_奴sc壇an璃(){ch吵ar下k劫ey姨,i盛;P2點(diǎn)=0蛋xF存0;wh邪il窯e渾(P被2!若=0震xF馳0)拖;do散{fo凱r(位i=衣0;某i<皂=3項(xiàng);i勞++班){P2括=ks答p[i受];if期(P葡2!乞=ks花p[i橋]){de妙la醬y(敘);ke癢y=粥P2籍;if投(k倆ey伯!=ks也p[i薦]){遙r裹et棄ur頌n(儀ke供y)難;恢}}}}造wh碼il莖e(馳1)聚;}//檢查裁是否據(jù)有按高鍵按遺下ch銹argo匹tk瘡ey(){ch牽ar況t同em處p,厲i;te遣mp如=k蠻ey柿pa煎d_采sc聚an侵()壟;fo位r傭(i兵=0父;i全<=罩15扎;i趨++賤)脊{if飯(t辜em黨p=陰=k掘ey消_c時od仗e[第i]潤)輪re督tu允rn通(i撈);}re如tu恢rn列(1施6)尖;}1.徐1單片嫂機(jī)應(yīng)具用系趴統(tǒng)的事基本忽結(jié)構(gòu)1.扭1.鐘1單片刮機(jī)應(yīng)轎用系烈統(tǒng)的磨硬件客組成被控對象單片機(jī)光電隔離A/D光電隔離光電隔離D/A擴(kuò)展存儲器顯示器、鍵盤接口功能芯片接口數(shù)字量輸入模擬量輸入開關(guān)量輸入開關(guān)量輸出模擬量輸出輸入輸出接口I/O接口二.單片母機(jī)應(yīng)唐用系婦統(tǒng)設(shè)沫計(jì)1.鹿1.肺2單片怒機(jī)應(yīng)拳用系練統(tǒng)開沉發(fā)的鈴基本損過程一.彼系統(tǒng)木需求紡與方忙案調(diào)滋研系統(tǒng)惰需求藝與方召案調(diào)偶研的蹦目的駐是通反過市哥場或辯用戶了解用戶吃對擬開發(fā)輝應(yīng)用凝系統(tǒng)塌的設(shè)計(jì)蟻目標(biāo)和技術(shù)雖指標(biāo)。通碧過查攏找資跌料,頃分析衡研究區(qū),解預(yù)決以汽下問房誠題:1)了解南國內(nèi)但外同雨類系胳統(tǒng)的耳開發(fā)劣水平猴、器等材、守設(shè)備味水平超、供償應(yīng)狀便態(tài);諒對接梁收委夸托研虎制項(xiàng)沸目,紅還應(yīng)俯充分揀了解叮對方航技術(shù)拜要求忌、環(huán)照境狀笑況、元技術(shù)探水平礙,以固確定必課題板的技清術(shù)難扯度。2)了解愧可移管植的臨硬、滔軟件土技術(shù)升。能正移植突的盡禍量移虧植,訊以防角止大華量低陪水平臘重復(fù)服勞動稻。3)摸清雖硬、冤軟件臨技術(shù)蜻難度松,明墳確技移術(shù)主躁攻方角向。4)綜合板考慮川硬、干軟件擋分工哭與配憐合方纖案。友單片檔機(jī)應(yīng)視用系震統(tǒng)設(shè)久計(jì)中宿,硬健、軟計(jì)件工央作具跟有密滔切的加相關(guān)刊性??尚懈煨苑旨槲龅内A目的伶是對疼系統(tǒng)幅開發(fā)雁研制那的必仗要性扯及可渡行性婆作出明確的判暖定結(jié)超論。青根據(jù)惑這一帶結(jié)論它決定城系統(tǒng)竄的開濤發(fā)研轉(zhuǎn)制工掉作是馳否進(jìn)絕行下趕去。可行吉性分嘗析通常處從以捧下幾捐個方假面進(jìn)遼行論陰證:1)市嫁場或縫用戶吊的需錯求情睛況。2)經(jīng)促濟(jì)效嬸益和呈社會派效益椅。3)技令術(shù)支醬持與另開發(fā)睜環(huán)境仗。4)現(xiàn)胞在的積競爭坑力與睡未來欄的生拐命力害。二.例可行末性分貴析系統(tǒng)圖功能太設(shè)計(jì)包括系統(tǒng)屢總體域目標(biāo)買功能演的確煤定及系統(tǒng)雅硬、孟軟件憲模塊刪功能昂的劃昂分與校協(xié)調(diào)拔關(guān)系。系統(tǒng)友功能居設(shè)計(jì)是根傳據(jù)系荷統(tǒng)硬毅件、視軟件愈功能萍的劃撈分及嗓其協(xié)賊調(diào)關(guān)雞系,個確定骨系統(tǒng)注硬件晃結(jié)構(gòu)殿和軟仿件結(jié)伸構(gòu)。系統(tǒng)硬件結(jié)構(gòu)日設(shè)計(jì)仁的主青要內(nèi)怪容包省括單蹲片機(jī)雨系統(tǒng)后擴(kuò)展肥方案構(gòu)和外裹圍設(shè)免備的鑒配置疲及其浩接口敲電路緣瑞方案鄉(xiāng)豐,最恭后要豎以邏警輯框企圖形戚式描時述出污來。系統(tǒng)軟件結(jié)構(gòu)精設(shè)計(jì)恭主要壞完成轉(zhuǎn)的任腿務(wù)是稅確定蛇出系余統(tǒng)軟吸件功損能模胃塊的談劃分秋及各箱功能集模塊頑的程太序?qū)嵃‖F(xiàn)的詠技術(shù)牲方法播,最依后以冶結(jié)構(gòu)性框圖些或流茂程圖圍描述猴出來厚。三.爭系統(tǒng)裹功能脈設(shè)計(jì)系統(tǒng)忙詳細(xì)翅設(shè)計(jì)胡與制討作就南是將蒜前面城的系臨統(tǒng)方么案付例諸實(shí)沫施,快將硬志件框更圖轉(zhuǎn)量化成貝具體久電路絹,并慎制作據(jù)成電度路板壓,軟界件框纏圖或嚴(yán)流程往圖用黃程序剃加以往實(shí)現(xiàn)將。四.框系統(tǒng)茂詳細(xì)拿設(shè)計(jì)丑與制弓作系統(tǒng)順調(diào)試疲是檢立測所價設(shè)計(jì)逃系統(tǒng)語的正停確性魯與可側(cè)靠性露的必殖要過對程。妥單片煌機(jī)應(yīng)暈用系慰統(tǒng)設(shè)堡計(jì)是團(tuán)一個賺相當(dāng)敬復(fù)雜然的勞聲動過屆程,寬在設(shè)搖計(jì)、奶制作從中,借難免饅存在墓一些宿局部甲性問喚題或蛾錯誤槽。系煌統(tǒng)調(diào)嘩試可爺發(fā)現(xiàn)考存在饒的問啟題和樸錯誤理,以槳便及容時地埋進(jìn)行侮修改在。調(diào)聰試與山修改治的過監(jiān)程可桿能要盤反復(fù)缸多次島,最扮終使赴系統(tǒng)附試運(yùn)店行成儉功,穴并達(dá)觸到設(shè)蝕計(jì)要郵求。五.授系統(tǒng)桂調(diào)試互與修部改系統(tǒng)出硬件摔、軟芳件調(diào)本試通磨過后島,就肅可以滴把調(diào)拌試完賢畢的匹軟件放固化最在EP蘭RO飄M中,乘然后常脫機(jī)飲(脫頓離開報發(fā)系防統(tǒng))欠運(yùn)行被。如捆果脫痕機(jī)運(yùn)匙行正悠常,殖再在身真實(shí)挎環(huán)境崇或模烈擬真威實(shí)環(huán)扮境下仁運(yùn)行釀,經(jīng)荒反復(fù)店運(yùn)行亞正常卡,開算發(fā)過擠程即霸告結(jié)稠束。六.礎(chǔ)生成今正式竹系統(tǒng)逗或產(chǎn)碑品1.它2單片足機(jī)應(yīng)溪用系慨統(tǒng)的譽(yù)硬件樓設(shè)計(jì)1.跡2.土1硬件岡系統(tǒng)葵設(shè)計(jì)蹈原則一個遼單片政機(jī)應(yīng)加用系耍統(tǒng)的庫硬件誦電路香設(shè)計(jì)浩包括震三個崗部分柏內(nèi)容纖:一是單片愁機(jī)芯膛片的牽選擇吵,二是單片薪機(jī)系差統(tǒng)擴(kuò)題展,三是系統(tǒng)馬配置背。一、至單片直機(jī)芯饞片的盟選擇二、笛單片蚊機(jī)系釘統(tǒng)擴(kuò)范展單片怨機(jī)系飄統(tǒng)擴(kuò)嚷展是舟指單越片機(jī)射內(nèi)部象的功熊能單速元(如程探序存哨儲器楊、數(shù)親據(jù)存漏儲器張、I/眼O口、翅定時娃器/計(jì)數(shù)鉤器、惰中斷壁系統(tǒng)質(zhì)等)的容法量不即能滿鮮足應(yīng)股用系溪統(tǒng)的陡要求言時,壤必須卷在片頑外進(jìn)匠行擴(kuò)掠展,壓這時偽應(yīng)選鏈擇適監(jiān)當(dāng)?shù)膿屝酒f,設(shè)首計(jì)相逆應(yīng)的珍擴(kuò)展忽連接泉電路疏;系印統(tǒng)配另置是搬按照轎系統(tǒng)象功能昏要求摧配置恥外圍攝設(shè)備進(jìn),如獲鍵盤肢、顯恭示器市、打歉印機(jī)駐、A/疫D轉(zhuǎn)換銹器、D/六A轉(zhuǎn)換釘器等羞,設(shè)互計(jì)相念應(yīng)的尤接口偽電路裙。三、湯系統(tǒng)乳擴(kuò)展唐和配兵置設(shè)績計(jì)遵棒循的零原則系統(tǒng)貌擴(kuò)展香和配偵置設(shè)撓計(jì)遵變循的更原則沈:(1)盡可胃能選切擇典謹(jǐn)型通杰用的幼電路汁,并推符合翻單片別機(jī)的膊常規(guī)夸用法窯。(2)系統(tǒng)成的擴(kuò)片展與柄外圍濱設(shè)備惜配置屈的水握平應(yīng)院充分?jǐn)碀M足殺應(yīng)用乘系統(tǒng)滔當(dāng)前驅(qū)的功沉能要湯求,祝并留知有適花當(dāng)余字地,棄便于沃以后例進(jìn)行訪功能掘的擴(kuò)帽充。(3)硬件悄結(jié)構(gòu)渠應(yīng)結(jié)因合應(yīng)粒用軟絡(luò)件方輔案一埋并考賭慮。(4)整個恢系統(tǒng)爬中相斥關(guān)的答器件憶要盡唯可能賊做到棋性能違匹配洲。(5)可靠喜性及繪抗干冤擾設(shè)頭計(jì)是坑硬件夸設(shè)計(jì)慶中不俯可忽薯視的棗一部聚分。(6)單片曉機(jī)外滅接電悠路較聽多時陣,必干須考順慮其抄驅(qū)動技能力由。1.法2.屬2硬件僅設(shè)計(jì)一.竹程序洋存儲尼器二.辰數(shù)據(jù)襯存儲篇器三.I/雷O接口四.辭譯碼籃電路五.咽總線蜘驅(qū)動耀器六.報抗干見擾電健路1.千3單片瓣機(jī)應(yīng)恨用系挽統(tǒng)的存軟件貴設(shè)計(jì)一個居應(yīng)用頑系統(tǒng)符中的辨軟件洲一般汗是由系統(tǒng)倉監(jiān)控朝程序和應(yīng)用旅程序兩部什分構(gòu)播成的震。其歉中:應(yīng)用膊程序是用閣來完千成諸港如測煌量、季計(jì)算評、顯噸示、透打印蜂、輸災(zāi)出控摧制等鈴各種迎實(shí)質(zhì)衣性功夫能的克軟件改;系統(tǒng)狠監(jiān)控縫程序是控拋制單耳片機(jī)傷系統(tǒng)律按預(yù)追定操豬作方獲式運(yùn)看行的用程序蠅,它壘負(fù)責(zé)烏組織若調(diào)度據(jù)各應(yīng)兼用程銅序模待塊,訴完成儉系統(tǒng)樣自檢菜、初羨始化金、處在理鍵甘盤命序令、賄處理絮接口搏命令奪、處唇理?xiàng)l剃件觸叨發(fā)和亡顯示孕等功相能。軟件肢設(shè)計(jì)紋時,比應(yīng)根哲據(jù)系缸統(tǒng)軟勉件功洽能要碰求,欲將軟圈件分閘成若溝干個途相對欺獨(dú)立彩的部碌分,塞并根節(jié)據(jù)它井們之辜間的概聯(lián)系兼和時頃間上恒的關(guān)蔥系,浴設(shè)計(jì)居出軟刷件的踏總體刷結(jié)構(gòu)搭,畫騾出程對序流地程框族圖。肅畫流唉程框膚圖時謠還要瘋對系細(xì)統(tǒng)資革源作疏具體思的分稠配和種說明街。根舒據(jù)系單統(tǒng)特抽點(diǎn)和予用戶疊的了刊解情恨況選李擇編商程語僻言,科現(xiàn)在掌一般渣用匯禾編語奴言和C語言摩。匯編鳴語言肚編寫央程序凡對硬嫩件操芳作很役方便喚,編掙寫的鵲程序盒代碼啦短,淡以前男單片源機(jī)應(yīng)氧用系盼統(tǒng)軟選件主乓要用熄匯編掉語言緒編寫倘;C語言缺功能將豐富傘,表揪達(dá)能逮力強(qiáng)子,使維用靈肝活方圖便,腎應(yīng)用垃面廣比,目齡標(biāo)程私序效即率高能,可錢移植卸性好上,現(xiàn)在跟單片筐機(jī)應(yīng)輪用系領(lǐng)統(tǒng)開店發(fā)很圍多都嫂用C語言怨來進(jìn)俊行開埋發(fā)和牛設(shè)計(jì)。1.耗3.講1軟件肚設(shè)計(jì)前的特哪點(diǎn)一個穩(wěn)優(yōu)秀襲的應(yīng)譜用系鄭統(tǒng)的綿軟件環(huán)應(yīng)具垮有以傍下特狀點(diǎn):(1)軟件進(jìn)結(jié)構(gòu)斷清晰醋、簡宏捷、羞流程份合理倆。(2)各功侍能程捷序?qū)嵄滑F(xiàn)模南塊化鋒,系溪統(tǒng)化仙。這帆樣,珠既便瓦于調(diào)錢試、撒連接撿,又茂便于色移植嬌、修老改和府維護(hù)搜。(3)程序語存儲暑區(qū)、駕數(shù)據(jù)扒存儲縮慧區(qū)規(guī)潤劃合醉理,肥既能趣節(jié)約糟存儲飼容量匙,又艇能給米程序別設(shè)計(jì)媽與操暑作帶瞇來方品便。(4)運(yùn)行絲式狀態(tài)宰實(shí)現(xiàn)僅標(biāo)志誕化管踐理。須各個吩功能百程序讀運(yùn)行青狀態(tài)嘆、運(yùn)溫行結(jié)胳果以酷及運(yùn)悅行需詞求都劇設(shè)置侍狀態(tài)姿標(biāo)志步以便搶查詢飄,程宿序的背轉(zhuǎn)移限、運(yùn)聰行、禽控制退都可蒸通過墾狀態(tài)瘡標(biāo)志專來控貴制。(5)經(jīng)過穩(wěn)調(diào)試息修改固后的叼程序旅應(yīng)進(jìn)靈行規(guī)陡范化濟(jì),除詳去修苗改“昌痕跡怎”。撥規(guī)范濱化的蒙程序翻便于竹交流嗓、借據(jù)鑒,企也為槐今后侍的軟鬼件模序塊化芽、標(biāo)細(xì)準(zhǔn)化跟打下刮基礎(chǔ)錘。(6)實(shí)現(xiàn)抬全面競軟件樂抗干公擾設(shè)鞋計(jì)。憲軟件樂抗干棗擾是尚計(jì)算辭機(jī)應(yīng)復(fù)用系喪統(tǒng)提閥高可宰靠性召的有盞力措前施。(7)為了驅(qū)提高溫運(yùn)行喘的可屋靠性毛,在糠應(yīng)用猜軟件脖中設(shè)餓置自勸診斷銳程序匯,在遼系統(tǒng)典運(yùn)行抓前先濱運(yùn)行竄自診聽斷程俱序,擊用以諸檢查惜系統(tǒng)腿各特葉征參驕數(shù)是傾否正壓常。1.汁3.畜2資源倦分配一.糖程序奸存儲候器RO汗M/猜EP摟RO釘M資源品的分偶配在這須些資揀源分謹(jǐn)配中尋,定疼時/計(jì)數(shù)擠器、羞中斷缸、串俗行口邁等分錢配比拉較容剖易,糞這里框介紹設(shè)程序聰存儲叔器和香數(shù)據(jù)符存儲仁器的微分配州。程序帖存儲裂器RO床M/授EP架RO據(jù)M用于擾存放境程序塘和數(shù)擾據(jù)表炭格。西按照MC提S-牙51單片漫機(jī)的居復(fù)位命及中浙斷入嗓口的蕉規(guī)定巖,00稱2F盜H以前面的地齒址單鄉(xiāng)豐元作姥為中左斷、彎復(fù)位論入口歐地址項(xiàng)區(qū)。洗在這君些單英元中銅一般槐都設(shè)浴置了輕轉(zhuǎn)移繩指令座,用醬于轉(zhuǎn)鴉移到煮相應(yīng)跡的中塔斷服脹務(wù)程車序或類復(fù)位極啟動孔程序四。當(dāng)著程序晚存儲縮慧器中圾存放摧的功版能程克序及廚子程嗓序數(shù)露量較詠多時版,應(yīng)景盡可它能為繞它們壇設(shè)置譜入口滔地

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論