




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、 設(shè) 計 報 告 XXX 指導(dǎo)老師: XX 生:學(xué) 1000111111 號: 學(xué) 桂林電子科技大學(xué)機電工程學(xué)院 微機綜合設(shè)計設(shè)計報告 目錄 一、設(shè)計題目 二、設(shè)計內(nèi)容與要求 三、設(shè)計目的意義 四、系統(tǒng)硬件電路圖 五、程序流程圖與源程序 六、系統(tǒng)功能分析與說明 七、設(shè)計體會 八、參考文獻(xiàn) 一、 設(shè)計題目開關(guān)狀態(tài)顯示控制 二、設(shè)計內(nèi)容與要求 用8051單片機和8255讀取開關(guān)狀態(tài)并顯示開關(guān)狀態(tài)。用8255的A口接8個發(fā)光二極管,B口接8個開關(guān)。讀取開關(guān)狀態(tài)后將開關(guān)狀態(tài)通過8個發(fā)光二極管顯示出來。 三、 設(shè)計目的意義 通過對8255開關(guān)狀態(tài)顯示控制的設(shè)計,將所學(xué)過的知識深入理解,融會貫通,鍛煉獨立
2、設(shè)計、制作和調(diào)試單片機系統(tǒng)的能力,理解單片機系統(tǒng)的軟件、硬件調(diào)試方法和系統(tǒng)的研制開發(fā)過程,為進(jìn)一步的科學(xué)開發(fā)研究實踐活動打下更加牢固的基礎(chǔ)。 四、 系統(tǒng)硬件電路圖 五、 程序流程圖與源程序 程序清單如下: ORG 0000H LJMP MAIN MAIN: LOOP: LCALL DELAY5MS ;延時 MOV DPTR,#0FBFFH ;8255初始化 MOV A,#01000001B MOVX DPTR,A MOV DPTR,#0F9FFH ;讀PB口的狀態(tài),并且按鈕去抖 MOVX A,DPTR LCALL DELAY MOVX A,DPTR XRL A,#0FFH MOV DPTR,#
3、0F8FFH 和原狀態(tài)比較 JNZ COM ; MOVX DPTR,A SJMP LOOP COM: MOVX DPTR,A LCALL DELAY5MS ;狀態(tài)不同則顯示,并延時 SJMP LOOP DELAY5MS: ;延時程序 MOV R5,#2 MOV R6,#1 MOV R7,#25 L5: L6: L7:NOP NOP DJNZ R7,L7 DJNZ R6,L6 DJNZ R5,L5 RET DELAY: MOV R1,#1 MOV R2,#25 L1: L2:NOP NOP DJNZ R2,L2 DJNZ R1,L1 RET END 實驗現(xiàn)象為當(dāng)沒有按按鈕時發(fā)光二極管一直亮,當(dāng)按
4、下按鈕之后,對應(yīng)的發(fā)光二極管就會 滅,松開之后又會亮。 六、系統(tǒng)功能分析與說明 芯片的基本介紹1 8255本節(jié)是介紹8255的輸入輸出,并且以實驗控制。學(xué)習(xí)單片機的輸入輸出。首先,我們了解了解單片機和8255芯片的構(gòu)成。 單片微型計算機簡稱單片機,是典型的嵌入式微控(Microcontroller Unit), 常用英文字母的縮寫MCU表示單片機,單片機又稱單片微控制器,它不是完成某一個邏輯功能的芯片,而是把一個計算機系統(tǒng)集成到一個芯片上。相當(dāng)于一個微型的計算機,和計算機相設(shè)備。概括的講:一塊芯片就成了一臺計算機。它的體積小、質(zhì)I/O比,單片機只缺少了量輕、價格便宜、為學(xué)習(xí)、應(yīng)用和開發(fā)提供了便
5、利條件。同時,學(xué)習(xí)使用單片機是了解計 算機原理與結(jié)構(gòu)的最佳選擇。它最早是被用在工業(yè)控制領(lǐng)域。 單片機由運算器、控制器、存儲器、輸入輸出設(shè)備構(gòu)成。個通道3I/O口。具有接口芯片,有3個8位并行8255是Intel公司生產(chǎn)的可編程并行I/O其各口功能可由軟件選擇,使用靈活, 40引腳)。3種工作方式的可編程并行接口芯片( 8255可作為單片機與多種外設(shè)連接時的中間接口電路。通用性強。個總線接口,即數(shù)據(jù)線、地址38255作為主機與外設(shè)的連接芯片,必須提供與主機相連的所以必,8255可編程B、C口。由于線、控制線接口。同時必須具有與外設(shè)連接的接口A、連接部分、與外設(shè)連接個部分:與CPU須具有邏輯控制部
6、分,因而8255內(nèi)部結(jié)構(gòu)分為3 8255芯片呢?部 分、控制部分。我們該怎么用單片機控制,PCDPA,PB,譯碼器,CS為片選,A0,A1分別選中139其實我只是把8255看成一個口(控制寄存器),唯一不同的是可以通過D口控制PA,PB,PC的工作方式。 8255作為主機與外設(shè)的連接芯片,必須提供與主機相連的3個總線接口,即數(shù)據(jù)線、地址線、控制線接口。同時必須具有與外設(shè)連接的接口A、B、C口。由于8255可編程,所以必須具有邏輯控制部分,因而8255內(nèi)部結(jié)構(gòu)分為3個部分:與CPU連接部分、與外設(shè)連接部 分、控制部分。 1.1與CPU連接部分 根據(jù)定義,8255能并行傳送8位數(shù)據(jù),所以其數(shù)據(jù)線為
7、8根D0D7。由于8255具有3個通道A、B、C,所以只要兩根地址線就能尋址A、B、C口及控制寄存器,故地址線為兩根A0A1。此外CPU要對8255進(jìn)行讀、寫與片選操作,所以控制線為片選、復(fù)位、讀、寫信號。各信號的引腳編號如下: (1)數(shù)據(jù)總線DB:編號為D0D7,用于8255與CPU傳送8位數(shù)據(jù)。 (2)地址總線AB:編號為A0A1,用于選擇A、B、C口與控制寄存器。 (3)控制總線CB:片選信號、復(fù)位信號RST、寫信號、讀信號。當(dāng)CPU要對8255進(jìn)行讀、寫操作時,必須先向8255發(fā)片選信號選中8255芯片,然后發(fā)讀信號或?qū)懶盘枌?255進(jìn)行讀或?qū)憯?shù)據(jù)的操作。 1.2 與外設(shè)接口部分 根據(jù)
8、定義,8255有3個通道A、B、C與外設(shè)連接,每個通道又有8根線與外設(shè)連接,所以8255可以用24根線與外設(shè)連接,若進(jìn)行開關(guān)量控制,則8255可同時控制24路開關(guān)。各通道的引腳編號如下: (1)A口:編號為PA0PA7,用于8255向外設(shè)輸入輸出8位并行數(shù)據(jù)。 (2)B口:編號為PB0PB7,用于8255向外設(shè)輸入輸出8位并行數(shù)據(jù)。 (3)C口:編號為PC0PC7,用于8255向外設(shè)輸入輸出8位并行數(shù)據(jù),當(dāng)8255工 口用于應(yīng)答信號的通信。C方式時,I/O作于應(yīng)答 1.3與控制器的連接與PB7PC0A組,PB0個通道分為兩組,即PA0PA7與PC4PC7組成將82553組控制器,各組控制器的組
9、控制器與B組成B組。如圖所示,相應(yīng)的控制器也分為APC3 作用如下: 口的輸入與輸出。 A口與上C)(1A組控制器:控制 口的輸入與輸出。C組控制器:控制B口與下(2)B 的引腳圖圖1. 8255 的特性1.4 8255總線與外圍的接口. ,可作為CPU,一個并行輸入/輸出的8255芯片多功能的I/O器件(1)(2)具有24個可編程設(shè)置的I/O口,即3組8位的I/O口為PA口,PB口和PC口.它們又可分4低(口C口及B組包括,PC4PC7),B位4高(口C口及A組包括,A口I/O位的12為兩組組;B雙向I/O3種模式的,閃控(STROBE)I/O閃控式,位,PC0PC3).A組可設(shè)置為基本的I
10、/O口而這些操作模式完全由控制寄存器的控制字決,或閃控式I/O兩種模式只能設(shè)置為基本I/O .定 的內(nèi)部引腳 圖2 8255 8255的引腳功能1.5 復(fù)位輸入線,當(dāng)該輸入端處于高電平時,所有內(nèi)部寄存器(包括控制寄存器)RESET: 口均被置成輸入方式。 均被清除,所有I/OCS:芯片選擇信號線,當(dāng)這個輸入引腳為低電平時,即/CS=0時,表示芯片被選中,允許8255與CPU進(jìn)行通訊;/CS=1時,8255無法與CPU做數(shù)據(jù)傳輸. RD:讀信號線,當(dāng)這個輸入引腳為低跳變沿時,即/RD產(chǎn)生一個低脈沖且/CS=0時,允許8255通過數(shù)據(jù)總線向CPU發(fā)送數(shù)據(jù)或狀態(tài)信息,即CPU從8255讀取信息或數(shù)據(jù)
11、。 WR:寫入信號,當(dāng)這個輸入引腳為低跳變沿時,即/WR產(chǎn)生一個低脈沖且/CS=0時,允許 。8255將數(shù)據(jù)或控制字寫入CPU執(zhí)行輸入輸出指CPU 與D7:三態(tài)雙向數(shù)據(jù)總線,8255CPU數(shù)據(jù)傳送的通道,當(dāng)D0 寫操作,控制字和狀態(tài)信息也通過數(shù)據(jù)總線傳送。令時,通過它實現(xiàn)8位數(shù)據(jù)的讀/位的數(shù)據(jù)輸8/緩沖器, 一個輸入輸出線,一個PA0PA7:端口A8位的數(shù)據(jù)輸出鎖存器 入鎖存器。 一個8位的輸入輸出緩沖器。端口PB7:B輸入輸出線,一個8位的I/O鎖存器,PB0位的數(shù)據(jù)輸8緩沖器, 一個端口PC7:C輸入輸出線,一個8位的數(shù)據(jù)輸出鎖存器/PC04位的端口包含一個 每個4C個可以通過工作方式設(shè)定
12、而分成24位的端口,入緩沖器。端口配合使用,可作為控制信號輸出或狀態(tài)信號輸入端B位的鎖存器,分別與端口A和端口口。 1.6 8255的控制 (1)8255輸入/輸出通道端口的工作方式 方式0基本輸入輸出方式; 方式1選通輸入/出方式; 方式2雙向選通輸入/輸出方式; (2)地址選擇線的控制 當(dāng)A1=0,A0=0時,PA口被選擇; 當(dāng)A1=0,A0=1時,PB口被選擇; 當(dāng)A1=1,A0=0時,PC口被選擇; 當(dāng)A1=1.A0=1時,控制寄存器被選擇. (3)8255控制字 方式選擇控制字: D7D6D5D4D3D2D1D0 表示是方式選擇控制字D7 : 1 方式2 01-方式1, 1X-D6D
13、5 : 決定A口工作方式 00-方式0, 0-輸出A口輸入還是輸出 1-輸入D4 : 決定 輸出口上輸入還是輸出 1-輸入 0-D3 : 決定C 方式10, 01-: 決定B口工作方式 00-方式D2 0-輸出口輸入還是輸出 1-輸入D1 : 決定B 輸出 1-輸入 0-D0 : 決定C口下輸入還是輸出 D7D6D5D4D3D2D1D0置位/復(fù)位控制字: 復(fù)位控制字置位/表示D7 0 000 一般寫D6D5D4 這3位任意 ,010 PC2.111 PC7位表示 000 PC0,001 PC13D3D2D1 這D0 0復(fù)位 1置位 對某個PCi復(fù)位0 或置位1 (i取值0到7) 的功能及介紹8
14、0512 單片機 簡介2.1 單片微型計算機簡稱為單片機,又稱為微型控制器,是微型計算機的一個重要分支。單片機是70年代中期發(fā)展起來的一種大規(guī)模集成電路芯片,是CPU、RAM、ROM、I/O接口和中斷系統(tǒng)于同一硅片的器件。80年代以來,單片機發(fā)展迅速,各類新產(chǎn)品不斷涌現(xiàn),出現(xiàn)了許多高性能新型機種,現(xiàn)已逐漸成為工廠自動化和各控制領(lǐng)域的支柱產(chǎn)業(yè)之一。 引腳功能2.2 MCS-51是標(biāo)準(zhǔn)的40引腳雙列直插式集成電路芯片,引腳分地布請參照-單片機引腳 圖: 引8051 l P0.0P0.7 P0口8位雙向口線(在引腳的3932號端子)。 l P1.0P1.7 P1口8位雙向口線(在引腳的18號端子)。
15、 l P2.0P2.7 P2口8位雙向口線(在引腳的2128號端子)。 號端子)。1017位雙向口線(在引腳的8口l P3.0P3.7 P3這4個I/O口具有不完全相同的功能,大家可得學(xué)好了,其它書本里雖然有,但寫的太深,很難理解,這里都是按我自已的表達(dá)方式來寫的,相信你也能夠理解。 口2.3I/OP0口有三個功能 1、外部擴展存儲器時,當(dāng)做數(shù)據(jù)總線(如圖1中的D0D7為數(shù)據(jù)總線接口) 2、外部擴展存儲器時,當(dāng)作地址總線(如圖1中的A0A7為地址總線接口) 3、不擴展時,可做一般的I/O使用,但內(nèi)部無上拉電阻,作為輸入或輸出時應(yīng)在外部接上拉電阻。 P1口 只做I/O口使用:其內(nèi)部有上拉電阻。
16、P2口有兩個功能 1、擴展外部存儲器時,當(dāng)作地址總線使用 2、做一般I/O口使用,其內(nèi)部有上拉電阻; P3口有兩個功能 除了作為I/O使用外(其內(nèi)部有上拉電阻),還有一些特殊功能,由特殊寄存器來設(shè)置,具體功能請參考我們后面的引腳說明。 有內(nèi)部EPROM的單片機芯片(例如8751),為寫入程序需提供專門的編程脈沖和編程電源,這些信號也是由信號引腳的形式提供的, 即:編程脈沖:30腳(ALE/PROG) )EA/Vpp腳(31):25V編程電壓(接觸過工業(yè)設(shè)備的兄弟可能會看到有些印刷線路板上會有一個電池,這個電池是干什么用的呢?這就是單片機的備用電源,當(dāng)外接電源下降到下限值時,備用電源就會經(jīng)第二功
17、能的方式由第9腳(即RST/VPD)引入,以保護(hù)內(nèi)部RAM中的信息不會丟失。 (注:這些引腳的功能應(yīng)用,除9腳的第二功能外,在“新動力2004版”學(xué)習(xí)套件中都有應(yīng)用到。) 上拉電阻 在介紹這四個I/O口時提到了一個“上拉電阻”那么上拉電阻又是什么呢?他起什么作用呢?都說了是電阻那當(dāng)然就是一個電阻啦,當(dāng)作為輸入時,上拉電阻將其電位拉高,若輸入為低電平則可提供電流源;所以如果P0口如果作為輸入時,處在高阻抗?fàn)顟B(tài),只有外接一個上拉電阻才能有效。 ALE/PROG 地址鎖存控制信號 在系統(tǒng)擴展時,ALE用于控制把P0口的輸出低8位地址送鎖存器鎖存起來,以實現(xiàn)低位地址和數(shù)據(jù)的隔離。(在后面關(guān)于擴展的課程
18、中我們就會看到8051擴展 EEPROM電路,在圖中ALE與74LS373鎖存器的G相連接,當(dāng)CPU對外部進(jìn)行存取時,用以鎖住地址的低位地址,即P0口輸出。ALE有可能是高電平也有可能是低電平,當(dāng)ALE是高電平時,允許地址鎖存信號,當(dāng)訪問外部存儲器時,ALE信號負(fù)跳變(即由正變負(fù))將P0口上低8位地址信號送入鎖存器。當(dāng)ALE是低電平時,P0口上的內(nèi)容和鎖存器輸出一致。關(guān)于鎖存器的內(nèi)容,我們稍后也會介紹。 在沒有訪問外部存儲器期間,ALE以1/6振蕩周期頻率輸出(即6分頻),當(dāng)訪問外部存儲器以1/12振蕩周期輸出(12分頻)。從這里我們可以看到,當(dāng)系統(tǒng)沒有進(jìn)行擴展時ALE會以1/6振蕩周期的固定
19、頻率輸出,因此可以做為外部時鐘,或者外部定時脈沖使用。 PORG為編程脈沖的輸入端 在第五課單片機的內(nèi)部結(jié)構(gòu)及其組成中,我們已知道,在8051單片機內(nèi)部有一個4KB或8KB的程序存儲器(ROM),ROM的作用就是用來存放用戶需要執(zhí)行的程序的,那么中的呢?實際上是通過編程脈沖輸入才能寫ROM我們是怎樣把編寫好的程序存入進(jìn)這個進(jìn)去的,這個脈沖的輸入端口就是PROG。 PSEN 外部程序存儲器讀選通信號:在讀外部ROM時PSEN低電平有效,以實現(xiàn)外部ROM單元的讀操作。 1、內(nèi)部ROM讀取時,PSEN不動作; 2、外部ROM讀取時,在每個機器周期會動作兩次; 3、外部RAM讀取時,兩個PSEN脈沖被
20、跳過不會輸出; 4、外接ROM時,與ROM的OE腳相接。 參見圖2(8051擴展2KB EEPROM電路,在圖中PSEN與擴展ROM的OE腳相接) EA/VPP 訪問和序存儲器控制信號 1、接高電平時: CPU讀取內(nèi)部程序存儲器(ROM) 擴展外部ROM:當(dāng)讀取內(nèi)部程序存儲器超過0FFFH(8051)1FFFH(8052)時自動讀取外部ROM。 2、接低電平時:CPU讀取外部程序存儲器(ROM)。 在前面的學(xué)習(xí)中我們已知道,8031單片機內(nèi)部是沒有ROM的,那么在應(yīng)用8031單片機時,這個腳是一直接低電平的。 3、8751燒寫內(nèi)部EPROM時,利用此腳輸入21V的燒寫電壓。 RST 復(fù)位信號:
21、當(dāng)輸入的信號連續(xù)2個機器周期以上高電平時即為有效,用以完成單片機的復(fù)位初始化操作,當(dāng)復(fù)位后程序計數(shù)器PC=0000H,即復(fù)位后將從程序存儲器的0000H單元讀取第一條指令碼。 外接晶振引腳。當(dāng)使用芯片內(nèi)部時鐘時,此二引腳用于外接石英晶XTAL2 和XTAL1體和微調(diào)電容;當(dāng)使用外部時鐘時,用于接外部時鐘脈沖信號。 VCC:電源+5V輸入 VSS:GND接地。 AVR和pic都是跟8051結(jié)構(gòu)不同的8位單片機,因為結(jié)構(gòu)不同,所以匯編指令也有所不同,而且區(qū)別于使用CISC指令集的8051,他們都是RISC指令集的,只有幾十條指令,大部分指令都是單指令周期的指令,所以在同樣晶振頻率下,較8051速度
22、要快。另PIC的8位單片機前幾年是世界上出貨量最大的單片機,飛思卡爾的單片機緊隨其后。 ARM實際上就是32位的單片機,它的內(nèi)部資源(寄存器和外設(shè)功能)較8051和PIC、AVR都要多得多,跟計算機的CPU芯片很接近了。常用于手機、路由器等等。 DSP其實也是一種特殊的單片機,它從8位到32位的都有。它是專門用來計算數(shù)字信號的。在某些公式運算上,它比現(xiàn)行家用計算機的最快的CPU還要快。比如說一般32位的DSP能在一個指令周期內(nèi)運算完一個32位數(shù)乘32位數(shù)積再加一個32位數(shù)。應(yīng)用于某些對實時處理要求較高的場合 匯編指令2.4 指令由于操作碼和操作數(shù)。分為單字節(jié)指令,雙字節(jié)指令,三字節(jié)指令。 尋址
23、方式: 立即尋址:操作數(shù)包含在指令字節(jié)中,指令操作碼后面字節(jié)的內(nèi)容就是操作數(shù)本身。 直接尋址:1內(nèi)部數(shù)據(jù)存儲器的低128個字節(jié)單元(00H-7FH)2位地址空間;3專用功能寄存器 寄存器尋址:由指令指出某一個寄存器中的內(nèi)容作為操作數(shù),這種尋址方式稱為寄存 器尋址。 寄存器間接尋址:由指令指出某一個寄存器的內(nèi)容作為操作數(shù)的地址。 基址寄存器加變址寄存器間接尋址:用于訪問程序存儲器中的數(shù)據(jù)表格。的內(nèi)容作為基地址,加上指令中給定的偏移量所得結(jié)果作為轉(zhuǎn)移地PC 相對尋址:以 址,只適用于雙字節(jié)轉(zhuǎn)移指令。 使用軟件的介紹3 3.1 ALTIUM DESIGNER公司推出的一體化的電子產(chǎn)品開發(fā)系軟件開發(fā)商
24、AltiumAltium Designer 是原Protel繪制編操作系統(tǒng)。這套軟件通過把原理圖設(shè)計、電路仿真、PCB統(tǒng),主要運行在Windows輯、拓?fù)溥壿嬜詣硬季€、信號完整性分析和設(shè)計輸出等技術(shù)的完美融合,為設(shè)計者提供了全新的設(shè)計解決方案,使設(shè)計者可以輕松進(jìn)行設(shè)計,熟練使用這一軟件必將使電路設(shè)計的 質(zhì)量和效率大大提高。在內(nèi)的先前一系列版本的Protel DXP除了全面繼承包括Protel 99SE、Altium Designer 功能和優(yōu)點外,還增加了許多改進(jìn)和很多高端功能。該平臺拓寬了板級設(shè)計的傳統(tǒng)界面,設(shè)計實現(xiàn)功能,從而允許工程設(shè)計人員能將系統(tǒng)設(shè)計SOPCFPGA設(shè)計功能和全面集成了P
25、rotelAltium Designer 在繼承先前PCB設(shè)計及嵌入式設(shè)計集成在一起。 由于FPGA中的與對計Altium Designer 軟件功能的基礎(chǔ)上,綜合了FPGA設(shè)計和嵌入式系統(tǒng)軟件設(shè)計功能, 算機的系統(tǒng)需求比先前的版本要高一些。 主要功能:1 原理圖設(shè)計 2 印刷電路板設(shè)計 3 FPGA的開發(fā) 等等 嵌入式開發(fā)4 3.2 keil c518051微控制器體系結(jié)構(gòu)的Keil支持開發(fā)工具,適合每個階段的開發(fā)人員,不管是專業(yè)的應(yīng)用工程師,還是剛學(xué)習(xí)嵌入式軟件開發(fā)的學(xué)生。 Keil C51目前由ARM國內(nèi)授權(quán)代理商提供技術(shù)支持和銷售等相關(guān)服務(wù)。 產(chǎn)業(yè)標(biāo)準(zhǔn)的Keil C編譯器、宏匯編器、調(diào)
26、試器、實時內(nèi)核、單板計算機和仿真器,支持所有的251系列微控制器,幫助你如期完成項目進(jìn)度。 KEIL C51開發(fā)工具旨在解決嵌入式軟件開發(fā)商面臨的復(fù)雜問題。 當(dāng)你開始一個新項目,只需簡單的從設(shè)備數(shù)據(jù)庫選擇使用的設(shè)備,uVision IDE將設(shè)置好所有的編譯器、匯編器、鏈接器和存儲器選項。 包含大量的例程,幫助你著手使用最流行的嵌入式8051設(shè)備。 Keil Vision調(diào)試器準(zhǔn)確地模擬8051設(shè)備的片上外圍設(shè)備(IC、CAN、UART、SPI、中斷、I/O端口、A/D轉(zhuǎn)換器、D/A轉(zhuǎn)換器和PWM模塊)。模擬幫助你了解硬件配置,避免在安裝問題上浪費時間。 此外,使用模擬器你可以在沒有目標(biāo)設(shè)備的情
27、況下編寫和測試應(yīng)用程序。 當(dāng)你準(zhǔn)備在目標(biāo)硬件上測試軟件應(yīng)用時,可以使用MON51、MON390、NONADI、或者FlashMON51目標(biāo)監(jiān)視器、ISD51 In-System調(diào)試器、ULINK USB-JTAG適配器在目標(biāo)系統(tǒng)上下載并測試程序代碼。 VR_fighter3.3 A著名的單片機燒制程序的軟件 AVR單片機編譯及下載環(huán)境簡介 的語法,但CC系統(tǒng)基本兼容CC,使用的語言為ICCAVR單片機的編譯環(huán)境為AVR 有個別例外,如不允許中途聲明變量,通過編譯錯誤提示一般可以查出。?啟動界面如圖。具體用法可參考視頻教程“ C或和天學(xué)會AVRC語言”(有點夸張,但大致如此,前提是掌握了基本的C
28、編程)。 文件夾(當(dāng)建立一個工程項目后,編譯成功后會出現(xiàn)和下圖類似的提示。同時在objs 文件。系統(tǒng)會在相同的目錄下產(chǎn)生兩個文件夾BACKUP和objs)中生成與工程同名的hex? 注意:程序文件必須和工程文件在同一個根目錄下,在工程中添加該程序文件后才能正確編譯,否則會出現(xiàn)如下圖類似的出錯提示! 存儲器中。flash到此程序的編譯完成。下一步是把編譯好的程序裝入單片機的軟件。例如在A存儲器中用的是把編譯好的程序裝入單片機的flashVR_FIGHTER文件裝入hexVR_FIGHTER軟件中存放程序燒錄軟件(用來把D:USB_ASP-上位機軟件A 單片機,非安裝程序),雙擊可執(zhí)行文件,出現(xiàn)下
29、面的運行界面。 在“芯片選擇”中選擇對應(yīng)的單片機型號,其他選項保持默認(rèn)設(shè)置即可。 在主菜單中選擇“裝FLASH”,出現(xiàn)“打開-查找范圍”對話框,在objs文件夾(當(dāng)建立一個工程項目后,系統(tǒng)會在相同的目錄下產(chǎn)生兩個文件夾BACKUP和objs.)中選擇對應(yīng)的工程編譯后生成的機器代碼程序(文件后綴為hex)打開。 若單片機已經(jīng)通過USB下載線與電腦正確連接,選擇“編程”,否則會出現(xiàn)“沒有發(fā)現(xiàn)所需的USB設(shè)備”的信息提示。 “編程”完成后程序即已裝入單片機的flash存儲器。 簡要說明:1.教程中程序下載使用的軟件與此處不同,下載線用的是串口線,注意區(qū)分。 為定時器中斷很有幫助。16中斷、定時器的原
30、理和應(yīng)用(比較復(fù)雜)部分對于學(xué)習(xí)2.3. AVR STUDIO對于初學(xué)者可暫時不用。 4其他部分根據(jù)自己的使用需要自行選擇。 系統(tǒng)功能4 的連接82554.1 8051與51單片機與8255的接口邏輯簡單,其接口電路如圖所示,因為8255A芯片內(nèi)部沒有地址鎖存能力,所以圖中8255A 的片選信號及口地址選擇線A1,A0分別由8051的P2.0 和P2.1,P2.2 提供。如果沒有參入選址的地址的狀態(tài)都看作“1 ”狀態(tài),則8255的A,B,C口及控制口地址為F8FFH,F(xiàn)9FFH,F(xiàn)AFFH,F(xiàn)BFFH。當(dāng)然各口都有重復(fù)的地址,8255的復(fù)位端與8051的復(fù)位端相連,都接到8051的復(fù)位電路。
31、8051的P0口與8255的數(shù)據(jù)總線連接(為了PCB布線方便,本人讓線路反過來接) 8255的A0,A1,CS端分別與8051的P2.0,P2.1,P2.2連接 8255的WR,RD與8051的WR,RD連接 8255的RESET與8051的RESET連接 與外設(shè)的連接4.2 8255 設(shè)計方案是使用發(fā)光二極管共陽極接法,所以電阻接在發(fā)光二極管與電源之間 PA口接8個發(fā)光二極管,PB口接8個按鈕開關(guān) 的晶振電路4.3 8051 晶振電路的作用是為系統(tǒng)提供基本的時鐘信號。通常一個系統(tǒng)共用一個晶振,便于各部分保持同步。有些通訊系統(tǒng)的基頻和射頻使用不同的晶振,而通過電子調(diào)整頻率的方法保持同步。晶振電
32、路通常與鎖相環(huán)電路配合使用,以提供系統(tǒng)所需的時鐘頻率。如果不同子系統(tǒng)需要不同頻率的時鐘信號,可以用與同一個晶振相連的不同鎖相環(huán)來提供。 晶體振蕩電路的兩個端口分別連接在8051的XTAL1和XTAL2兩個端口,晶體振蕩器標(biāo)配有12.000MHz的石英晶振,晶振引腳是經(jīng)過連接器與微處理連接,可以方便地更換晶振。晶振電路產(chǎn)生時鐘信號,是為了保證處理器工作按一定時序進(jìn)行,晶振電路采用晶體振蕩器。Y2為晶體振蕩器產(chǎn)生振源,C1、C2是配合Y2工作的電容。 的復(fù)位電路4.4 8051手動按鈕復(fù)位需要人為在復(fù)位輸入端RST上加入高電平(如圖)。一般采用的辦法是在RST端和正電源Vcc之間接一個按鈕。當(dāng)人為
33、按下按鈕時,則Vcc的+5V電平就會直接加到RST端。手動按鈕復(fù)位的電路如所示。由于人的動作再快也會使按鈕保持接通達(dá)數(shù)十毫秒,所以,完全能夠滿足復(fù)位的時間要求。 整體電路的功能4.5 通過發(fā)光二極管的狀態(tài)來顯示開關(guān)的狀態(tài) 七、設(shè)計體會時光飛逝,一轉(zhuǎn)眼,一個學(xué)期又進(jìn)尾聲了,本學(xué)期的單片機綜合課程設(shè)計也在一周內(nèi) 完成了。俗話說“好的開始是成功的一半”。說起課程設(shè)計,我認(rèn)為最重要的就是做好設(shè)計的預(yù)習(xí),認(rèn)真的研究老師給的題目,選一個自己有興趣的題目。其次,老師對實驗的講解要一絲不茍的去聽去想,因為只有都明白了,做起設(shè)計就會事半功倍,如果沒弄明白,就迷迷糊糊的去選題目做設(shè)計,到頭來一點收獲也沒有。最后,
34、要重視程序的模塊化,修改的方便,也要注重程序的調(diào)試,掌握其方法。 雖然這次的課程設(shè)計算起來在實驗室的時間只有三天,不過因為我們都有自己的實驗板,所以在宿舍里做實驗的時間一定不止三天。 硬件的設(shè)計跟焊接都要我們自己動手去焊,軟件的編程也要我們不斷的調(diào)試,最終一 個能完成課程設(shè)計的勞動成果出來了,很高興它能按著設(shè)計的思想與要求運動起來。當(dāng)然,這其中也有很多問題,第一、不夠細(xì)心比如由于粗心大意焊錯了線,由于對課本理論的不熟悉導(dǎo)致編程出現(xiàn)錯誤。第二,是在學(xué)習(xí)態(tài)度上,這次課設(shè)是對我的學(xué)習(xí)態(tài)度的一次檢驗。對于這次單片機綜合課程實習(xí),我的第一大心得體會就是作為一名工程技術(shù)人員,要求具備的首要素質(zhì)絕對應(yīng)該是嚴(yán)
35、謹(jǐn)。我們這次實習(xí)所遇到的多半問題多數(shù)都是由于我們不夠嚴(yán)謹(jǐn)。第三,在做人上,我認(rèn)識到,無論做什么事情,只要你足夠堅強,有足夠的毅力與決心,有足夠的挑戰(zhàn)困難的勇氣,就沒有什么辦不到的。 在這次難得的課程設(shè)計過程中我鍛煉了自己的思考能力和動手能力。通過題目選擇和設(shè)計電路的過程中,加強了我思考問題的完整性和實際生活聯(lián)系的可行性。在方案設(shè)計選擇和芯片的選擇上,培養(yǎng)了我們綜合應(yīng)用單片機的能力,對單片機的各個管腳的功能也有了進(jìn)一步的認(rèn)識。還鍛煉我們個人的查閱技術(shù)資料的能力,動手能力,發(fā)現(xiàn)問題,解決問題的能力。并且我們熟練掌握了有關(guān)器件的性能及測試方法。 再次感 謝老師的輔導(dǎo)以及同學(xué)的幫助,是他們讓我有了一個
36、更好的認(rèn)識,無論是學(xué)習(xí)還是生活,生活是實在的,要踏實走路。課程設(shè)計時間雖然很短,但我學(xué)習(xí)了很多的東西,使我眼界打開,感受頗深。 單片機是一門應(yīng)用性和實踐性很強的學(xué)科,很多人都想學(xué)習(xí)單片機,并且想知道如何學(xué)習(xí)單片機,基于本人學(xué)習(xí)單片機的過程和愉快經(jīng)歷,特寫此篇文章和廣大的單片機初學(xué)者一起分享,希望您能從中受益。 熟悉單片機的人都知道,要學(xué)好單片機可不是一件容易的事,倒不是因為單片機很難學(xué),而是很難找到一本專為單片機入門者而編寫的教材。翻一下身邊的單片機教材,都好像是為已經(jīng)懂單片機的人而寫的,一般先介紹單片機的硬件結(jié)構(gòu)和指令系統(tǒng),再是系統(tǒng)擴展和外圍器件,順便講一些應(yīng)用設(shè)計(隨便說一下,很多書中的電
37、路設(shè)計已經(jīng)過時,并且有些程序還是錯誤的)。如果按照此種學(xué)習(xí)方法,想進(jìn)行產(chǎn)品開發(fā),就必須先把所有的知識全部掌握了才可以進(jìn)行實際應(yīng)用。學(xué)習(xí)使用單片機只能靠循序漸進(jìn)的積累,下面就本人學(xué)習(xí)單片機的過程和經(jīng)驗做簡要介紹。 首先,學(xué)習(xí)單片機要有一定的基礎(chǔ):電子技術(shù)方面要有數(shù)字電路和模擬電路等方面的理論基礎(chǔ),特別是數(shù)字電路;編程語言要求匯編語言或C語言。要想成為單片機高手,建語言學(xué)習(xí)。盡管匯編語言屬于低C議初學(xué)者首先學(xué)習(xí)匯編語言,學(xué)的差不多的時候,轉(zhuǎn)入級語言,編程效率低,但是較C語言具有目標(biāo)代碼簡短,占用內(nèi)存少,執(zhí)行速度快等優(yōu)點,更重要的是能使初學(xué)者盡快熟悉單片機的內(nèi)部結(jié)構(gòu),并能對其進(jìn)行精確的控制。匯編語言
38、在單片機教材里面都會涉及,不需要單獨購買教材和學(xué)習(xí)。C語言是一門學(xué)問,有很多專業(yè)書籍來講解,并且對我們今后的編程生涯有絕對的好處,因此要深入學(xué)習(xí),千萬不要自以為看了某某的視頻教程就以為掌握了C語言,那只是C語言的一部分。在這里給大家推薦一本單片機C語言程序設(shè)計參考書,馬忠梅等著,北京航空航天大學(xué)出版社出版的單片機的C語言應(yīng)用程序設(shè)計,要求C語言基礎(chǔ)。如果沒學(xué)過C語言,建議學(xué)習(xí)清華大學(xué)譚浩強編寫的C語言程序設(shè)計,這本書寫的不錯,通俗易懂。 其次,是單片機教材選擇。單片機是一門非常重視實踐的技術(shù),不能總是看書,但要學(xué)習(xí)它首先應(yīng)看書,對單片機引腳、內(nèi)部結(jié)構(gòu)、寄存器和原理有一定地了解和感官認(rèn)識,它的是怎樣工作的,能干些什么?剛開始時,也許你看不明白,但這并不要緊,因為你還缺乏實踐經(jīng)驗?,F(xiàn)在單片機應(yīng)用廣泛,因此各個廠家分別推出了自己的單片機,按內(nèi)部結(jié)構(gòu)體系派系分:51系列、PIC系列、AVR系列、摩托羅拉等等我們沒必要每樣都學(xué)!因為他們的編程方法和調(diào)試過程以及內(nèi)
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 系統(tǒng)分析師考試的溝通技巧與試題及答案
- 送友人 試題及答案
- 軟件評測師考試亮點試題及答案
- 保育師兼職考試題及答案
- 捐贈公司財務(wù)管理制度
- 鄉(xiāng)村旅館管理制度
- 幼兒園填空試題大全及答案
- 老人健康教育管理制度
- 承包商公司管理制度
- 病區(qū)醫(yī)療組管理制度
- 風(fēng)箏的力學(xué)原理
- 愛是我的眼睛合唱譜
- 中國缺血性卒中和短暫性腦缺血發(fā)作二級預(yù)防指南(2022年版)解讀
- 初中化學(xué)實驗教學(xué)進(jìn)度表
- 橋梁病害診斷及維修加固
- 關(guān)稅系統(tǒng)崗位練兵業(yè)務(wù)知識測試題庫(關(guān)稅業(yè)務(wù)知識)(單項選擇題)附答案
- 2023年云南高中數(shù)學(xué)會考真題
- LY/T 1783.2-2017黑熊繁育利用技術(shù)規(guī)范第2部分:飼養(yǎng)管理
- 《士兵突擊》課件
- 接觸網(wǎng)施工計算課件
- 標(biāo)本的運送流程課件
評論
0/150
提交評論