單片機原理與應用實驗指導書
㈠ 我今年想參加單片機的電子大賽,可現在對電路圖的設計什麼的都不懂,有沒有一些專業的有關電路圖設計的書
參加電子設計大賽可以學習一下單片機的。
單片機的學習可以按照下面的方法學習:
相信很多電子信息專業的學生,對單片機的學習還是很模糊的,今天小編來帶領大家總結一下單片機的學習的方法和技巧。單片機的學習一定要自己多動手去做實驗,業精於勤荒於嬉。
工具/原料
吳鑒鷹單片機開發板,學習板,實驗板
單片機教程
方法/步驟
1先入手一個吳鑒鷹單片機開發板學習板實驗板
這個需要教程清晰,有技術支持的。這個是學習單片機的一個硬體平台,有了這個平台,自己的想法就可以在這個平台上面施展了。
2看視頻教程
我們自己學習東西,有一個教程,有一個指導老師,比自己慢慢摸索要少走很多彎路的,比自己獨自摸索要快得多,建議看完視頻後,自己完成視頻對照的實驗,等把整個開發板的實驗模塊做完,對整個單片機也有深刻的了解了。
3將這個模塊結合起來學習
當我們把單片機的每一個模塊都熟悉以後,我們把單片機學習板的所有的模塊實驗綜合起來,把整個模塊結合起來使用了,比如溫度感測器DS18B20把溫度讀取出來後然後在液晶上面顯示出來,數字旋轉編碼器和步進電機結合起來操作。
4自己設計小型的項目
等把單片機開發板的綜合性實驗完成,可以嘗試著自己設計電路,自己前期對照開發板的原理圖,把原來圖搭建出來並且調試出來,可以加深對開發板硬體的理解和學習。
單片機的學一定要自己反復動手,只有自己勤動手才能加深對單片機知識的理解。
㈡ 兄弟姐妹們我求助啊 !!單片機秒錶、時鍾的問題!!
系統設計
1.實驗內容摘要
本實驗利用單片機的定時器/計數器定時和記數的原理,結合dvcc實驗箱上的集成電路晶元8032、LED數碼管以及實驗箱上的按鍵來設計計時器。將軟、硬體有機地結合起來,使得系統能夠正確地進行計時,數碼管能夠正確地顯示時間。其中本實驗設計了四個開關按鍵:其中一個按鍵按下去時以1秒加一開始計時,即秒錶開始鍵(本實驗中當開關從1變為0時開始計時),另一個按鍵按下去時暫停計時,使秒錶停留在原先的計時(本實驗中當相應開關從1變為0時即停止計時),第三個按鍵按下去時清0(本實驗中當相應開關從1變為0時即停止計時),第四按鍵按下去則是以每10ms秒快速加一計時(本實驗中當開關從1變為0時開始計時)。本實驗中開始時都要使各按鍵回到各初始位置,即都處於1狀態。
關鍵詞:LED數碼管,計時器,
2.功能:
用AT89C51設計一個2位LED數碼顯示「秒錶」,顯示時間為00~99秒,每秒自動加1。另設計一個「開始」按鍵和一個「復位」按鍵。並且增加了一個「暫停」按鍵和一個「快加」按鍵(每10ms快速加一)
3.實驗目的:
3.1、 通過本次課程設計加深對單片機課程的全面認識復習和掌握,對單片機課程的應用進一步的了解。
3.2、 掌握定時器、外部中斷的設置和編程原理。
3.3、 通過此次課程設計能夠將單片機軟硬體結合起來,對程序進行編輯,校驗。
4.意義:
該實驗通過單片機的定時器/計數器定時和計數原理,設計簡單的計時器系統,擁有正確的計時、暫停、清零、快加功能,並同時可以用數碼管顯示,在現實生活中應用廣泛,具有現實意義。
所做工作
根據相關的單片機材料,利用所學的單片機知識,結合DVCC系列單片機微機模擬實驗系統中的軟體和硬體(集成電路晶元8032,七段數碼管,開關電路及時鍾信號電路,按鍵等),編寫能夠實現該項目的軟體程序,最後將軟、硬體有機的結合起來,進行有效的調試,達到完成該實驗課程設計的目的要求。
5.實驗內容:
用AT89C51設計一個2位LED數碼顯示「秒錶」,顯示時間為00~99秒,每秒自動加一。另設計一個「開始」按鍵和一個「復位」按鍵。再增加一個「暫停」按鍵和一個「快加」按鍵(每10ms快速加一)。
按鍵說明:按「開始」按鍵,開始計數,數碼管顯示從00開始每秒自動加1;按「復位」按鍵,系統清零,數碼管顯示00;按「暫停」按鍵,系統暫停計數,數碼管顯示當時的計數;按「快加」按鍵,系統每10ms快速加1,即數碼顯示管在原先的計數上快速加1。
6.設計思路及描述:
該實驗要求進行計時並在數碼管上顯示時間,則可利用DVCC系列單片機微機模擬實驗系統中的晶元8032(晶元的功能類似於晶元AT89C51,其管腳功能也和AT89C51的管腳功能類似)中的P3.2管腳做為外部中斷0的入口地址,並實現「開始」按鍵的功能;將P3.3做為外部中斷1的入口地址,並實現「清零」按鍵的功能;將P3.0做為數據信號DATA輸入的入口地址;將P3.1做為時鍾信號CLK輸入的入口地址。定時器T0作為每秒加一的定時器;定時器T1作為「快加」鍵的定時器。其中「開始」按鍵當開關由1撥向0(由上向下撥)時開始計時;「清零」按鍵當開關由1撥向0(由上向下撥)時數碼管清零,此時若再撥「開始」按鍵則又可重新開始計時。
7.原理圖:
10、實驗程序
;******************************************************
; 設計選題:秒錶系統設計
; 描述: 2位LED數碼顯示"秒錶",顯示時間為00~99秒,每秒自動加1,
; 一個"開始"鍵,一個"復位"鍵,一個"暫停"鍵,一個「快加」鍵。
; 調用子程序:暫停鍵子程序,計時鍵子程序,清0鍵子程序,加一子程序
; 顯示子程序,定時子程序
;所用特殊寄存器:寄存器A,寄存器C
;所用中斷:外部中斷INT0、INT1,定時器T0、T1
; 實驗作者: 薛艷—通信0401班09號;******************************************************
org 0000h
ajmp main ;主程序入口地址
org 0003h
ajmp zhongan0 ;中斷0入口地址
org 000bh
ajmp yanshi ;定時器T0入口地址
org 0013h
ajmp zhongan1 ;中斷1入口地址
org 001bh
ajmp dingshi1 ;定時器T1入口地址
org 0030h
;*****************************************************
; 主程序
;*****************************************************
main: mov tcon,#05h ;主程序開始 外部中斷跳變模式
mov tmod,#11h ;定時器0,1模式1
mov ie,#8fh ;開總中斷,中斷0,1,定時器0,1
mov dptr,#tab
mov r1,#00h
mov r2,#00h
mov r3,#40 ;循環次數40
mov tl0,#2Ch ;置初值,定時25MS
mov th0,#0CFh
mov tl1,#78h ;置初值,定時10MS
mov th1,#0ech
clr tr0 ;關定時器
clr tr1
;*****************************************************
; 暫停鍵K3,快加鍵K4程序
;*****************************************************
here:jb p1.0,here
show:clr tr1
clr tr0
acall xianshi
kuaijia:jb p1.2,kuaijia ;等待P1.2為0 快加
clr tr0
setb tr1
here3:jnb p1.2,here3
ajmp here
;*****************************************************
; 外部中斷INT0子程序-----計時按鍵K1子程序
;*****************************************************
zhongan0: setb tr0 ;計時按鍵
reti
;*****************************************************
; 外部中斷INT1子程序----復位按鍵K2子程序
;*****************************************************
zhongan1:clr tr0 ;復位按鍵
clr tr1
mov 12h,#00h
mov 11h,#00h
acall xianshi ;調用顯示子程序
mov r1,#00h
mov r2,#00h
reti
;*****************************************************
; 加一子程序
;*****************************************************
jia1: inc r1 ;加1子程序
cjne r1,#0ah ,loop ;判斷是否到表尾
mov r1,#00h
inc r2
cjne r2,#0ah,loop
mov r2,#00h
loop: mov 12h,r1 ;重新賦值
mov 11h,r2
ret
;*****************************************************
; 顯示子程序
;*****************************************************
xianshi: mov r7,#02h ;2個數碼管顯示子程序
mov r0,#12h
loop5: mov r6,#08h ;8位2進制數
mov a,@r0
movc a,@a+dptr
loop6: rlc a ;循環左移
clr p3.1
mov p3.0,c
setb p3.1
djnz r6,loop6
dec r0
djnz r7,loop5
ret
;*****************************************************
; 定時器T0子程序
;*****************************************************
yanshi: mov tl0,#2Ch ;定時子程序
mov th0,#0CFh
djnz r3,loop7
acall jia1 ;調用加1子程序
acall xianshi ;調用顯示子程序
mov r3,#40
loop7: reti
;*****************************************************
;定時器T1子程序
;*****************************************************
dingshi1:mov tl1,#78h ;置初值,定時10MS
mov th1,#0ech
clr tr0
setb tr1
mov 12h,r1
mov 11h,r2
jnb p1.0,show
acall jia1
acall xianshi
lop7: reti
;*****************************************************
tab:db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh
end
十一、課程設計心得體會
1、 認真審題,看懂題目的要求!選擇適當的課題,不益太簡單或者太難。做到既能把課題完成又能鍛煉自己的能力!
2、 根據課題要求,復習相關的知識,查詢相關的資料。
3、 根據實驗條件,找到適合的方案,找到需要的元器件及工具,准備實驗。
4、 根據課程設計的要求和自己所要增加的功能寫好程序流程圖,在程序流程圖的基礎上,根據晶元的功能寫出相應的程序。然後再進行程序調試和相應的修改,以達到能夠實現所要求的功能的目的。
5、 還要根據實驗的實際情況,添加些額外程序來使系統更加的穩定,如開關的消震盪(採用延遲)。
6、 程序要盡量做到由各個子程序組成,在有些程序後面最好加註釋,這樣在程序出錯的檢查過程中可以更容易查找的到,也更簡潔,更明白易懂。
7、 該實驗的程序可以參考DVCC系列單片機微機模擬實驗系統實驗指導書中的串並轉換實驗,也可自己根據自己熟悉的方法來編程。
8、 在設計控制開關時,注意2個中斷的打開和關閉的先後順序,否則就會出錯。
9、 這次的單片機課程設計重點是理論與實際的相結合。不再只讀書了。
10、 該設計從頭到尾都要自己參與,熟悉了對整個設計的過程,更系統的鍛煉了自己。
㈢ msp430的書
[1]<<MSP430系列超低功耗16位單片機原理與應用>>
作者: 胡大可
出版社: 北京航空航天大學出版社
出版日期:2000年6月
內容簡介
TI公司的MSP430系列微控制器是一個近期推出的單片機品種。它在超低功耗和功能集成上都有一定的特色,尤其適合應用在自動信號採集系統、液晶顯示智能化儀器、電池供電攜帶型裝置、超長時間連續工作設備等領域。本書對這一系列產品的原理、結構及內部各功能模塊作了詳細的說明,並以方便工程師及程序員使用的方式提供軟體和硬體資料。由於MSP430系列的各個不同型號基本上是這些功能模塊的不同組合,因此,掌握本書的內容對於MSP430系列的原理理解和應用開發都有較大的幫助。本書的內容主要根據TI公司的《MSP430 Family Architecture Guide and Mole Library》一書及其他相關技術資料編寫。
本書供高等院校自動化、計算機、電子等專業的教學參考及工程技術人員的實用參考,亦可做為應用技術的培訓教材。
[2]<<MSP430系列FLASH型超低功耗16位單片機>>
作者: 胡大可
出版日期:2001年11月
出版社: 北京航空航天大學出版社
內容簡介
MSP430系列單片機在超低功耗和功能集成等方面有明顯的特點。該系列單片機自問世以來,頗受用戶關注。在2000年該系列單片機又出現了幾個FLASH型的成員,它們除了仍然具備適合應用在自動信號採集系統、電池供電攜帶型裝置、超長時間連續工作的設備等領域的特點外,更具有開發方便、可以現場編程等優點。這些技術特點正是應用工程師特別感興趣的。本書對該系列單片機的FLASH型成員的原理、結構、內部各功能模塊及開發方法與工具作詳細介紹。
[3]<<MSP430系列單片機介面技術及系統設計實例>>
出版社: 北京航空航天大學出版社
作者: 魏小龍
出版日期:2002年11月
本書簡介:
本書較為詳細地介紹了TI公司的MSP430系列單片機。全書共分5章。首先講述MSP430全系列所涉及的片內外圍模塊的功能、原理、應用及各個系列的模塊構成情況;其次講述MSP430的開發環境及如何使用匯編語言、C語言進行程序設計;最後例舉大量的以MSP430為核心的系統設計應用實例,大部分實例同時給出匯編語言和C語言的源程序,且全部在作者設計的實驗工具上測試通過,並實現了預期的功能。
本書配光碟一張,包含書中所用到的源程序及TI公司的網址與筆者的網址連接,還有MSP430軟體的下載地址。
本書可作為高等院校計算機、自動化及電子技術類專業的教學參考書,也可作為大學生電子設計以及畢業設計的參考書,更適用於從事單片機開發的科技人員。
[4]<<MSP430系列單片機C語言程序設計與開發 >>
出版社: 北京航空航天大學出版社
作者: 胡大可
出版日期:2003年1月
本書簡介:
MSP430系列是一個具有明顯技術特色的單片機品種。關於它的硬體特性及匯編語言程序設計已在《MSP430系列超低功耗16位單片機的原理與應用》及《MSP430系列 FLASH型超低功耗16位單片機》等書中作了全面介紹。本書介紹IAR公司為MSP430系列單片機配備的C程序設計語言C430。書中敘述了C語言的基本概念、C430的擴展特性及C庫函數;對C430的集成開發環境的使用及出錯信息作了詳盡的說明;並以MSP430F149為例,對各種應用問題及外圍模塊操作提供了典型的C程序常式,供讀者在今後的C430程序設計中參考。
[5]<<MSP430系列16位超低功耗單片機原理與應用>>
作者: 沈建華 楊艷琴 翟驍曙
出版社: 清華大學出版社
出版日期:2004年11月1日
內容簡介
本書以TI公司的MSP430系列16位超低功耗單片機為核心,介紹了MSP430單片機的特點和選型,詳細講述了MSP430單片機的結構和指令系統,對MSP430全系列單片機(包括最新的F15X、F16X)所涉及的片內外圍模塊的功能、原理、應用作為詳盡的描述。並介紹了MPS430單片機的開發環境、匯編語言、C語言程序設計方法,以及單片機常用介面電路設計和軟體編程,最後列舉了兩個體現MSP430單片機特點的應用系統設計實例。
本書著重講述MSP430單片機的基本原理和基本設計應用,進一步的實踐及應用系統設計可參考筆者所編著的《MSP430系列16位超低功耗單片機實踐與系統設計》一書。
[6]<<MSP430系列16位超低功耗單片機實踐與系統設計>>
作者: 沈建華 楊艷琴 翟驍曙
出版社: 清華大學出版社
出版日期:2005年4月1日
內容簡介
本書以TI公司的MSP430系列16位超低功耗單片機為核心,介紹了IAR Embedded Workbench V2.10集成開發調試環境的使用方法,特別是MSP430 C語言特有的擴展特性、宏文件和本徵函數說明,以及MSP430-TEST44X開發實驗板的硬體結構和原理,詳細描述了MSP430的10個基礎實驗的目的、原理、內容、步驟和參考程序。並從單片機實際應用出發,列舉了多個以MSP430單片機為核心的系統設計、應用案例。
本書讀者需要有單片機和C語言基礎。有關MSP430系統列單片機的結構原理可參考作者所編著的《MSP430系列16位超低功耗單片機原理與應用》一書。
本書配光碟一張,內容包含所有基礎實驗的匯編和C源程序代碼,還有USB430各斜度計的源代碼。
本書可作為高等院校計算機、電子、自動化類專業MSP430單片機課程的實驗指導書,而且特別適合有單片機技術基礎的廣大工程技術人員作為應用設計參考用書。
[7]<<MSP430系列單片機實用C語言程序設計>>
作者: 張晞 王德銀 張晨
出版社: 人民郵電出版社
出版日期:2005年09月01日
本書簡介:
本書從應用角度出發,主要介紹MSP430的硬體基礎部分和IAR公司的MSP430 C編譯器EW430,並對MSP430中的各功能模塊給出了應用實例。這些實常式序按照結構化編寫,經作者的封裝後,讀者在開發中只需稍加修改即可直接調用。
書中還介紹了MSP430的幾種典型應用,如軟體模擬串列口、在線刷新FLASH、實現中斷嵌套等,並為其編寫了完整代碼,讀者完全可以將其直接組合在自己的項目中。書中還講解了單片機領域編寫程序的規范、程序結構的安排以及如何提高編碼效率等實際應用中的問題。隨書光碟中包括了本書的所有程序代碼。
[8]<<MSP430單片機C語言應用程序設計實例精講>>
作者: 秦龍
出版社:電子工業出版社
出版日期:2006年5月
內容簡介:
本書通過大量的典型實例形式,詳細介紹了MSP430單片機各種C語言應用專題程序設計的流程、方法、技巧及設計理念。全書共分31章,其中第1章簡單介紹了開發MSP430的C語言的基礎知識,第2章至第31章為本書的重點,通過30個典型的C語言專題應用實例,詳細介紹了MSP430單片機的各種應用開發和使用技術。實例豐富,代表性強,涉及領域廣,每個例子都有具體的硬體電路設計和程序設計,對讀者有較高的學習和參考價值。
全書語言簡潔,層次清晰,本書的所有程序代碼都使用C語言實現,簡單易學、易懂。本書比較適合計算機、自動化、電子及硬體等相關專業的院校學生進行學習,同時也可供從事單片機開發的科研設計人員參考使用。
本書配有一張光碟,光碟里包括了書中所有的程序代碼,讀者可參考借鑒,物超所值。
[9]<<本書針對MSP430F44x系列的晶片做入門>>
作者: 謝文哲、吳賢財、 林榮三著
出版社:中國台灣省滄海書局
出版日期:2003年8月
內容簡介:
MSP430系列提供了不同的記憶體容量、類比和各種功能模組的組合,由於采完全相同的指令集和記憶體結構,所以各位讀者看完本書後,可根據自己開發產品的需要,選擇最符合自己需求的晶片,以降低生產成本,完全不必因為選擇不同規格晶片而需從頭學起。德州儀器工業股份有限公司更為MSP430開發了價格非常低廉好用的整合性發展環境MSP430 Flash Emulation Tool (FETTM),學起單晶片不再是那麼因難的事
㈣ 求51單片機實驗設備儀器DP-51PROC的實驗指導書
51單片機實驗設備儀器DP-51PROC的實驗指導書
談談單片機實驗指導方法
http://ckrd.cnki.net/grid20/detail.aspx?filename=SYSY199202006&dbname=CJFD1992
http://search.cnki.net/search.aspx?q=%E5%8D%95%E7%89%87%E6%9C%BA%E5%AE%9E%E9%AA%8C%E8%AE%BE%E5%A4%87%E4%BB%AA%E5%99%A8%E7%9A%84%E5%AE%9E%E9%AA%8C%E6%8C%87%E5%AF%BC%E4%B9%A6
㈤ 51單片機,定時器控制蜂鳴器 TH TL 音譜
蜂鳴器發聲原理是電流通過電磁線圈,使電磁線圈產生磁場來驅動振動膜發聲的,因此需要一定的電流才能驅動它,單片機IO引腳輸出的電流較小,單片機輸出的TTL電平基本上驅動不了蜂鳴器,因此需要增加一個電流放大的電路。三極體的作用為驅動,通過三極體放大驅動電流,從而可以讓蜂鳴器發出聲音。
有源蜂鳴器和無源蜂鳴器的區別:
這里的「源」不是指電源。而是指震盪源。 也就是說,有源蜂鳴器內部帶震盪源,所以只要一通電就會叫。 而無源內部不帶震盪源,所以如果用直流信號無法令其鳴叫。必須用2K~5K的方波去驅動它。 有源蜂鳴器往往比無源的貴,就是因為裡面多個震盪電路。 無源蜂鳴器的優點是:1。便宜,2。聲音頻率可控,可以做出「多來米發索拉西」的效果。3。在一些特例中,可以和LED復用一個控制口 有源蜂鳴器的優點是:程序控制方便 。
常式,參考自網路。
1 /************************************************************************
2 [文件名] C51音樂程序(八月桂花)
3 [功能] 通過單片機演奏音樂
4
5 /**********************************************************************/
6 #include
7 #include
8 //本例採用89C52, 晶振為11.0592MHZ
9 //關於如何編制音樂代碼, 其實十分簡單,各位可以看以下代碼.
10 //頻率常數即音樂術語中的音調,而節拍常數即音樂術語中的多少拍;
11 //所以拿出譜子, 試探編吧!
12
13 sbit Beep = P1^5 ;
14
15 unsigned char n=0; //n為節拍常數變數
16 unsigned char code music_tab[] ={
17 0x18, 0x30, 0x1C , 0x10, //格式為: 頻率常數, 節拍常數, 頻率常數, 節拍常數,
18 0x20, 0x40, 0x1C , 0x10,
19 0x18, 0x10, 0x20 , 0x10,
20 0x1C, 0x10, 0x18 , 0x40,
21 0x1C, 0x20, 0x20 , 0x20,
22 0x1C, 0x20, 0x18 , 0x20,
23 0x20, 0x80, 0xFF , 0x20,
24 0x30, 0x1C, 0x10 , 0x18,
25 0x20, 0x15, 0x20 , 0x1C,
26 0x20, 0x20, 0x20 , 0x26,
27 0x40, 0x20, 0x20 , 0x2B,
28 0x20, 0x26, 0x20 , 0x20,
29 0x20, 0x30, 0x80 , 0xFF,
30 0x20, 0x20, 0x1C , 0x10,
31 0x18, 0x10, 0x20 , 0x20,
32 0x26, 0x20, 0x2B , 0x20,
33 0x30, 0x20, 0x2B , 0x40,
34 0x20, 0x20, 0x1C , 0x10,
35 0x18, 0x10, 0x20 , 0x20,
36 0x26, 0x20, 0x2B , 0x20,
37 0x30, 0x20, 0x2B , 0x40,
38 0x20, 0x30, 0x1C , 0x10,
39 0x18, 0x20, 0x15 , 0x20,
40 0x1C, 0x20, 0x20 , 0x20,
41 0x26, 0x40, 0x20 , 0x20,
42 0x2B, 0x20, 0x26 , 0x20,
43 0x20, 0x20, 0x30 , 0x80,
44 0x20, 0x30, 0x1C , 0x10,
45 0x20, 0x10, 0x1C , 0x10,
46 0x20, 0x20, 0x26 , 0x20,
47 0x2B, 0x20, 0x30 , 0x20,
48 0x2B, 0x40, 0x20 , 0x15,
49 0x1F, 0x05, 0x20 , 0x10,
50 0x1C, 0x10, 0x20 , 0x20,
51 0x26, 0x20, 0x2B , 0x20,
52 0x30, 0x20, 0x2B , 0x40,
53 0x20, 0x30, 0x1C , 0x10,
54 0x18, 0x20, 0x15 , 0x20,
55 0x1C, 0x20, 0x20 , 0x20,
56 0x26, 0x40, 0x20 , 0x20,
57 0x2B, 0x20, 0x26 , 0x20,
58 0x20, 0x20, 0x30 , 0x30,
59 0x20, 0x30, 0x1C , 0x10,
60 0x18, 0x40, 0x1C , 0x20,
61 0x20, 0x20, 0x26 , 0x40,
62 0x13, 0x60, 0x18 , 0x20,
63 0x15, 0x40, 0x13 , 0x40,
64 0x18, 0x80, 0x00
65 };
66
67 void int0() interrupt 1 //採用中斷0 控制節拍
68 { TH0=0xd8;
69 TL0=0xef;
70 n--;
71 }
72
73 void delay (unsigned char m) //控制頻率延時
74 {
75 unsigned i=3*m;
76 while(--i);
77 }
78
79 void delayms(unsigned char a) //豪秒延時子程序
80 {
81 while(--a); //採用while(--a) 不要採用while(a--); 各位可編譯一下看看匯編結果就知道了!
82 }
83
84 void main()
85 { unsigned char p,m; //m為頻率常數變數
86 unsigned char i=0;
87 TMOD&=0x0f;
88 TMOD"=0x01;
89 TH0=0xd8;TL0=0xef;
90 IE=0x82;
91 play:
92 while(1)
93 {
94 a: p=music_tab[i];
95 if(p==0x00) { i=0, delayms(1000); goto play;} //如果碰到結束符,延時1秒,回到開始再來一遍
96 else if(p==0xff) { i=i+1;delayms(100),TR0=0; goto a;} //若碰到休止符,延時100ms,繼續取下一音符
97 else {m=music_tab[i++], n=music_tab[i++];} //取頻率常數 和 節拍常數
98 TR0=1; //開定時器1
99 while(n!=0) Beep=~Beep,delay(m); //等待節拍完成, 通過P1口輸出音頻(可多聲道哦!)
100 TR0=0; //關定時器1
101 }
102 }
㈥ 利用51單片機,4個數碼管設計一個計時器,要求在數碼管上顯示的數據從0開始每1秒鍾加1。
共陽數碼管中斷程序:
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
uchar code table[]=
{
0xc0,0xf9,0xa4,0xb0,
0x99,0x92,0x83,0xf8,
0x80,0x90,0x88,0x83,
0xc6,0xa1,0x86,0x8e};
uint num,a;
uchar ,shi,ge;
void init();
void delay(uint);
void display(uchar,ucharshi,ucharge);
uint fb();
uint fs();
uint fg();
void main()
{
init();
while(1)
{
display(fb(),fs(),fg());
}
}
void init()
{
num=0;
a=0;
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;
ET0=1;
TR0=1;
}
void display(uchar,ucharshi,ucharge)
{
P1=0xfd;
P0=table[];
delay(1);
P1=0xfb;
P0=table[shi];
delay(1);
P1=0xf7;
P0=table[ge];
delay(1);
}
void timeoff() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65526-50000)%256;
a++;
if(a%20==0)
{
num++;
if(num==999)
{
num=0;
}
}
}
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
uint fb()
{
=num/100;
return ;
}
uint fs()
{
shi=num%100/10;
return shi;
}
uint fg()
{
ge =num%100%10;
return ge;
}
(6)單片機原理與應用實驗指導書擴展閱讀
2個可編程定時/計數器·5個中斷源,2個優先順序(52有6個)
一個全雙工串列通信口
外部數據存儲器定址空間為64kB
外部程序存儲器定址空間為64kB
邏輯操作位定址功能·雙列直插40PinDIP封裝
單一+5V電源供電
CPU:由運算和控制邏輯組成,同時還包括中斷系統和部分外部特殊功能寄存器;
RAM:用以存放可以讀寫的數據,如運算的中間結果、最終結果以及欲顯示的數據;
ROM:用以存放程序、一些原始數據和表格;
I/O口:四個8位並行I/O口,既可用作輸入,也可用作輸出
T/C:兩個定時/記數器,既可以工作在定時模式,也可以工作在記數模式;
五個中斷源的中斷控制系統;
一個全雙工UART(通用非同步接收發送器)的串列I/O口,用於實現單片機之間或單片機與微機之間的串列通信;
片內振盪器和時鍾產生電路,石英晶體和微調電容需要外接。最佳振盪頻率為6M—12M。
參考資料來源:網路-51單片機
㈦ 單片機中將j22和j7用排線相連是什麼意思
1
)
練習使用
μ
』nSP
TM
IDE
開發環境,並掌握
IDE
環境的基本功能,為以後的實驗打好
基礎。
(
2
)
掌握在
μ
』nSP
TM
IDE
開發環境下用匯編語言編寫程序。
(
3
)
掌握在
μ
』nSP
TM
IDE
開發環境下用
C
語言編寫程序。
(
4
)
熟悉簡單的凌陽單片機匯編指令。
【實驗設備】
裝有
Windows
系統和
μ
』nSP
TM
IDE
模擬環境的
PC
機一台。
【實驗內容】
用匯編語言和
C
語言實現
1
到
100
的累加和。
【實驗步驟】
首先練習
μ
』nSP
TM
IDE
開發環境下匯編程序的編寫。
(
1
)
將
μ
』nSP
TM
IDE
打開後,建立一個新項目;
(
2
)
在該項目的源文件夾下建立一個新的匯編語言文件;
(
3
)
畫流程圖並編寫匯編代碼;
(
4
)
編譯程序,調試軟體,觀察並跟蹤其結果,查看各個寄存器狀態。
然後練習
μ
』nSP
TM
IDE
開發環境下
C
程序的編寫。
(
1
)
將
μ
』nSP
TM
IDE
打開後,建立一個新項目;
(
2
)
在該項目的源文件夾下建立一個新的
C
語言文件;
(
3
)
編寫
C
代碼;
(
4
)
編譯程序,調試軟體,觀察並跟蹤其結果,查看各個寄存器狀態。
【特別提示】
如果在初始化時,沒有使看門狗不工作。那麼,在程序中必須有喂狗操作。否則,系統每隔
0.75s
復位一次,程序將不能循環執行。
嵌入式系統與機電介面應用實驗指導書
3
【實驗箱介紹】
【下載程序連接】
嵌入式系統與機電介面應用實驗指導書
4
實驗二
IOA
口輸出實驗
【實驗目的】
(
1
)
學習設置
A
口、
B
口為輸入口或者輸出口的方法。
(
2
)
理解
IO
埠的組合控制設置方法。
(
3
)
進一步熟悉
μ
』nSP
TM
IDE
開發環境的使用方法。
【實驗設備】
(
1
)
裝有
Windows
系統和
μ
』nSP
TM
IDE
模擬環境的
PC
機一台。
(
2
)
SPCE061A
單片機實驗箱一個。
【實驗內容】
依次循環點亮
8
個發光二極體。
【實驗步驟】
(
1
)
根據硬體連接圖連接好硬體。
(
2
)
將
μ
』nSP
TM
IDE
打開後,建立一個新項目。
(
3
)
畫流程圖並編寫匯編或
C
程序。
(
4
)
編譯程序,調試軟體。
(
5
)
觀察
LED
狀態。
嵌入式系統與機電介面應用實驗指導書
5
實驗三
IO
口
A
口輸入
B
口輸出實驗
【實驗目的】
(
1
)
學習設置
A
口、
B
口為輸入口或者輸出口的方法。
(
2
)
理解
IO
埠的組合控制設置方法。
(
3
)
進一步熟悉
μ
』nSP
TM
IDE
開發環境的使用方法。
【實驗設備】
(
1
)
裝有
Windows
系統和
μ
』nSP
TM
IDE
模擬環境的
PC
機一台。
(
2
)
SPCE061A
單片機實驗箱一個。
【實驗內容】
根據按鍵的不同,
IOA0~IOA7
口的數據就不同,從而傳送到
IOB0~IOB7
口的數據也不
同,相應的發光二極體被點亮。
【實驗步驟】
(
1
)
根據原理圖連接實驗電路;
(
2
)
將
μ
』nSP
TM
IDE
打開後建立一個新項目。
(
3
)
畫流程圖並編寫匯編程序或
C
程序。
(
4
)
編譯程序,調試軟體。
(
5
)
按鍵觀察
LED
及各個寄存器狀態。
【特別提示】
1
、對於實驗箱而言,用排線把
J16
(發光二極體)和
J24
(
IOA0~7
)連接起來,用排線把
J18
(
1
×
8
按鍵)和
J22
(
IOB0~7
)連接起來。
2
、
S28
接
+3.3V
,與之相連的
IO
口需要設成帶下拉電阻的輸入口;
S28
接地,與之相連的
IO
口需要設成帶上拉電阻的輸入口。
嵌入式系統與機電介面應用實驗指導書
6
實驗四
A/D
轉換
【實驗目的】
(
1
)
了解模數轉換器
ADC
的輸入介面結構;
(
2
)
了解逐次逼近式模數轉換器的工作原理及其轉換過程。
(
3
)
掌握控制字
P_ADC_Ctrl
、
P_ADC_MUX_Ctrl
、
P_ADC_LINEIN_DATA
各位的含義,
並理解它們如何控制
ADC
。
(
4
)
熟悉模擬量輸入口
LINE_IN1~LINE_IN7
的使用。
【實驗設備】
(
1
)
裝有
Windows
系統和
μ
』nSP
TM
IDE
模擬環境的
PC
機一台。
(
2
)
SPCE061A
單片機實驗箱一個。
【實驗內容】
改變
LINE_IN
埠的模擬電壓,並用
LED
來指示模數轉換的結果。
【實驗步驟】
(
1
)
根據原理圖連接實驗電路。
IOA0
接
0~3V
電壓輸入,
IOB
低
8
位接
LED
。
(
2
)
畫流程圖並編寫匯編程序或
C
程序。
(
3
)
編譯程序,調試軟體。
(
4
)
改變
LINE_IN
埠的模擬電壓,觀察
LED
的狀態隨模擬輸入的改變而點亮熄滅的
變化及各個寄存器狀態。
嵌入式系統與機電介面應用實驗指導書
7
實驗五用
TimerA/B
產生
PWM
信號
【實驗目的】
(
1
)
了解定時器
TimerA/B
的結構及工作原理。
(
2
)
掌握設置控制字
P_TimerA/B_Data
和
P_TimerA/B_Ctrl
的方法。
(
3
)
熟悉定時器
TimerA/B
的編程方法。
【實驗設備】
(
1
)
裝有
Windows
系統和
μ
』nSP
TM
IDE
模擬環境的
PC
機一台。
(
2
)
SPCE061A
單片機實驗箱一個。
【實驗內容】
用
μ
』nSP
TM
IDE
開發環境的軟體模擬器觀察
PWM
波形。
【實驗步驟】
(
1
)
將
μ
』nSP
TM
IDE
打開後,建立一個新項目。
(
2
)
畫流程圖並編寫匯編或
C
程序。
(
3
)
編譯程序,調試軟體。
(
4
)
用
μ
』nSP
TM
IDE
開發環境的軟體模擬器觀察波形。
(
5
)
觀察二極體亮滅的快慢來對比軟體模擬器波形信號的頻率
㈧ 大學生創新創業實驗設備
產品創新點
● 實驗箱採用純模塊化設計,單個感測器節點分為節點底板、射頻模塊和感測器模塊三部分,各模塊均採用可插拔方式,擴展性強,易維修維護升級。
● 實驗箱標配WiFi、Zigbee、433MHz、藍牙等主流區域網無線通信模塊。
● 感測器種類豐富涵蓋了電容式感測器、電阻式感測器、光敏感測器、氣敏感測器等十餘種不同種類的感測器。
● 實驗箱搭配高效能Cortex-A9開發板搭載Android操作系統,可獨立Android App軟體開發平台使用,大大增加了實驗箱的實用性。
● 在一個實驗箱內完整的體現了物聯網的三層結構-感知層、網路層和應用層。從硬體應用到軟體設計,一步步引導學生了解整個物聯網體系結構。針對不同專業的學生設計了不同的實驗題目,包含內容豐富多彩。
● 完整詳盡的實驗指導書,並提供硬體設備原理圖,應用程序源碼供學生學習和二次開發。
● 實驗箱緊密圍繞教育部物聯網工程專業培訓計劃教學大綱進行設計,可以滿足<單片機原理與技術>、<感測器原理及應用>、、<物聯網通信技術>等物聯網工程專業的專業課程實驗開設。 飛瑞敖IOT-L02-05型物聯網綜合實驗箱可滿足物聯網工程專業<單片機原理與技術>、<感測器原理與應用>、<Zigbee無線感測網原理與應用>以及<物聯網通信技術>等專業課程的實驗開設。
㈨ 求STC89C52單片機的詳細資料包括引腳功能,存儲器等等的詳細介紹,越詳細越好,謝謝
stc89c52具有以下標准功能: 8k位元組flash,256位元組ram, 32 位i/o 口線,看門狗定時器,2 個數據指針,三個16 位 定時器/計數器,一個6向量2級中斷結構,全雙工串列口,片內晶振及時鍾電路。另外,stc89c52可降至0hz靜態邏輯操作,支持2種軟體可選擇節電模式。空閑模式下,cpu 停止工作,允許ram、定時器/計數器、串口、中斷繼續工作。掉電保護方式下,ram內容被保存,振盪器被凍結,單片機一切工作停止,直到下一個中斷或硬體復位為止。8 位微控制器 8k位元組在系統可編程 flash
p0 口:p0口是一個8位漏極開路的雙向i/o口。作為輸出口,每位能驅動8個ttl邏輯電平。對p0埠寫「1」時,引腳用作高阻抗輸入。
當訪問外部程序和數據存儲器時,p0口也被作為低8位地址/數據復用。在這種模式下, p0具有內部上拉電阻。
在flash編程時,p0口也用來接收指令位元組;在程序校驗時,輸出指令位元組。程序校驗時,需要外部上拉電阻。
p1 口:p1 口是一個具有內部上拉電阻的8 位雙向i/o 口,p1 輸出緩沖器能驅動4 個 ttl 邏輯電平。對p1 埠寫「1」時,內部上拉電阻把埠拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由於內部電阻的原因,將輸出電流(iil)。
此外,p1.0和p1.2分別作定時器/計數器2的外部計數輸入(p1.0/t2)和時器/計數器2 的觸發輸入(p1.1/t2ex),具體如下表所示。 在flash編程和校驗時,p1口接收低8位地址位元組。
引腳號第二功能
p1.0 t2(定時器/計數器t2的外部計數輸入),時鍾輸出
p1.1 t2ex(定時器/計數器t2的捕捉/重載觸發信號和方向控制)
p1.5 mosi(在線系統編程用)
p1.6 miso(在線系統編程用)
p1.7 sck(在線系統編程用)
p2 口:p2 口是一個具有內部上拉電阻的8 位雙向i/o 口,p2 輸出緩沖器能驅動4 個 ttl 邏輯電平。對p2 埠寫「1」時,內部上拉電阻把埠拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由於內部電阻的原因,將輸出電流(iil)。
在訪問外部程序存儲器或用16位地址讀取外部數據存儲器(例如執行movx @dptr) 時,p2 口送出高八位地址。在這種應用中,p2 口使用很強的內部上拉發送1。在使用 8位地址(如movx @ri)訪問外部數據存儲器時,p2口輸出p2鎖存器的內容。在flash編程和校驗時,p2口也接收高8位地址位元組和一些控制信號。
p3 口:p3 口是一個具有內部上拉電阻的8 位雙向i/o 口,p2 輸出緩沖器能驅動4 個 ttl 邏輯電平。對p3 埠寫「1」時,內部上拉電阻把埠拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由於內部電阻的原因,將輸出電流(iil)。 p3口亦作為stc89c52特殊功能(第二功能)使用,如下表所示。在flash編程和校驗時,p3口也接收一些控制信號。
埠引腳 第二功能
p3.0 rxd(串列輸入口)
p3.1 txd(串列輸出口)
p3.2 into(外中斷0)
p3.3 int1(外中斷1)
p3.4 to(定時/計數器0)
p3.5 t1(定時/計數器1)
p3.6 wr(外部數據存儲器寫選通)
p3.7 rd(外部數據存儲器讀選通)
此外,p3口還接收一些用於flash快閃記憶體編程和程序校驗的控制信號。
rst——復位輸入。當振盪器工作時,rst引腳出現兩個機器周期以上高電平將是單片機復位。
ale/prog——當訪問外部程序存儲器或數據存儲器時,ale(地址鎖存允許)輸出脈沖用於鎖存地址的低8位位元組。一般情況下,ale仍以時鍾振盪頻率的1/6輸出固定的脈沖信號,因此它可對外輸出時鍾或用於定時目的。要注意的是:每當訪問外部數據存儲器時將跳過一個ale脈沖。
對flash存儲器編程期間,該引腳還用於輸入編程脈沖(prog)。
如有必要,可通過對特殊功能寄存器(sfr)區中的8eh單元的d0位置位,可禁止ale操作。該位置位後,只有一條movx和movc指令才能將ale激活。此外,該引腳會被微弱拉高,單片機執行外部程序時,應設置ale禁止位無效。
psen——程序儲存允許(psen)輸出是外部程序存儲器的讀選通信號,當stc89c52由外部程序存儲器取指令(或數據)時,每個機器周期兩次psen有效,即輸出兩個脈沖,在此期間,當訪問外部數據存儲器,將跳過兩次psen信號。
ea/vpp——外部訪問允許,欲使cpu僅訪問外部程序存儲器(地址為0000h-ffffh),ea端必須保持低電平(接地)。需注意的是:如果加密位lb1被編程,復位時內部會鎖存ea端狀態。
如ea端為高電平(接vcc端),cpu則執行內部程序存儲器的指令。
flash存儲器編程時,該引腳加上+12v的編程允許電源vpp,當然這必須是該器件是使用12v編程電壓vpp。