久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 20596|回復: 7
打印 上一主題 下一主題
收起左側

51單片機的IO口操作基礎知識介紹

  [復制鏈接]
跳轉到指定樓層
樓主
ID:101489 發表于 2016-1-5 01:42 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
以我們常用的STC單片機為例:STC單片機所有IO口均可由軟件配置成4種工作類型。4種類型分別為:準雙向口/弱上拉(標準8051輸出模式)、強推挽輸出/強上拉、僅為輸入(高阻)或開漏輸出功能。每個口有2個寄存器中的相應位控制每個引腳的工作類型。上電復位后的工作模式為準雙向/弱上拉模式。2V以上為高電平,0.8V以下為低電平,每個I/O口驅動能力可以達到20mA。
那么我們通過配置哪兩個寄存器來設定I/O口的工作模式呢:這兩個寄存器就是PxM1和PxM0,P0口對應的就是P0M1和P0M0,P1口對應的就是P0M1和P0M0,P2口對應的就是P0M1和P0M0,P3口對應的就是P0M1和P0M0。以P0口的設置為例:
如果有P0M1為10100000;P0M0為11000000,我們對照上表可以知道:P0.7管腳為開漏輸出;P0.6為強推挽輸出;P0.5為輸入(高阻);P0.4到P0.0為準雙向口。

單片機I/O控制電路典型接法:
1、典型三極管控制電路
如果用弱上拉控制,建議加上拉電阻R1(3.3K - 10K),如果不加上拉電阻R1,建議R2的阻值在15K以上,或用強推挽輸出。

2、典型發光二極管控制電路
采用準雙向口模式,用灌電流驅動發光二極管限流電阻盡量大于1K,最小不要小于470Ω

推挽/強上拉口模式,用拉電流驅動發光二極管,限流電阻一般為1K。

3、混合電壓供電系統3V/5V器件I/O口互連
STC單片機如果供電是5V,當它連接3.3V器件時,為防止3.3V器件承受不了5V,可將相應的5V單片機I/O口先串一個330Ω的限流電阻到3.3V器件I/O口,程序初始化時將5V器件的I/O口設置成開漏配置,斷開內部上拉電阻,相應的3.3V器件I/O口外部加10K上拉電阻到3.3V器件的VCC,這樣高電平是3.3V,低電平是0V,輸入輸出一切正常。

4、當I/O口作為PWM輸出I/O口時,需要設置成強推挽輸出/強上拉輸出,同時加輸出限流電阻10K即可。

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏5 分享淘帖 頂1 踩
回復

使用道具 舉報

沙發
ID:299857 發表于 2018-4-1 08:19 | 只看該作者
P0口對應的就是P0M1和P0M0,P1口對應的就是P0M1和P0M0,P2口對應的就是P0M1和P0M0,P3口對應的就是P0M1和P0M0。是不是錯了?還有怎么設置啊,我在keil軟件里寫       
P2M0 == 11111111;
P2M1 == 00000000;
或者輸入
P2M0 = 1;
P2M1 = 0;
都報錯說MAIN.C(28): error C202: 'P2M0': undefined identifier。(沒定義變量)
回復

使用道具 舉報

板凳
ID:200844 發表于 2018-4-5 10:32 | 只看該作者
STC89C52RC I/O口有4種工作類型嗎,怎么配置不了,哪些型號有這功能。
回復

使用道具 舉報

地板
ID:398477 發表于 2018-10-3 19:51 來自手機 | 只看該作者
山水2000 發表于 2018-4-5 10:32
STC89C52RC I/O口有4種工作類型嗎,怎么配置不了,哪些型號有這功能。

這個單片機只有準雙向口!你可以上STC官網查詢!
回復

使用道具 舉報

5#
ID:731755 發表于 2021-4-3 18:15 | 只看該作者
請問樓主,P0M0,P1M0,在表格里面怎么對應著看看,我在一本書看到樓主一樣的,也是沒有介紹清楚
回復

使用道具 舉報

6#
ID:289371 發表于 2023-3-30 22:42 | 只看該作者
單片機我來了 發表于 2018-4-1 08:19
P0口對應的就是P0M1和P0M0,P1口對應的就是P0M1和P0M0,P2口對應的就是P0M1和P0M0,P3口對應的就是P0M1和P0 ...

你說的是對的,P后面的數字是端口號,值的位數對應是端口的第幾個,我用stc8是可以的,用stc12C5A60S2就存在P0M0之類的沒定義的問題,我感覺是軟件用的reg52的問題,那里面可能沒定義,這個我也不清楚,希望有人解答
回復

使用道具 舉報

7#
ID:975054 發表于 2023-9-17 11:32 | 只看該作者
單片機我來了 發表于 2018-4-1 08:19
P0口對應的就是P0M1和P0M0,P1口對應的就是P0M1和P0M0,P2口對應的就是P0M1和P0M0,P3口對應的就是P0M1和P0 ...

還沒見過這么寫的:P2M0 == 11111111;P2M1 == 00000000;
應寫成十六進:P2M0 =0xff ; P2M1 =0x00;
報錯原因是你這樣寫編譯器只能把P2M0/P2M1當成變量了而你沒定義變量類型(而實際是寄存器).
回復

使用道具 舉報

8#
ID:975054 發表于 2023-9-17 11:34 | 只看該作者
任何混合供電系統的I/O都要結合具體連接情況,嚴謹來說是"必要時加適當阻值的限流電阻,一般0-330Ω";注意是必要時!
0Ω就是可不接情況:接口已設開漏且距離很近無其他風險,是可不接。但萬一你調試時錯改成非開漏或其他特殊情況,就可能直接輸出5V到3V芯片去了,那不就危險了么?串了限流電阻就基本可以高枕無憂了;并非“應該是完全沒必要加限流電阻了嘛!”。
又如這個口是連接電纜到設備外部的,一般都會接個限流電阻,可能還需要穩壓防靜電浪涌等等,才能防止外部引入不可預測的高壓、靜電、短路開路等等各種干擾的危害!
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲精品国产第一综合99久久 | 日韩欧美视频 | 国产精品成人一区二区三区 | 国产高清视频一区二区 | 成人在线一区二区三区 | 国产精品国产三级国产aⅴ中文 | 精品久久九九 | 日日夜夜影院 | 麻豆视频在线免费观看 | 国产japanhdxxxx麻豆 | 午夜日韩精品 | 免费观看黄a一级视频 | 亚洲精品久久区二区三区蜜桃臀 | 国产精品高潮呻吟久久久久 | 亚洲成人精品在线观看 | 久久久国产一区二区三区 | 久久久精品影院 | 午夜视频一区二区 | 久久久精品一区 | 国产精品久久久久久一区二区三区 | 日日干天天操 | 久久精品亚洲精品 | 日本精品一区二区三区视频 | 久久精品99国产精品日本 | 成人av高清 | 亚洲国产精品va在线看黑人 | 国产精品美女久久久久久久久久久 | 国产精品揄拍一区二区久久国内亚洲精 | 中国一级特黄真人毛片免费观看 | 国产成人精品一区二区三区视频 | 一区在线播放 | 日本二区在线观看 | 午夜二区 | 91精品国产欧美一区二区 | 国产精品视屏 | 欧美一区二区大片 | 国产精品美女久久久久aⅴ国产馆 | 国产精品美女久久久久aⅴ国产馆 | 欧美a区| 日韩欧美一级 | 日韩国产一区二区三区 |