UART那么好用,为什么单片机还需要I2C和SPI?

แชร์
ฝัง

ความคิดเห็น • 34

  • @richardfan25
    @richardfan25 หลายเดือนก่อน +41

    傳統 I2C 的裝置位址是 7-bit,介於 0x00~0x7F 之間,若將 R/W bit 包含在內(bit0) 表示成 8-bit 位址,寫成 0xA0, 0xA1, 0xA2, 0xA3 是錯的,因為 0xA0, 0xA1 位址代表同一個裝置,0xA0代表 W, 0xA1 代表 R。影片 3:49 處最好寫成 0xA0, 0xA2, 0xA4, 0xA6 比較不會引起誤解。

    • @eishuu858
      @eishuu858 หลายเดือนก่อน +1

      这个i2c地址是设备自己设置的是吗?我看有些设备上有个电阻位可以调整地址,但总觉得不太方便。尤其是多个相同传感器的时候...

    • @kylelee3243
      @kylelee3243 หลายเดือนก่อน

    • @PenguinYan
      @PenguinYan 26 วันที่ผ่านมา

      ​@@eishuu858 I2C的位址是感測器製造商「付費以取得I²C從屬裝置位址」,如果今天感測器製造商多買了一些位址,那他就可以透過電路設計的方式(就是某隻腳High或low),來改變該感測器的位址。
      如果你同時需要很多顆相同位置的感測器,那有幾種方案
      第一種就是開另一條I2C的通道,這樣兩條通道分開來就可以分別接相同位址的感測器。
      第二種是用多工器晶片把訊號切換開來,對於GPIO比較少的晶片可以同時接更多同位址的感測器

  • @dukelec
    @dukelec หลายเดือนก่อน +6

    串口用 485 做物理层就可以一对多通讯,进一步使用 cdbus 串口协议可以在半双工总线上实现多主对等通讯,类似 can 总线的仲裁,速率可以达到甚至超过 50Mbps

  • @james0327
    @james0327 หลายเดือนก่อน

    簡單易懂又明白,深入淺出的好頻道。

  • @NexxchipChong
    @NexxchipChong หลายเดือนก่อน +1

    正好可以让我这个新手学习的资料
    感谢孙老师

  • @MultiYlin
    @MultiYlin หลายเดือนก่อน +1

    UART: aysnc, bit-banging
    I2C half-duplex
    SPI full-duplex
    duplex就是如果是大哥大full duplex也就是可以同时问候老母,呼机-电话亭模式half-duplex的叫阵模式
    async, bitbanging,async就是他没有时钟,芯片直接读取高低信号,而后两个都是Sync信号:或者是下列两种模式其中之一运行
    模式1. rising edge或者是dropping edge
    模式2. 高电平或者是低电平的时候读取

  • @HunterRolf
    @HunterRolf หลายเดือนก่อน +6

    希望有機會能介紹 CAN bus

  • @chunchingyu1221
    @chunchingyu1221 หลายเดือนก่อน

    簡單明瞭,謝謝

  • @RS-kx9rp
    @RS-kx9rp หลายเดือนก่อน

    谢谢讲解❤

  • @future7442
    @future7442 หลายเดือนก่อน

    簡單明瞭 讚

  • @user-wl9vn5ir6u
    @user-wl9vn5ir6u หลายเดือนก่อน

    謝謝孫老師

  • @BigBigSmile
    @BigBigSmile หลายเดือนก่อน

    谢谢

  • @saharasahara814
    @saharasahara814 หลายเดือนก่อน

    UART的單線模式可以一對多通信,也支持多主機多從機

  • @americannumber2
    @americannumber2 หลายเดือนก่อน +1

    你说的cam over 485

  • @user-ib8kx1kh7c
    @user-ib8kx1kh7c หลายเดือนก่อน +2

    SPI,RS485也支援一對多啊

  • @neilg2256
    @neilg2256 หลายเดือนก่อน

    学习一下硬件电路

  • @Wroger0123
    @Wroger0123 หลายเดือนก่อน +7

    很赞的影片!
    我也是做教育的,方便请问是用什么软件做出这些动画的?

    • @dogsuper8459
      @dogsuper8459 หลายเดือนก่อน

      +1

    • @choogunatsha
      @choogunatsha หลายเดือนก่อน

      我也想知道!

  • @yaoweichang4586
    @yaoweichang4586 หลายเดือนก่อน

    抱歉問個基本問題...
    RS232和RS485不是都被列在UART的範圍裏面麼? 還是說這兩個是應該要獨立出來不屬於UART?

    • @truthjustice8886
      @truthjustice8886 23 วันที่ผ่านมา

      RS485和RS232都是UART底層的界面信號。也就是界面信號不同而已,信號內容還是UART那一套。

  • @bigbird0609
    @bigbird0609 หลายเดือนก่อน

    便宜

  • @Guixu_cosmos
    @Guixu_cosmos หลายเดือนก่อน +1

    現在直接用USB不是比較直接嗎? UART SPI要對電腦 還是轉成USB不是嗎
    I2C通常是在同一片板子上用的介面吧

  • @jasonlin5884
    @jasonlin5884 หลายเดือนก่อน

    那些缺點 can 都沒有(至少都大幅改善了)。
    不知為何?ST 舊的 stm32f1xx 都有 can bus 反而很多更先進的stm32f4xx 確把它閹了。為何呢?

    • @hellosunlaoshi
      @hellosunlaoshi  หลายเดือนก่อน

      can协议比较复杂

    • @dukelec
      @dukelec หลายเดือนก่อน

      串口协议 cdbus 和 can 类似,速率 更高(50Mbps),使用更简单(标准串口协议)

    • @dukelec
      @dukelec หลายเดือนก่อน

      低端总线有简单易用的串口总线,含单线串口和 rs485,且速率可以很快,高端总线市场被 ethercat 之类的工业以太网占据,can 高不成低不就,协议复杂,向前兼容的包袱重,未来堪忧

  • @esonwong
    @esonwong หลายเดือนก่อน

    学习学习

  • @henrygu6149
    @henrygu6149 หลายเดือนก่อน

    uart缺乏同步,速度不够,电平不匹配等。

  • @kiomasd
    @kiomasd 24 วันที่ผ่านมา +1

    uart跟i2c唸法不正確....
    這些通訊以前在某全球最大電源廠上班時,有自己刻過底層IO訊號,基本都還滿容易的,Intel SMBus比較複雜一點,還有指令+尋址+封包+中斷等概念,且對時序要求更高,多一小根毛刺雜訊都不行,當時公司還有一台破百萬的高檔安捷倫示波器,印象很深刻

  • @eeio1k994
    @eeio1k994 หลายเดือนก่อน

    MCU 為什麼有這麼多的通訊埤?
    沒為什麼.. 因為各IC設計有各IC設計的喜好,, 你需到用到它, 你就得跟這些東西通, 你用的MCU 就得滿足..
    硬體沒直接支援, 也得想辦法 利用普通IO腳, 來軟體模擬...
    所以, 不要再報怨了,,, 各IC設計廠 想怎麼設計它的IC, 並不是你能決定的...
    如果 通訊兩邊的裝置 都是你能決定的, 當然你想用什麼樣的通訊 都可以..

  • @yuhungjay4477
    @yuhungjay4477 หลายเดือนก่อน +1

    長知識了!