<abbr id="kc8ii"><menu id="kc8ii"></menu></abbr>
  • <input id="kc8ii"><tbody id="kc8ii"></tbody></input><table id="kc8ii"><source id="kc8ii"></source></table><kbd id="kc8ii"></kbd>
    <center id="kc8ii"><table id="kc8ii"></table></center>
  • <input id="kc8ii"></input>
    <abbr id="kc8ii"></abbr>
  • <abbr id="kc8ii"></abbr>
  • <center id="kc8ii"><table id="kc8ii"></table></center>
    <abbr id="kc8ii"></abbr>
    你的位置:首頁 > 電源管理 > 正文

    8位單片機中的經典之作,51單片機使用心得分享

    發布時間:2016-09-08 責任編輯:susan

    【導讀】雖然現在16位32位的單片機越來越多,但51單片機依然是8位單片機中的經典之作。這是對所有兼容Intel 8031指令系統的單片機的統稱,該系列的始祖是Intel的8004單片機,后來隨著Flash rom技術的發展,8004單片機取得了長足的進展,成為應用最廣泛的8位單片機之一。
     
    在這里給大家分享一下學習51單片機心得體會:
     
    1、我從不說51是基礎,如果我這么說,也請把這句話理解為微機原理是基礎。
     
    2、對51單片機的操作本質上就是對寄存器的操作,對其他單片機也是如此。庫只是一個接口,方便使用者使用而已。
     
    3、匯編語言在工作中很少用到,了解就好。
     
    4、51單片機的P0口很特別。
     
    5、C語言就是C語言,51單片機就是51單片機,算法就是算法,外圍電路就是外圍電路,傳感器就是傳感器,通信器件就是通信器件,電路圖就是電路圖,PCB圖就是PCB圖,仿真就是仿真。
     
    當你以后再也不使用51了,C語言的知識還在,算法的知識還在,搭建單片機的最小系統的技能還在,傳感器和通信器件的使用方法還在,還會畫電路圖和PCB圖,當然也會仿真。
     
    6、51單片機是這個:
     
     
    7、當程序調試不如人意的時候,靜下心來好好查資料,51單片機最大的好處就是網上資料非常多,你遇到的問題別人肯定也遇到過。作為學習者,問人可能更方便點,但一直這樣是培養不出解決問題的能力的。
     
    8、有些單片機初學者覺得看例程不好,覺得就等于看答案一樣有罪惡感。其實對初學者來說,看例程理解例程再看例程的注解是最好的學習途徑。做實驗做課程設計做參賽作品的時候也是可以移植程序的,不需要自己重新實現。(當然老師布置的作業還是獨立完成好)
     
    但是,要清楚,移植程序不等于學習單片機,最重要的是知道例程是怎樣的框架及實現方法。初始化了哪些寄存器,做了哪些引腳配置,調用了哪些函數,那些函數又是怎么實現的,設置了哪些中斷,用到了哪些片上資源(UART、ADC等),查詢了哪些狀態,如果狀態變化(觸發事件)又會做些什么等等。由此整理出一個流程圖并知道其實現方式,基本上這個例程就學習得差不多了。
     
    總結51單片機之上拉電阻
     
    (1) 用于為OC和OD門電路,提供驅動能力。
     
    以OC(集電極開路)電路為例:
     
    例如,達林頓管(其實就是復合三級管)集成塊ULN2003. 內部一路的電路如圖,就是一個集電極開路電路。
     
     
    如果不加上拉電阻是無法高電平驅動其他器件的。因為當三極管截至市沒有電流流通的路徑,更談不上驅動了。這個跟單片機P0口加上拉電阻的原理一樣。
     
    (2)提高高電平電位:
     
    單片機P1口外接4×4矩陣鍵盤。另外復用P1.0~P1.3外接ULN2003控制驅動步進電機。
     
    實驗中遇到的問題:當接入ULN2003時鍵盤無法工作,去掉ULN2003后鍵盤工作正常。ULN2003工作正常。(注,兩個部分不同時工作)
     
    問題分析:由于鍵盤的結構,無非就是兩個金屬片的接通或斷開。但是接入ULN2003 后無法正常工作,說明是接入ULN2003影響到了P1口電平的變化。用萬用表測的電壓,當單片機輸出高電平時,P1.0~P1.3電壓1V左右,P1.4~P1.7電壓4.3V左右,于是測AT89s52高低電平的判決電位,在1.3V左右。這樣P1.0~P1.3始終是低電平,鍵盤根本無法實現掃描功能。
     
    解決方法,只要抬高P1口高電平時的電位,就可以正常工作,
     
    1. 在P1口到ULN2003上串接電阻,起到分壓的作用,就可以抬高電平。
     
    2. 給P1口接上拉電阻,跟P1口內部電阻并聯,減小上拉電阻阻值,減小分得的電壓,從而抬高P0口高電平電位。
     
    采用第二種方案可以抬高電平到2.5V左右。鍵盤工作正常。
     
    另外:我在做液晶顯示實驗的時候,數據線用的P0口,無法正常工作,不顯示字符。但是亂動一下數據線就可以完成顯示,但是顯示現象并不正常,字符不是一次寫入,而是亂動幾次才能寫完全部內容,正常應該一次全部顯示 。原因是由于,我的P0口中有六個端口都外接并聯三個發光二極管。,因為從資料上查到,P0口每一個端口最大可以吸收10MA電流,總電流不能超過26MA電流。這樣算我的總電流已經到了40MA,呵呵。見笑了。所以懷疑是驅動的問題。于是去掉了幾個二極管。顯示一切正常。似乎問題已經解決,但總覺得還是有點問題,于是又經過幾次試驗,發現只有當P0.7端口的并聯二極管去掉一個,再在其他端口接上一個發光二極管。此時也可以正常顯示。但是這樣P0口吸收電流在38MA,也超過了26MA不少。所以不是吸收電流太大的問題。仔細分析當端口并聯外接三個二極管的時候等效于加了一個700歐左右的電阻,于是把二極管去掉換成一個1k電阻,液晶也無法顯示。
     
    經過仔細分析,我認為,由于P0.7是液晶忙信號的返回線路當這個端口返回高電平時說明,液晶正在處理數據,無法接收新的數據,返回0時說明空閑,可以接收新數據。
     
    這樣當上拉電阻太小了,液晶返回低電平時就有可能高過1.3V(AT89s52高低電平的判決電位),單片機接收到后,不會當作低電平,當然也就無法顯示了。(程序設計的時檢測到忙信號,繼續檢測)
     
    總結:上拉電阻選擇也有要求,既不是越高越好也不是越低越好。根據需要選擇。
     
    要采購鍵盤么,點這里了解一下價格!
    特別推薦
    技術文章更多>>
    技術白皮書下載更多>>
    熱門搜索
    ?

    關閉

    ?

    關閉

    久久久久亚洲精品无码网址| 中文字幕精品无码一区二区 | 亚洲中文字幕无码久久综合网| 最好看最新高清中文视频| 亚洲va中文字幕无码久久| 无码专区6080yy国产电影| 曰韩人妻无码一区二区三区综合部| 久久久久无码精品| 中文字幕精品久久久久人妻| 欧日韩国产无码专区| 国产精品99久久久精品无码 | 精品欧洲AV无码一区二区男男| 国产精品亚洲а∨无码播放| 久久久久中文字幕| 精品日韩亚洲AV无码一区二区三区| 亚洲欧美日韩在线中文字幕 | 日本妇人成熟免费中文字幕| 亚洲中文字幕无码永久在线 | 亚洲中文字幕不卡无码| 色综合网天天综合色中文男男| 久久青青草原亚洲av无码app| 亚洲精品97久久中文字幕无码| 亚洲AV无码乱码在线观看牲色 | 日韩亚洲不卡在线视频中文字幕在线观看 | 国精品无码一区二区三区在线 | 最近免费中文字幕大全免费版视频| 国产精品xxxx国产喷水亚洲国产精品无码久久一区 | 亚洲av激情无码专区在线播放| 中文字幕精品视频| 成人午夜福利免费专区无码| 国产亚洲精久久久久久无码77777| 一区二区三区无码高清视频| 欧洲精品久久久av无码电影| 少妇无码太爽了在线播放| 亚洲Aⅴ无码一区二区二三区软件| 亚洲av福利无码无一区二区 | 亚洲av日韩av无码黑人| 国产色爽免费无码视频| 精品久久久久久中文字幕人妻最新| 国模无码一区二区三区| 亚洲∧v久久久无码精品|