STM32外围电路硬件解析
復位電路:
????????復位 :讓MCU回到最開始的狀態。并且從頭開始,重新執行程序
?? ??? ?
????????我們什么時候需要復位?
? ? ? ? ? ????????? 1.燒錄的時候? ?
? ? ? ? ????????? ? 2.程序跑飛了的時候
? ? ? ? ? ????????? 3.上電復位(上電的時候需要復位)
?? ??? ??? ?
?? ??? ?復位方式:
? ? ? ? ? ? 1.上電復位: --- 一定要有
?? ??? ??? ??? ?MCU的Reset是復位引腳,當這個引腳為低電平時,單片機會產生復位。? ? ?? ? ? ? ?
? ? ? ? ? ? 2. 按鍵復位:--- 可有可無(看需求)
? ? ? ? ? ? ? ? K10按下,產生復位動作
?
?????????這是阻容復位電路。當復位引腳低電平的時候復位。當上電的瞬間,C13電容開始充電,電容處于短路狀態,電容上面的電壓為低電平,此時MCU復位引腳被拉低,MCU執行復位,這樣就實現了上電的時候復位功能了。
? ? ? ? 實際上,單片機內部也有上電復位電路,那么我們之所以還要在單片機外部加上復位電路的原因是:因為外部上電復位電路復位時間較長,較長的復位時間,可以使得等電源、系統充分穩定后,MCU再來啟動并執行程序,保證了MCU、系統正常運行。
? ? ? ? 注意:由于電容的精度不夠,而且電容還會受到溫度的影響,存在溫漂,所以阻容復位電路的延時并不精確。但是,阻容復位電路可以滿足絕大部分的需要了。
? ? ? ? 上電復位的目的:
? ? ? ? 1.等待供電電源、系統穩定后,再來啟動MCU,執行程序,否則MCU、系統無法正常運行。
? ? ? ? 2.復位會初始化部分寄存器
?????????注意R21和C13的選擇(一般選擇10k電阻,104電容就可以,即:延時大約10uS)。其中,電容不能選擇太小,否則C13電容很快就充滿電了,那么此時電容上面就不是低電平了,但是,很有可能此時電源、系統還沒有到達穩定狀態。那么芯片供電電源、系統不穩定,就會導致MCU和整個系統工作有問題,有可能MCU時而啟動成功,時而啟動失敗。
?晶振電路:
????????
? ? ? ? 單片機內部集成的HSI時鐘源是就是RC振蕩器。
?
????????晶振電路在布線的時候,盡量靠近單片機,因為晶振引腳,PCB走線也有電容電阻效應。
?
晶體振蕩器分為無源晶振和有源晶振兩種類型。
無源晶振:
????????無源晶振與有源晶振的英文名稱不同,無源晶振為 crystal(晶體),而有源晶振則叫做 oscillator(振蕩器)。
????????無源晶振是有2個引腳的無極性元件,需要借助于時鐘電路才能產生振蕩信號,自身無法振蕩起來,所以“無源晶振”這個說法并不準確;有源晶振有 4只引腳,是一個完整的振蕩器,其中除了石英晶體外,還有晶體管和阻容元件,因此體積較大。
????????無源晶振和有源晶振的區別很多時候是大家直接通過觀察了解到的?。尤其是針對 2520貼片晶振,3225貼片晶振, 5032貼片晶振?,并且是四腳封裝的石英晶振來說,?包括有源晶振,也包括無源晶振。
有源晶振
????????有源晶振通常的用法:一腳懸空,二腳接地,三腳接輸出,四腳接電壓。
????????有源晶振不需要DSP的內部振蕩器,信號質量好,比較穩定,而且連接方式相對簡單(主要是做好電源濾波,通常使用一個電容和電感構成的 PI 型濾波網絡,輸出 端用一個小阻值的電阻過濾信號即可),不需要復雜的配置電路。相對于無源晶體,有源晶振的缺陷是其信號電平是固定的,需要選擇好合適輸出電平,靈活性較 差,而且價格高。
????????有源晶振是由石英晶體組成的,石英晶片之所以能當為振蕩器使用,是基于它的壓電效應:在晶片的兩個極上加一電場,會使晶體產生機械變形;在石英晶片上加上 交 變電壓,晶體就會產生機械振動,同時機械變形振動又會產生交變電場,雖然這種交變電場的電壓極其微弱,但其振動頻率是十分穩定的。
????????當外加交變電壓的頻率與 晶片的固有頻率(由晶片的尺寸和形狀決定)相等時,機械振動的幅度將急劇增加,這種現象稱為“壓電諧振”。
????????壓電諧振狀態的建立和維持都必須借助于振蕩器電路才能實現。圖 3 是一個串聯型振蕩器,晶體管 T1 和 T2 構成的兩級放大器,石英晶體 XT 與電容 C2 構成 LC 電 路。在這個電路中,石英晶體相當于一個電感,C2 為可變電容器,調節其容量即可使電路進入諧振狀態。該振蕩器供電電壓為 5V,輸出波形為方波。
晶振電路中選擇電容的方式有哪些?-面包板社區導讀:在電子學上,通常將含有晶體管元件的電路稱作“有源電路”(如有源音箱、有源濾波器等),而僅由阻容元件組成的電路稱作“無源電路”。https://www.eet-china.com/mp/a31010.html#:~:text=%E6%99%B6%E6%8C%AF%E7%94%B5%E8%B7%AF%E4%B8%AD%E5%A6%82%E4%BD%95%E9%80%89%E6%8B%A9%E7%94%B5%E5%AE%B9%20C1%EF%BC%8CC2%EF%BC%9F%20%EF%BC%881%EF%BC%89%E5%9B%A0%E4%B8%BA%E6%AF%8F%E4%B8%80%E7%A7%8D%E6%99%B6%E6%8C%AF%E9%83%BD%E6%9C%89%E5%90%84%E8%87%AA%E7%9A%84%E7%89%B9%E6%80%A7%EF%BC%8C%E6%89%80%E4%BB%A5,%E6%8C%89%E5%88%B6%E9%80%A0%E5%8E%82%E5%95%86%E6%89%80%E6%8F%90%E4%BE%9B%E7%9A%84%E6%95%B0%E5%80%BC%E9%80%89%E6%8B%A9%E5%A4%96%E9%83%A8%E5%85%83%E5%99%A8%E4%BB%B6%E3%80%82%20%EF%BC%882%EF%BC%89%E5%9C%A8%E8%AE%B8%E5%8F%AF%E8%8C%83%E5%9B%B4%E5%86%85%EF%BC%8CC1%EF%BC%8CC2%20%E5%80%BC%E8%B6%8A%E4%BD%8E%E8%B6%8A%E5%A5%BD%E3%80%82
晶振的起振原理:
????????模擬器件搭建正弦波震蕩電路_電路設計_烏云踏雪
????????ESP8266物聯網開發板設計3 ---晶振起振原理_物聯網_烏云踏雪
UART、RS232、RS485它們之間的區別:
????????UART,是通用異步收發傳輸器(Universal Asynchronous Receiver/Transmitter),既然是“器”,顯然,它就是個設備而已,要完成一個特定的功能的硬件,它本身并不是協議。那么它要完成什么功能呢?它的最基本功能,是串行數據和并行數據之間的轉換。
????????這就是UART做的最基本工作,進一步的,它還要控制“發車的班次”,比如確認一個Byte的這8個bit是什么時候開始的,又是什么時候結束的,兩個班次之間至少要隔多長時間的緩沖,等等。這一部分,也具有協議的特征,但是相對于道路上的協議,更具有一般性,或曰,是與車在什么道路上開,相對獨立的。
????????RS232/RS485,是兩種不同的電氣協議,也就是說,是對電氣特性以及物理特性的規定,作用于數據的傳輸通路上,它并不內含對數據的處理方式。比如,最顯著的特征是:RS232使用3-15v有效電平,而UART,因為對電氣特性并沒有規定,所以直接使用CPU使用的電平,就是所謂的TTL電平(可能在0~3.3V之間)。更具體的,電氣的特性也決定了線路的連接方式,比如RS232,規定用電平表示數據,因此線路就是單線路的,用兩根線才能達到全雙工的目的;而RS485,?使用差分電平表示數據,因此,必須用兩根線才能達到傳輸數據的基本要求,要實現全雙工,必需用4根線。但是,無論使用RS232還是RS485,它們與UART是相對獨立的,但是由于電氣特性的差別,必須要有專用的器件和UART接駁,才能完成數據在線路和UART之間的正常流動。
????????UART、RS232、RS485它們實際上都是串口上面的屬性,只不過它們的功能不一樣。UART的功能是將串行轉并行,而RS232、RS485是一種電平標準
UART和RS232/RS485的關系是什么?_hututu_404的博客-CSDN博客_uart和485的區別?串口通訊是電子工程師和嵌入式開發工程師面對的最基本問題,RS232則是其中最簡單最常用的通訊方式。但是初學者往往搞不清有關的名詞如UART和RS232或RS485之間是什么關系,因為它們經常被放到語句中同等的位置使用。在百度搜索二者的區別,可以看到排在最前面的答案充斥著混淆的概念。就此,談談我對這幾個概念的理解,希望能幫初學者厘清它們之間的關系。~~? ? ? ?通訊問題,和交通是一樣的...https://blog.csdn.net/u013178472/article/details/81226780
TTL電平信號:
TTL電平標準:
輸出 L: <0.8V ;
輸出 H:>2.4V。
輸入 L: <1.2V ;
輸入H: >2.0V。
????????TTL電平信號之所以被廣泛使用,原因是:通常我們采用二進制來表示數據。而且規定,+5V等價于邏輯“1”,0V等價于邏輯“0”。這樣的數據通信及電平規定方式,被稱做TTL(晶體管-晶體管邏輯電平)信號系統。
????????TTL電平長距離傳輸不了,抗干擾不行,衰減也大。長距離傳輸過程只能用RS232電平或者485電平,后者更遠,在發送部分將TTL轉換后,傳輸,接收部分再將傳輸電平轉換為TTL電平。TTL作為邏輯電平很好,但是長距離傳輸確實能力有限。
RS232串口
? ? RS232是計算機與通信工業應用中最廣泛一種串行接口。它以全雙工方式工作,需要地線、發送線和接收線三條線。RS232只能實現點對點的通信方式。
???RS232串口缺點
? ? ●接口信號電平值較高,接口電路芯片容易損壞。
? ? ●傳輸速率低,最高波特率19200bps。
? ? ●抗干擾能力較差。
? ? ●傳輸距離有限,一般在15m以內。
? ? ●只能實現點對點的通訊方式。
? ?RS232串口接口定義
? ? RXD:接收數據,TXD:發送數據,GND/SG:信號地。
邏輯1(MARK)=-3V~-15V
邏輯0(SPACE)=+3~+15V
?RS485串口
??????RS485串口特點
? ? ●RS485采用平衡發送和差分接收,具有良好的抗干擾能力,信號能傳輸上千米。
? ? ●RS485有兩線制和四線制兩種接線。采用四線制時,只能實現點對多的通訊(即只能有一個主設備,其余為從設備)。四線制現在很少采用,現在多采用兩線制接線方式。
? ? ●兩線制RS485只能以半雙式方式工作,收發不能同時進行。
? ? ●RS485在同一總線上最多可以接32個結點,可實現真正的多點通訊,但一般采用的是主從通信方式,即一個主機帶多個從機。
? ? ●因RS485接口具有良好的抗干擾能力,長的傳輸距離和多站能力等優點使其成為首選的串行接口。? ??
????????通常情況下,發送驅動器A、B之間的正電平在+2~+6V,負電平在-2~6V,另有一個信號地C。
USB電平:
電源線是5V,為USB設備提供最大500mA的電流,它與數據線上的電平無關,數據線是差分信號,通常D+和D-在+400mV~-400mV間變化,在傳統的單端(Single-ended)通信中,一條線路來傳輸一個比特位。高電平表示1,低電平表示0。倘若在數據傳輸過程中受到干擾,高低電平信號完全可能因此產生突破臨界值的大幅度擾動,一旦高電平或低電平信號超出臨界值,信號就會出錯。在差分傳輸電路中,輸出電平為正電壓時表示邏輯“1”,輸出負電壓時表示邏輯“0”,而輸出“0”電壓是沒有意義的,它既不代表“1”,也不代表“0”。
CMOS電平
????????COMS集成電路是互補對稱金屬氧化物半導體(Compiementary symmetry metal oxide semicoductor)集成電路的英文縮寫,電路的許多基本邏輯單元都是用增強型PMOS晶體管和增強型NMOS管按照互補對稱形式連接的,靜態功耗很小。
????????COMS電路的供電電壓VDD范圍比較廣在+5~+15V均能正常工作,電壓波動允許±10,當輸出電壓高于VDD-0.5V時為邏輯1,輸出電壓低于VSS+0.5V(VSS為數字地)為邏輯0。CMOS電路輸出高電平約為0.9Vcc,而輸出低電平約為0.1Vcc當輸入電壓高于VDD-1.5V時為邏輯1,輸入電壓低于VSS+1.5V(VSS為數字地)為邏輯0。CMOS電路中不適用的輸入端不能懸空,否則邏輯混亂。
USB轉串口電路:
?這是一個USB接口電路,連接電腦。
??????
??????????CH340是一個usb轉串口的芯片(USB電路為5V,所以CH340芯片也是5V供電)。當然,串口的電平標準有很多,這里我們可以看到,我們是將USB轉換為TTL電平,通過UART來與CPU進行通信。
????????CH340的接收端RXD與CPU的發送端UART1 TX? 相連接,即CPU通過TX發送消息給CH340的RXD接收,然后CH340又通過UD+將信息發送給USB接口。
? ? ? ?同理,CH340的接收端TXD與CPU的發送端UART1 RX? 相連接。CH340通過UD-接收來自USB接口發送的信息,而CPU則通過RX來接收由CH340的TXD發送的信息。
? ? ? ? 注意:CH340也需要用外部晶振電路來驅動。因為它需要在時鐘的基礎上面來發送/接收數據。
?
那為什么紅框處要加一個二極管D4?
? ? ? ??我們可以看到,CH340芯片是5V供電,而cpu是3.3V供電。當cpu的UART1 RX接收來自CH340的TXD發送的數據的時候,此時D4二極管截止,D4二極管的陽極就為上拉電阻提供的3.3V,而不是CH340芯片的5V。那么此時,cpu識別到的電平就是TTL電平3.3V,而不是5V電平。
????????
注意:有的芯片供電是3.3V,它是不需要加這個二極管和上拉電阻的。
總結
以上是生活随笔為你收集整理的STM32外围电路硬件解析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android性能调优实例
- 下一篇: IT项目管理复习题目整理一