更新日志
版本號 | 更新內容 | 更新日期 | 備注 |
V1.0 | 完成初稿 | 2021.12.26 |
1)在STM32系列微控制器中,可以作為主時鐘MCO輸出的時鐘源是()。
A.HSI
B.HSE
C.SYSCLK
D.HSE/2
【解答】MCO是STM32可以通過GPIO輸出時鐘信號,這個時鐘來源于STM32內部,可以是PLLCLK/2、 HSI、 HSE、 SYSCLK。
2)三態門的輸出狀態包括( )。
A.高電平
B.低電平
C.模擬輸出
D.高阻態
【解答】三態門是指邏輯門的輸出有三種狀態:高電平狀態、低電平狀態、高阻狀態。其中,高阻狀態相當于隔離狀態(因為高阻狀態電阻很大,相當于開路)。
3)下列表達式中與電路圖相符的是()
A.Y=A+B+C
B.Y=C·(A+B)
C.Y=A·B·C
D.Y=A·B+C
【解答】此電路圖為邏輯門中的或門。選A。
4)下列語句中,可以實現STM32 微控制器PA0 引腳狀態翻轉的是( )。
A.GPIOA->ODR^=1
B.GPIOA->BSRR&=~1
C.GPIOA->BRR|=1
D.GPIOA->BSRR|=1
【解答】GPIO的 3個 管腳控制寄存器:
ODR寄存器:控制管腳的高、低電平,低16位有效,寫1高電平,寫0低電平;
BSRR寄存器:控制管腳的高、低電平,32位有效,低16位寫1高電平,高16位寫1低電平;
BRR寄存器:控制管腳的低電平,低16位有效,寫1低電平。
特別的: F1和F4系列都有ODR和BSRR,但F4取消了BRR。所以為了代碼通用,盡量不使用BRR,反正BSRR能完成。
ODR、BSRR的使用區別:
你應該有過和我一樣的疑問:ODR寄存器只用低16位,就能控制引腳的高、低電平,還能讀寄存器的值,用以判斷引腳電平狀態;那么, 為什么要存在一個BSRR! 還分高、低16位! 還不能讀寄存器的值!
例如: PB1要設高電平, PB11設低電平;注意看注釋
// 通過 ODR 寄存器
GPIOB->ODR|=0X01;//代碼是一行, 但背后的運行是很多步:讀取->或運算->寫入
GPIOB->ODR&=~(0X01<<11);//同樣是:讀取->或運算->寫入
// 通過 BSRR 寄存器
GPIOB->BSRR=0X01;//某個位直接置1,OK, 搞定了。其它沒置1的位不產生變化。
GPIOB->BSRR=0X01<<11;// 同上。
5)下列關于USB 的說法中正確的是( )。
A.是一種串行通信方式。
B.能夠支持熱插拔、即插即用。
C.通信速度比RS232快。
D.級聯星型拓撲結構,分為主機(host)、集線器(hub)和設備(device)。
【解答】USB,即Universal Serial Bus(通用串行總線)的縮寫,是一個外部總線標準,用于規范電腦與外部設備的連接和通訊。USB接口支持設備的即插即用和熱插拔功能。USB是在1994年底由英特爾、康柏、IBM等多家公司聯合提出的。USB的速度是不斷提升的,比RS232快。最新一代是USB 3.1,傳輸速度為10Gbit/s。USB系統采用級聯星型拓撲,該拓撲由三個基本部分組成:主機(Host),集線器(Hub)和功能設備(device)。
6)STM32微控制器的DMA通道可以連接的外設包括( )。
A.I2C1
B.USART1
C.USART2
D.TIM1
【解答】STM32微控制器的DMA(直接存儲器訪問)通道可以連接多種外設,具體取決于所使用的具體型號和系列。以下是一些常見的外設,可以通過DMA通道進行連接:SPI(串行外設接口):用于與外部SPI設備進行通信,如SPI Flash、SPI LCD等。I2C(串行外設接口):用于與外部I2C設備進行通信,如I2C EEPROM、I2C溫度傳感器等。UART(通用異步收發器):用于與外部串口設備進行通信,如串口GPS模塊、藍牙模塊等。ADC(模數轉換器):用于采集模擬信號,可以通過DMA通道將采樣數據直接傳輸到內存中。DAC(數模轉換器):用于輸出模擬信號,可以通過DMA通道將數據直接傳輸到DAC寄存器。Timer/Counter(定時器/計數器):用于定時和計數應用,可以通過DMA通道傳輸計數值或觸發事件。SDIO(安全數字輸入輸出接口):用于與SD卡進行數據交互,可以通過DMA通道實現高速數據傳輸。
7)由理想運算放大器構成的電路如下圖所示,其輸出電壓Uo為( )。
A.1V
B.2V
C.-2V
D.3V
【解答】由上圖可知,運放2的5號腳為1V,運放3的10號腳為2V,利用虛短虛斷,可知,運放2的6號腳為1V,運放3的9號腳為2V,所以電阻R2的壓差是1V,電流從運放3的9號腳流向運放2的7號腳,電流大小為1V/1K=1mA。所以電阻的R4的壓差也是1V(1mA*1K)。注意:運放3的8號腳比運放3的9號腳電壓高,因為電流是運放3的9號流向運放2的7號腳,所以流經R4的電流是運放3的8號腳流向運放3的9號。所以Uo=3V。
8)下列屬于差分方式傳輸的選項是( )。
A.USB
B.RS232
C.RS485
D.1-Wire
【解答】
RS-485:一種常用的差分信號標準,用于在遠距離通信中傳輸數據,例如工業自動化領域。
RS-422:與RS-485類似,也是一種差分信號標準,用于遠距離高速數據傳輸。
LVDS(低壓差分信號):一種常用的差分信號標準,通常用于高速數據傳輸接口。
USB(通用串行總線):USB 2.0和USB 3.0標準中使用了差分信號傳輸。
HDMI(高清多媒體接口):HDMI接口使用差分信號傳輸視頻和音頻信號。
Ethernet(以太網):以太網標準中使用差分信號傳輸數據,用于計算機網絡通信。
SATA(串行ATA):SATA接口使用差分信號,用于連接硬盤驅動器和光盤驅動器等存儲設備。
9)全雙工串行通信是指( )。
A.設計有數據發送和數據接收引腳。
B.發送與接收不互相制約。
C.設計有兩條數據傳輸線。
D.通訊模式和速度可編程、可配置。
【解答】全雙工串行通信是值發送接收可以同時運行切相互不影響。
10)下列選項中,屬于STM32 內核級外設的是( )。
A.TIM1
B.SysTick
C.NVIC
D.EXTI
【解答】STM32微控制器提供了多個內核級外設,這些外設嵌入在微控制器的內核中,可以直接通過內核訪問和控制。這些內核級外設提供了豐富的功能和硬件支持,可以滿足不同應用的需求。在開發STM32應用時,可以充分利用這些內核級外設來簡化開發流程、提高性能和功能擴展能力。具體可用的內核級外設會根據不同的STM32型號和系列而有所差異,因此在具體開發中需要參考相關的芯片手冊和參考資料。以下是一些常見的STM32內核級外設:
1. NVIC(Nested Vectored Interrupt Controller):中斷控制器,用于管理和分配中斷優先級、處理中斷請求和中斷服務程序的執行。
2. SysTick:系統定時器,提供了一個可編程的定時器,可用于生成周期性的中斷或實現精確的定時操作。
3. MPU(Memory Protection Unit):內存保護單元,用于實現內存區域的訪問權限控制和保護,提高系統的安全性和可靠性。
4. FPU(Floating Point Unit):浮點運算單元,提供了硬件加速的浮點運算能力,用于高精度的浮點計算。
5. DMA(Direct Memory Access):直接存儲器訪問控制器,用于實現高速數據傳輸,通過配置DMA通道,可以實現數據在外設和內存之間的直接傳輸,減輕CPU的負擔。
6. MPU(Memory Protection Unit):內存保護單元,用于實現內存區域的訪問權限控制和保護,提高系統的安全性和可靠性。
7. RTC(Real-Time Clock):實時時鐘,提供了實時時鐘和日歷功能,用于記錄時間和日期,支持定時和鬧鐘功能。
8. PWR(Power Control):電源控制模塊,用于管理系統的電源狀態,包括低功耗模式、待機模式和喚醒功能等。
-
控制器
+關注
關注
112文章
16336瀏覽量
177825 -
物聯網
+關注
關注
2909文章
44571瀏覽量
372837 -
STM32
+關注
關注
2270文章
10896瀏覽量
355766
發布評論請先 登錄
相關推薦
評論