版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、學 號 10780216實習報告(生產實習)起止日期: 2013 年 6 月 24 日 至 2013 年 7 月 19 日學生姓名姜雪峰班級10電信科2班成績指導教師(簽字) 計算機與信息工程學院2013年 7 月 19 日23 目 錄 第一章 實習的目的及意義11.1生產實習的目的11.2生產實習的意義11.3生產實習的重要性1第二章 單片機的最小系統(tǒng)22.1部分芯片介紹22.1.1 STC12C5A60S2芯片22.1.2 MAX232CPE芯片52.1.3 LCD1602液晶顯示器62.1.4 DS12C887+芯片62.2 最小系統(tǒng)的功能介紹7第三章 單片機電路板焊接93.1 單片機焊
2、接的元器件93.2焊接好的單片機圖形93.3 焊接注意事項9第四章 C51語言的應用程序114.1 Keil uVision的使用114.2 流水燈程序114.3 P1.0閃亮程序124.4 按鍵控制數碼管134.5 定時一秒154.6 蜂鳴器音樂盒164.7 調試中出現的問題21第五章 實習體會22 第一章 實習的目的及意義1.1生產實習的目的此次生產實習的目的是在理論學習的基礎上,通過完成一個設計51單片機的多種資源應用并具有綜合功能的最小系統(tǒng)目標板的設計與編程應用。1.2生產實習的意義將理論知識與實際應用相結合,從實際出發(fā)分析問題、研究問題和解決問題,將單片機的知識系統(tǒng)化,并能對電子電路
3、、電子元器件、印制電路板等方面的知識有進一步的加深認識,同時在軟件編程、排錯調試、焊接技術、相關儀器設備的使用技能等方面得到較全面的鍛煉和提高,為今后能夠獨立進行某些單片機的應用系統(tǒng)的開發(fā)設計打下一定基礎。1.3生產實習的重要性生產實習是電子信息工程專業(yè)教學計劃的一個重要部分,是培養(yǎng)學生理論學習與實踐相結合的重要實踐性教學環(huán)節(jié)。通過生產實習使學生了解實習單位的工作方式和工作流程;對以后大單片機課程設計,帝業(yè)設計做基礎,了解一個開發(fā)板的開發(fā)制作的整個過程以及元器件的采購;對生產現場、生產過程中的電子信息設備、計算機設備的應用狀況有較為深刻的認識,掌握常規(guī)電子信息設備的使用維護方法;在實踐中進一步
4、加強專業(yè)教育,了解本專業(yè)工程技術崗位和生產勞動崗位的工作情況和工作內容,培養(yǎng)團隊精神和吃苦耐勞的精神;同時可以使學生學到企業(yè)的管理經驗和工人師傅的艱苦創(chuàng)業(yè)精神,激勵學生奮發(fā)向上的開拓精神。第二章 單片機的最小系統(tǒng)2.1部分芯片介紹2.1.1 STC12C5A60S2芯片STC12C5A60S2 為可電氣燒錄清洗的 8051 相容單芯片,其內部程序代碼容量為4KBSTC12C5A60S2主要功能列舉如下:1、為一般控制應用的 8 位單芯片2、晶片內部具時鐘振蕩器(傳統(tǒng)最高工作頻率可至 12MHz)3、內部程式存儲器(ROM)為 4KB4、內部數據存儲器(RAM)為 128B5、外部程序存儲器可擴
5、充至 64KB6、外部數據存儲器可擴充至 64KB7、32 條雙向輸入輸出線,且每條均可以單獨做 I/O 的控制8、5 個中斷向量源9、2 組獨立的 16 位定時器10、1 個全多工串行通信端口11、8751 及 8752 單芯片具有數據保密的功能12、單芯片提供位邏輯運算指令STC12C5A60S2各引腳功能介紹:圖2-1 AT89S51引腳圖STC12C5A60S2 電源正端輸入,接+5V。VSS:電源地端。XTAL1:單芯片系統(tǒng)時鐘的反相放大器輸入端。XTAL2:系統(tǒng)時鐘的反相放大器輸出端,一般在設計上只要在 XTAL1 和 XTAL2 上接上一只石英振蕩晶體系統(tǒng)就可以動作了,此外可以在
6、兩引腳與地之間加入一 20PF 的小電容,可以使系統(tǒng)更穩(wěn)定,避免噪聲干擾而死機。RESET:STC12C5A60S2的重置引腳,高電平動作,當要對晶片重置時,只要對此引腳電平提升至高電平并保持兩個機器周期以上的時間,AT89S51便能完成系統(tǒng)重置的各項動作,使得內部特殊功能寄存器之內容均被設成已知狀態(tài),并且至地址0000H處開始讀入程序代碼而執(zhí)行程序。EA/Vpp:EA為英文External Access的縮寫,表示存取外部程序代碼之意,低電平動作,也就是說當此引腳接低電平后,系統(tǒng)會取用外部的程序代碼(存于外部EPROM中)來執(zhí)行程序。因此在8031及8032中,EA引腳必須接低電平,因為其內
7、部無程序存儲器空間。如果是使用 8751 內部程序空間時,此引腳要接成高電平。此外,在將程序代碼燒錄至8751內部EPROM時,可以利用此引腳來輸入21V的燒錄高壓(Vpp)。ALE/PROG:ALE是英文Address Latch Enable的縮寫,表示地址鎖存器啟用信號。STC12C5A60S2可以利用這支引腳來觸發(fā)外部的8位鎖存器(如74LS373),將端口0的地址總線(A0A7)鎖進鎖存器中,因為STC12C5A60S2是以多工的方式送出地址及數據。平時在程序執(zhí)行時ALE引腳的輸出頻率約是系統(tǒng)工作頻率的1/6,因此可以用來驅動其他周邊晶片的時基輸入。此外在燒錄8751程序代碼時,此引
8、腳會被當成程序規(guī)劃的特殊功能來使用。PSEN:此為Program Store Enable的縮寫,其意為程序儲存啟用,當8051被設成為讀取外部程序代碼工作模式時(EA=0),會送出此信號以便取得程序代碼,通常這支腳是接到EPROM的OE腳。AT89S51可以利用PSEN及RD引腳分別啟用存在外部的RAM與EPROM,使得數據存儲器與程序存儲器可以合并在一起而共用64K的定址范圍。PORT0(P0.0P0.7):端口0是一個8位寬的開路汲極(Open Drain)雙向輸出入端口,共有8個位,P0.0表示位0,P0.1表示位1,依此類推。其他三個I/O端口(P1、P2、P3)則不具有此電路組態(tài),
9、而是內部有一提升電路,P0在當做I/O用時可以推動8個LS的TTL負載。如果當EA引腳為低電平時(即取用外部程序代碼或數據存儲器),P0就以多工方式提供地址總線(A0A7)及數據總線(D0D7)。設計者必須外加一鎖存器將端口0送出的地址栓鎖住成為A0A7,再配合端口2所送出的A8A15合成一完整的16位地址總線,而定址到64K的外部存儲器空間。PORT2(P2.0P2.7):端口2是具有內部提升電路的雙向I/O端口,每一個引腳可以推動4個LS的TTL負載,若將端口2的輸出設為高電平時,此端口便能當成輸入端口來使用。P2除了當做一般I/O端口使用外,若是在STC12C5A60S2擴充外接程序存儲
10、器或數據存儲器時,也提供地址總線的高字節(jié)A8A15,這個時候P2便不能當做I/O來使用了。PORT1(P1.0P1.7):端口1也是具有內部提升電路的雙向I/O端口,其輸出緩沖器可以推動4個LS TTL負載,同樣地若將端口1的輸出設為高電平,便是由此端口來輸入數據。如果是使用8052或是8032的話,P1.0又當做定時器2的外部脈沖輸入腳,而P1.1可以有T2EX功能,可以做外部中斷輸入的觸發(fā)腳位。PORT3(P3.0P3.7):端口3也具有內部提升電路的雙向I/O端口,其輸出緩沖器可以推動4個TTL負載,同時還多工具有其他的額外特殊功能,包括串行通信、外部中斷控制、計時計數控制及外部數據存儲
11、器內容的讀取或寫入控制等功能。其引腳分配如下:P3.0:RXD,串行通信輸入。P3.1:TXD,串行通信輸出。P3.2:INT0,外部中斷0輸入。P3.3:INT1,外部中斷1輸入。P3.4:T0,計時計數器0輸入。P3.5:T1,計時計數器1輸入。P3.6:WR:外部數據存儲器的寫入信號。P3.7:RD,外部數據存儲器的讀取信號。2.1.2 MAX232CPE芯片MAX232CPE是16針SMD封裝IC,用于完成 計算機232端口數據電平轉換,連接CMOS電路的,換言之,如果離開它,我們就無法用軟件監(jiān)控電源狀態(tài)了(需要串口返回信號)。而PIC16F870則為24腳8位CMOS閃存控制器。 用
12、于可監(jiān)控UPS當中。MAX232CPE完成232電平與TTL電平轉換,提供一個本地接口,為調試和維護提供方便。TXD接SX52的RA2腳,RXD接SX52的RA3腳,RS-RXD和RS-TXD是RS232電平,為標準串口電平。數據可以從串口輸入 到單片機SX52,SX52再把數據送到RTL8019AS傳出去。用于嵌入式設備上的應用 MAX232Cpe,采用雙列直插封裝方式。驅動芯片類型:線路驅動器/接收器接口:RS232, V.28 / V.24驅動器數:2電源電壓范圍:4.5V to 5.5V封裝類型:雙列直插針腳數:16工作溫度范圍:0C to +70C封裝類型:DIP工作溫度最低:0C工
13、作溫度最高:70C器件標號:232器件記:MAX232Cpe+接口類型:RS-232溫度范圍:商用電源電壓 最大:5.5V電源電壓 最小:4.5V芯片標號: 232表面安裝器件:通孔安裝邏輯功能號:232接收器數:2收發(fā)器數:2數據率:120Kbps電源電流:5mA線/總線驅動器/接收器/收發(fā)類型:CMOS 雙 RS232 發(fā)送器及接收器通道數:2 圖 2-2 MAX232CEP引腳圖2.1.3 LCD1602液晶顯示器 液晶顯示器以其微功耗、體積小、顯示內容豐富、超薄輕巧的諸多優(yōu)點,在各類儀表和低功耗系統(tǒng)中得到廣泛的應用。工業(yè)字符型液晶,能夠同時顯示16x2即32個字符(16列2行)。引腳介
14、紹:第1腳:VSS為地電源。第2腳:VDD接5V正電源。第3腳:V0為液晶顯示器對比度調整端,接正電源時對比度最弱,接地電源時對比度最高,對比度過高時會產生“鬼影”,使用時可以通過一個10K的電位器調整對比度(建議接地,弄不好有的模塊會不顯示)。第4腳:RS為寄存器選擇,高電平時選擇數據寄存器、低電平時選擇指令寄存器。第5腳:RW為讀寫信號線,高電平時進行讀操作,低電平時進行寫操作。第6腳:E端為使能端,當E端由高電平跳變成低電平時,液晶模塊執(zhí)行命令。第714腳:D0D7為8位雙向數據線。第1516腳:空腳(有的用來接背光)圖2-3 1602引腳圖2.1.4 DS12C887+芯片Clock,
15、Calendar,Alarm封裝/箱體:eDIP時間格式:HH:MM:SS,Binary日期格式:DW:DM:M:Y,BinaryRTC存儲容量:113B電源電壓(最大值):5.5V電源電壓(最小值):4.5V最大工作溫度:+70C最小工作溫度:0C安裝風格:ThroughHoleRTC總線接口:MultiplexedDS12C887實時時鐘芯片功能豐富,可以用來直接代替IBM PC上的時鐘日歷芯片DS12887,同時,它的管腳也和MC146818B、DS12887相兼容。由于DS12C887能夠自動產生世紀、年、月、日、時、分、秒等時間信息,其內部又增加了世紀寄存器,從而利用硬件電路解決了“
16、千年”問題; DS12C887中自帶有鋰電池,外部掉電時,其內部時間信息還能夠保持10年之久;對于一天內的時間記錄,有12小時制和24小時制兩種模式。在12小時制模式中,用AM和PM區(qū)分上午和下午;時間的表示方法也有兩種,一種用二進制數表示,一種是用BCD碼表示;DS12C887中帶有128字節(jié) RAM,其中有11字節(jié)RAM用來存儲時間信息,4字節(jié)RAM用來存儲DS12C887的控制信息,稱為控制寄存器,113字節(jié)通用RAM使用戶使用;此外用戶還可對DS12C887進行編程以實現多種方波輸出,并可對其內部的三路中斷通過軟件進行屏蔽。圖2-4 DS12C887引腳圖圖2.5 UA741引腳圖2.
17、2 最小系統(tǒng)的功能介紹利用AT89S51的單片機的定時器、中斷系統(tǒng)、串行口、4KFlashROM、擴展外部四個按鍵、8位LED、時鐘電路等外設,焊接并實現一個具有綜合功能的最小系統(tǒng)。市面上有STC、AVR、PIC系列的單片機。AT89S51的特點是低功耗、8位、支持ISP在線編程、JTAG仿真接口。LED 顯示模塊是在P2口上接8位發(fā)光二級管采用共陽極接法用于流水燈等;電源部分采用78L05為單片機提供5V穩(wěn)壓電源;復位電路采用K2按鍵復位;晶振Y1(11.0592)與2個電容C8、C9構成時鐘電路;中斷定時功能用四個按鍵控制,K1、K3、K4、K5分別控制外部中斷0、外部中斷1、定時器/計數
18、器T0、定時器/計數器T1;在單片機的左上角J1是串行通信的9針串口母線,用于與單片機、計算機相連,此次是基于MAX232cep測評的串行通信;LCD液晶顯示模塊采用1602的5*8點字符型,用J8、J92個電位器調節(jié)背光與對比度;J5是撥碼開關控制P2口的8個端位;J6是20針的擴展模塊; J2是ISP下載線的接插端,利用一個U口可與單片機進行相連,從而實現在線編程。圖2-5 單片機最小系統(tǒng)第三章 單片機電路板焊接3.1 單片機焊接的元器件元件包含:1個按鍵開關(K1-K5),9個發(fā)光二極管(D1-D8,D10),1個單片機STC12C5A60S2芯片及對應接插器(U2),2個電位器(J8-
19、J9),1個晶體振蕩器11.0592(Y1),5個1uF電容(C1-C5),2個33uF電容(C10,C12),1個22uF電容(C6),2個22pF電容(C8-C9),2個0.1uF電容(C7,C11),10個1K電阻(R1-R10),1個200歐電阻(R11),1個撥碼開關(J5),1個MAX232cep芯片及對應接插器(U1),1個三端穩(wěn)壓管(J3),1個RS-232串口(J1),1個LCD1602液晶顯示模塊(J7),1個擴展模塊(J6),2個JUMPER,1個10針JTAG。焊好后的單片機如圖7所示。3.2焊接好的單片機圖形圖3-1 實物圖3.3 焊接注意事項焊接操作注意事項有: 保
20、持烙鐵頭的清潔,因為焊接時烙鐵頭長期處于高溫狀態(tài),其表面很容易氧化并沾上一層黑色雜質形成隔熱層,使烙鐵頭失去加熱作用。 采用正確的加熱方法,要靠增加接觸面積加快傳熱,而不要用烙鐵對焊件加力。應該讓烙鐵頭與焊件形成面接觸而不是點接觸。 加熱要靠焊錫橋,要提高烙鐵頭加熱的效率,需要形成熱量傳遞的焊錫橋。 在焊錫凝固之前不要使焊件移動或振動用鑷子夾住焊件時,一定要等焊錫凝固后再移去鑷子。 焊錫量要合適,過量的焊錫會增加焊接時間,降低工作速度。 不要用過量的焊劑,適量的焊劑是非常有必要的。過量的松香不僅造 成焊后焊點周圍臟不美觀,而且當加熱時間不足時,又容易夾雜到焊錫中形成“夾渣”缺陷。一般焊接的順序
21、是:是先小后大、先輕后重、先里后外、先低后高、先普通后特殊的次序焊裝。即先焊分立元件,后焊集成塊。對外聯線要最后焊接。(1)電烙鐵,一般應選內熱式2035W恒溫230的烙鐵,但溫度不要超過300的為宜。接地線應保證接觸良好。(2)焊接時間在保證潤濕的前提下,盡可能短,一般不超過3秒。(3)耐熱性差的元器件應使用工具輔助散熱。如微型開關、CMOS集成電路、瓷片電容,發(fā)光二極管,中周等元件,焊接前一定要處理好焊點,施焊時注意控制加熱時間,焊接一定要快。還要適當采用輔助散熱措施,以避免過熱失效。(4)如果元件的引線鍍金處理的,其引線沒有被氧化可以直接焊接,不需要對元器件的引線做處理。(5)焊接時不要
22、用烙鐵頭摩擦焊盤。(6)集成電路若不使用插座,直接焊到印制板上、安全焊接順序為:地端輸出端電源端輸入端。(7)焊接時應防止鄰近元器件、印制板等受到過熱影響,對熱敏元器件要采取必要的散熱措施。(8)焊接時絕緣材料不不允許出現燙傷、燒焦、變形、裂痕等現象。(9)在焊料冷卻和凝固前,被焊部位必須可靠固定,可采用散熱措施以加快冷卻。(10)焊接完畢,必須及時對板面進行徹底清洗,以便殘留的焊劑、油污和灰塵等贓物。在我自己的焊接當中,也出現了焊錫量不足和過多的狀況,最后導致接入電源后無法正常使用的現象。同時注意元件的焊接順序也很重要,選擇合適的焊接順序,不僅便于焊接,而且不至于導致元件破損。第四章 C51
23、語言的應用程序4.1 Keil uVision的使用打開“Keil uVision”,點擊“project”,在彈出的對話窗口中選擇“new project”新建工程,建立工程文件。在彈出的窗口中選擇“Atmel”中的“AT89S52”確定后即可添加8051源代碼。選中工程文件右鍵點“Option for target”再點“Output”“Create HEX”創(chuàng)建HEX文件;點“File”之后點擊“NEW”即可在出現的文本框中輸入程序,保存路徑與工程文件相同,且用英文名,格式為“.c”。再添加源文件到project。程序輸入完了要保存,編譯查看有無錯誤,有就修改,如果沒有,將PC機與單片機
24、用ISP下載線連接起來,USB驅動文件中,選擇isp編程下載軟件中“progisp”運行程序,在文件夾下選“調入flash”,調入hex文件,之后點擊“自動”即可運行程序查看現象。串行通信的調試可利用串行通信助手軟件,查看單片機是如何與PC機進行數據通信的。4.2 流水燈程序#include /51系列單片機定義文件#define uchar unsigned char /定義無符號字符#define uint unsigned int /定義無符號整數void delay(uint); /聲明延時函數void main(void) uint i;uchar temp; while(1) te
25、mp=0x01; for(i=0;i8;i+) /8個流水燈逐個閃動 P1=temp; delay(100); /調用延時函數 temp=1; temp=0x80;for(i=0;i=1; temp=0xFE;for(i=0;i8;i+) /8個流水燈依次全部點亮 P1=temp; delay(100); /調用延時函數 temp=1; temp=0x7F; for(i=0;i=1; void delay(uint t) /定義延時函數register uint bt;for(;t;t-)for(bt=0;bt255;bt+);4.3 P1.0閃亮程序#include#define uchar
26、 unsigned charsbit signal=P10;void delay(t);void main()while(1)signal=0;delay(20);signal=1;delay(20);void delay(int t)int i;for(i=0;it;i+)TH0=0x3c;TL0=0xb0;TR0=1;while(!TF0);TF0=0;TR0=0;4.4 按鍵控制數碼管#include#includeanjian.hsbit A13=P25; code uint8 number=0xc0,0xf9,0xa4,0xb0,0x99, 0x92,0x82,0xf8,0x80,0
27、x90, 0xff; int8 n=0;void delay() uint16 i=2000; while(i-);main() WR=0; A13=1; P0=0xff; WL4=0; P0=number0; K4=0; while(1) if(!K0) delay(); if(!K0) if(n=9) n=0; else n+; P0=numbern; while(!K0); if(!K1) delay(); if(!K1) if(n=0) n=9; else n-; P0=numbern; while(!K1); 4.5 定時一秒#includetypedef unsigned char
28、 uint8;typedef unsigned int uint16;/*sbit A13=P25;*/*sbit LED1=P00;sbit LED2=P01;sbit LED3=P02;sbit LED4=P03;sbit LED5=P04;sbit LED6=P05;sbit LED7=P06;sbit LED8=P07;*/main() uint8 counter; int i=0; /*WR=0; A13=1; */ TMOD=0x01; TH0=0xb8; TL0=0x00; TR0=1; while(1) if(TF0=1) TF0=0; TH0=0xb8; TL0=0x00;
29、counter+; if(counter=50) counter=0; P1=(1i+); if(i=9) i=0;P1=0x00; 4.6 蜂鳴器音樂盒/* 文件名 : 蜂鳴器唱歌.c* 描述 : 該程序實現控制蜂鳴器演奏音樂。 * 創(chuàng)建人 : 東流,2009年4月9日* 版本號 : 2.0*/#include#define uchar unsigned char#define uint unsigned intuchar Count;sbit Speak =P12; /蜂鳴器器控制腳sbit P36=P36;sbit RS=P25;unsigned char code LED8=0xfe,
30、0xfb,0xf8,0xf0,0xe0,0xb0,0x80,0x00;/*以下數組是音符編碼*/unsigned char code SONG = /祝你平安0x26,0x20,0x20,0x20,0x20,0x20,0x26,0x10,0x20,0x10,0x20,0x80,0x26,0x20,0x30,0x20,0x30,0x20,0x39,0x10,0x30,0x10,0x30,0x80,0x26,0x20,0x20,0x20,0x20,0x20,0x1c,0x20,0x20,0x80,0x2b,0x20,0x26,0x20,0x20,0x20,0x2b,0x10,0x26,0x10,0
31、x2b,0x80,0x26,0x20,0x30,0x20,0x30,0x20,0x39,0x10,0x26,0x10,0x26,0x60,0x40,0x10,0x39,0x10,0x26,0x20,0x30,0x20,0x30,0x20,0x39,0x10,0x26,0x10,0x26,0x80,0x26,0x20,0x2b,0x10,0x2b,0x10,0x2b,0x20,0x30,0x10,0x39,0x10,0x26,0x10,0x2b,0x10,0x2b,0x20,0x2b,0x40,0x40,0x20,0x20,0x10,0x20,0x10,0x2b,0x10,0x26,0x30,0
32、x30,0x80,0x18,0x20,0x18,0x20,0x26,0x20,0x20,0x20,0x20,0x40,0x26,0x20,0x2b,0x20,0x30,0x20,0x30,0x20,0x1c,0x20,0x20,0x20,0x20,0x80,0x1c,0x20,0x1c,0x20,0x1c,0x20,0x30,0x20,0x30,0x60,0x39,0x10,0x30,0x10,0x20,0x20,0x2b,0x10,0x26,0x10,0x2b,0x10,0x26,0x10,0x26,0x10,0x2b,0x10,0x2b,0x80,0x18,0x20,0x18,0x20,0
33、x26,0x20,0x20,0x20,0x20,0x60,0x26,0x10,0x2b,0x20,0x30,0x20,0x30,0x20,0x1c,0x20,0x20,0x20,0x20,0x80,0x26,0x20,0x30,0x10,0x30,0x10,0x30,0x20,0x39,0x20,0x26,0x10,0x2b,0x10,0x2b,0x20,0x2b,0x40,0x40,0x10,0x40,0x10,0x20,0x10,0x20,0x10,0x2b,0x10,0x26,0x30,0x30,0x80,0x00, /路邊的野華不要采0x30,0x1C,0x10,0x20,0x40,0
34、x1C,0x10,0x18,0x10,0x20,0x10,0x1C,0x10,0x18,0x40,0x1C,0x20,0x20,0x20,0x1C,0x20,0x18,0x20,0x20,0x80,0xFF,0x20,0x30,0x1C,0x10,0x18,0x20,0x15,0x20,0x1C,0x20,0x20,0x20,0x26,0x40,0x20,0x20,0x2B,0x20,0x26,0x20,0x20,0x20,0x30,0x80,0xFF,0x20,0x20,0x1C,0x10,0x18,0x10,0x20,0x20,0x26,0x20,0x2B,0x20,0x30,0x20,0
35、x2B,0x40,0x20,0x20,0x1C,0x10,0x18,0x10,0x20,0x20,0x26,0x20,0x2B,0x20,0x30,0x20,0x2B,0x40,0x20,0x30,0x1C,0x10,0x18,0x20,0x15,0x20,0x1C,0x20,0x20,0x20,0x26,0x40,0x20,0x20,0x2B,0x20,0x26,0x20,0x20,0x20,0x30,0x80,0x20,0x30,0x1C,0x10,0x20,0x10,0x1C,0x10,0x20,0x20,0x26,0x20,0x2B,0x20,0x30,0x20,0x2B,0x40,0
36、x20,0x15,0x1F,0x05,0x20,0x10,0x1C,0x10,0x20,0x20,0x26,0x20,0x2B,0x20,0x30,0x20,0x2B,0x40,0x20,0x30,0x1C,0x10,0x18,0x20,0x15,0x20,0x1C,0x20,0x20,0x20,0x26,0x40,0x20,0x20,0x2B,0x20,0x26,0x20,0x20,0x20,0x30,0x30,0x20,0x30,0x1C,0x10,0x18,0x40,0x1C,0x20,0x20,0x20,0x26,0x40,0x13,0x60,0x18,0x20,0x15,0x40,0
37、x13,0x40,0x18,0x80,0x00,;/* 名稱 : Time0_Init()* 功能 : 定時器的初始化,定時時間可用光碟中軟件計算,11.0592MZ晶振,10ms* 輸入 : 無* 輸出 : 無*/void Time0_Init()TMOD = 0x01;IE = 0x82;TH0 = 0xDC;TL0 = 0x00;/* 名稱 : Time0_Int()* 功能 : 定時器中斷,中斷中實現 Count 加一* 輸入 : 無* 輸出 : 無*/void Time0_Int() interrupt 1TH0 = 0xDC;TL0 = 0x00;Count+;/長度加1/* 名稱
38、 : Delay_xMs()* 功能 : 延時子程序,經過軟件調試,測得延時程序大概為55us.* 輸入 : x * 輸出 : 無*/void Delay_xMs(uint x) uint i,j; for(i=0; ix; i+) for(j=0; j3; j+); /* 名稱 : Play_Song()* 功能 : 播放蜂鳴器控制程序* 輸入 : i (選擇播放哪首歌曲,0為“祝你平安”,1為“路邊的野花你不要采”* 輸出 : 無*/void Play_Song(uchar i)uchar Temp1,Temp2;int a;uint Addr;Count = 0;/中斷計數器清0Addr = i * 217;while(1)Temp1 = SONGAddr+; /音符地址加一 if (Temp1 = 0xFF) /休止符 TR0 = 0; Delay_xMs(100); else if (Temp1 = 0x00) /歌曲結束符 return; else Temp2 = SONGAddr+; /街拍地址加一 注釋: 音符地址始終是偶數 節(jié)拍地址是奇數 TR0 = 1; while(1) Speak = Speak; /音符 這兩句話是確定音符的a=(int)(Temp1/8); / LED 一 有音符判斷LED亮多少P0=LEDa; / LED 二 讓LED亮相應的個數
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年人力資源管理師人力資源規(guī)劃基礎練習(含解析)
- 2026山東聊城市城發(fā)建設集團有限公司、聊城市城發(fā)資產運營有限公司、聊城旭坤數字技術有限公司招聘5人備考考試試題及答案解析
- 2026廣東江門市廣悅化工股份有限公司招聘80人備考考試題庫及答案解析
- 2026年度淄博沂源縣事業(yè)單位公開招聘綜合類崗位工作人員(13人)考試備考試題及答案解析
- 2026廣東廣州銀行選聘參考考試題庫及答案解析
- 建業(yè)車庫施工方案(3篇)
- 新店酒館活動策劃方案(3篇)
- 車庫轉盤施工方案(3篇)
- 物流機械維護室管理制度(3篇)
- 飛機培訓課件
- (2025年)廣東省事業(yè)單位集中招聘筆試試題及答案解析
- 關于行政管理畢業(yè)論文
- 《刑法修正案安全生產相關內容》知識培訓
- 2024年南充市高坪區(qū)醫(yī)療衛(wèi)生輔助崗招募筆試真題
- 農業(yè)消防知識培訓課件
- 船舶危險源 機艙風險源清單
- 物業(yè)催費技巧培訓
- 辦公樓物業(yè)服務投標方案(技術方案)
- 品質例會管理制度
- DG-TJ08-2235-2024 地下建筑增擴與改建技術標準
- 山東省菏澤市牡丹區(qū)2024-2025學年八年級上學期期末語文試題(含答案)
評論
0/150
提交評論