8位單片機(jī)中的經(jīng)典之作,51單片機(jī)使用心得分享
發(fā)布時(shí)間:2016-09-08 責(zé)任編輯:susan
【導(dǎo)讀】雖然現(xiàn)在16位32位的單片機(jī)越來越多,但51單片機(jī)依然是8位單片機(jī)中的經(jīng)典之作。這是對(duì)所有兼容Intel 8031指令系統(tǒng)的單片機(jī)的統(tǒng)稱,該系列的始祖是Intel的8004單片機(jī),后來隨著Flash rom技術(shù)的發(fā)展,8004單片機(jī)取得了長(zhǎng)足的進(jìn)展,成為應(yīng)用最廣泛的8位單片機(jī)之一。
在這里給大家分享一下學(xué)習(xí)51單片機(jī)心得體會(huì):
1、我從不說51是基礎(chǔ),如果我這么說,也請(qǐng)把這句話理解為微機(jī)原理是基礎(chǔ)。
2、對(duì)51單片機(jī)的操作本質(zhì)上就是對(duì)寄存器的操作,對(duì)其他單片機(jī)也是如此。庫只是一個(gè)接口,方便使用者使用而已。
3、匯編語言在工作中很少用到,了解就好。
4、51單片機(jī)的P0口很特別。
5、C語言就是C語言,51單片機(jī)就是51單片機(jī),算法就是算法,外圍電路就是外圍電路,傳感器就是傳感器,通信器件就是通信器件,電路圖就是電路圖,PCB圖就是PCB圖,仿真就是仿真。
當(dāng)你以后再也不使用51了,C語言的知識(shí)還在,算法的知識(shí)還在,搭建單片機(jī)的最小系統(tǒng)的技能還在,傳感器和通信器件的使用方法還在,還會(huì)畫電路圖和PCB圖,當(dāng)然也會(huì)仿真。
6、51單片機(jī)是這個(gè):
7、當(dāng)程序調(diào)試不如人意的時(shí)候,靜下心來好好查資料,51單片機(jī)最大的好處就是網(wǎng)上資料非常多,你遇到的問題別人肯定也遇到過。作為學(xué)習(xí)者,問人可能更方便點(diǎn),但一直這樣是培養(yǎng)不出解決問題的能力的。
8、有些單片機(jī)初學(xué)者覺得看例程不好,覺得就等于看答案一樣有罪惡感。其實(shí)對(duì)初學(xué)者來說,看例程理解例程再看例程的注解是最好的學(xué)習(xí)途徑。做實(shí)驗(yàn)做課程設(shè)計(jì)做參賽作品的時(shí)候也是可以移植程序的,不需要自己重新實(shí)現(xiàn)。(當(dāng)然老師布置的作業(yè)還是獨(dú)立完成好)
但是,要清楚,移植程序不等于學(xué)習(xí)單片機(jī),最重要的是知道例程是怎樣的框架及實(shí)現(xiàn)方法。初始化了哪些寄存器,做了哪些引腳配置,調(diào)用了哪些函數(shù),那些函數(shù)又是怎么實(shí)現(xiàn)的,設(shè)置了哪些中斷,用到了哪些片上資源(UART、ADC等),查詢了哪些狀態(tài),如果狀態(tài)變化(觸發(fā)事件)又會(huì)做些什么等等。由此整理出一個(gè)流程圖并知道其實(shí)現(xiàn)方式,基本上這個(gè)例程就學(xué)習(xí)得差不多了。
總結(jié)51單片機(jī)之上拉電阻
(1) 用于為OC和OD門電路,提供驅(qū)動(dòng)能力。
以O(shè)C(集電極開路)電路為例:
例如,達(dá)林頓管(其實(shí)就是復(fù)合三級(jí)管)集成塊ULN2003. 內(nèi)部一路的電路如圖,就是一個(gè)集電極開路電路。
如果不加上拉電阻是無法高電平驅(qū)動(dòng)其他器件的。因?yàn)楫?dāng)三極管截至市沒有電流流通的路徑,更談不上驅(qū)動(dòng)了。這個(gè)跟單片機(jī)P0口加上拉電阻的原理一樣。
(2)提高高電平電位:
單片機(jī)P1口外接4×4矩陣鍵盤。另外復(fù)用P1.0~P1.3外接ULN2003控制驅(qū)動(dòng)步進(jìn)電機(jī)。
實(shí)驗(yàn)中遇到的問題:當(dāng)接入U(xiǎn)LN2003時(shí)鍵盤無法工作,去掉ULN2003后鍵盤工作正常。ULN2003工作正常。(注,兩個(gè)部分不同時(shí)工作)
問題分析:由于鍵盤的結(jié)構(gòu),無非就是兩個(gè)金屬片的接通或斷開。但是接入U(xiǎn)LN2003 后無法正常工作,說明是接入U(xiǎn)LN2003影響到了P1口電平的變化。用萬用表測(cè)的電壓,當(dāng)單片機(jī)輸出高電平時(shí),P1.0~P1.3電壓1V左右,P1.4~P1.7電壓4.3V左右,于是測(cè)AT89s52高低電平的判決電位,在1.3V左右。這樣P1.0~P1.3始終是低電平,鍵盤根本無法實(shí)現(xiàn)掃描功能。
解決方法,只要抬高P1口高電平時(shí)的電位,就可以正常工作,
1. 在P1口到ULN2003上串接電阻,起到分壓的作用,就可以抬高電平。
2. 給P1口接上拉電阻,跟P1口內(nèi)部電阻并聯(lián),減小上拉電阻阻值,減小分得的電壓,從而抬高P0口高電平電位。
采用第二種方案可以抬高電平到2.5V左右。鍵盤工作正常。
另外:我在做液晶顯示實(shí)驗(yàn)的時(shí)候,數(shù)據(jù)線用的P0口,無法正常工作,不顯示字符。但是亂動(dòng)一下數(shù)據(jù)線就可以完成顯示,但是顯示現(xiàn)象并不正常,字符不是一次寫入,而是亂動(dòng)幾次才能寫完全部?jī)?nèi)容,正常應(yīng)該一次全部顯示 。原因是由于,我的P0口中有六個(gè)端口都外接并聯(lián)三個(gè)發(fā)光二極管。,因?yàn)閺馁Y料上查到,P0口每一個(gè)端口最大可以吸收10MA電流,總電流不能超過26MA電流。這樣算我的總電流已經(jīng)到了40MA,呵呵。見笑了。所以懷疑是驅(qū)動(dòng)的問題。于是去掉了幾個(gè)二極管。顯示一切正常。似乎問題已經(jīng)解決,但總覺得還是有點(diǎn)問題,于是又經(jīng)過幾次試驗(yàn),發(fā)現(xiàn)只有當(dāng)P0.7端口的并聯(lián)二極管去掉一個(gè),再在其他端口接上一個(gè)發(fā)光二極管。此時(shí)也可以正常顯示。但是這樣P0口吸收電流在38MA,也超過了26MA不少。所以不是吸收電流太大的問題。仔細(xì)分析當(dāng)端口并聯(lián)外接三個(gè)二極管的時(shí)候等效于加了一個(gè)700歐左右的電阻,于是把二極管去掉換成一個(gè)1k電阻,液晶也無法顯示。
經(jīng)過仔細(xì)分析,我認(rèn)為,由于P0.7是液晶忙信號(hào)的返回線路當(dāng)這個(gè)端口返回高電平時(shí)說明,液晶正在處理數(shù)據(jù),無法接收新的數(shù)據(jù),返回0時(shí)說明空閑,可以接收新數(shù)據(jù)。
這樣當(dāng)上拉電阻太小了,液晶返回低電平時(shí)就有可能高過1.3V(AT89s52高低電平的判決電位),單片機(jī)接收到后,不會(huì)當(dāng)作低電平,當(dāng)然也就無法顯示了。(程序設(shè)計(jì)的時(shí)檢測(cè)到忙信號(hào),繼續(xù)檢測(cè))
總結(jié):上拉電阻選擇也有要求,既不是越高越好也不是越低越好。根據(jù)需要選擇。
特別推薦
- 復(fù)雜的RF PCB焊接該如何確保恰到好處?
- 電源效率測(cè)試
- 科技的洪荒之力:可穿戴設(shè)備中的MEMS傳感器 助運(yùn)動(dòng)員爭(zhēng)金奪銀
- 輕松滿足檢測(cè)距離,勞易測(cè)新型電感式傳感器IS 200系列
- Aigtek推出ATA-400系列高壓功率放大器
- TDK推出使用壽命更長(zhǎng)和熱點(diǎn)溫度更高的全新氮?dú)馓畛淙嘟涣鳛V波電容器
- 博瑞集信推出低噪聲、高增益平坦度、低功耗 | 低噪聲放大器系列
技術(shù)文章更多>>
- 基于GD32F407VET6主控芯片的永磁同步電機(jī)控制器設(shè)計(jì)
- 如何選擇和應(yīng)用機(jī)電繼電器實(shí)現(xiàn)多功能且可靠的信號(hào)切換
- 基于APM32F411的移動(dòng)電源控制板應(yīng)用方案
- 數(shù)字儀表與模擬儀表:它們有何區(qū)別?
- 聚焦制造業(yè)企業(yè)貨量旺季“急難愁盼”,跨越速運(yùn)打出紓困“連招”
技術(shù)白皮書下載更多>>
- 車規(guī)與基于V2X的車輛協(xié)同主動(dòng)避撞技術(shù)展望
- 數(shù)字隔離助力新能源汽車安全隔離的新挑戰(zhàn)
- 汽車模塊拋負(fù)載的解決方案
- 車用連接器的安全創(chuàng)新應(yīng)用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
交流電機(jī)
腳踏開關(guān)
接觸器接線
接近開關(guān)
接口IC
介質(zhì)電容
介質(zhì)諧振器
金屬膜電阻
晶體濾波器
晶體諧振器
晶體振蕩器
晶閘管
精密電阻
精密工具
景佑能源
聚合物電容
君耀電子
開發(fā)工具
開關(guān)
開關(guān)電源
開關(guān)電源電路
開關(guān)二極管
開關(guān)三極管
科通
可變電容
可調(diào)電感
可控硅
空心線圈
控制變壓器
控制模塊