亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

求大佬幫幫忙,想求GPIOPinWrite()函數詳解!

求大佬幫幫忙,想求GPIOPinWrite()函數詳解!

嚕嚕噠 2021-10-14 15:11:52
GPIOPinWrite(GPIO_PORTB_BASE, GPIO_PIN_6, 1)這個函數的意思是GPIO B6寫入1么?那 GPIOPinWrite(GPIO_PORTF_BASE, GPIO_PIN_2, 0x00000004)的意思是GPIO F2寫入4?F2不就是一個輸出么,要么0要么1,為啥還有4呢?看函數的解釋說好像是位3是1其余位是0,還是不懂,F2不就是1位么?求詳細解答
查看完整描述

2 回答

?
呼喚遠方

TA貢獻1856條經驗 獲得超11個贊

您好!

請問你使用的處理器是TI的ARM Cotex-M4處理器嗎?

對于Tiva處理器,可以使用TI官方提供的庫函數,TivaWare里的外設驅動庫

GPIOPinWrite(GPIO_PORTB_BASE, GPIO_PIN_6, 1)--》往B口寫數據;
因為Tiva有個BitMask的功能, 函數中的第二個參數表示要改變B口的哪些位,需要改變的Bits位用1表示;例如要改變低4為,則輸入0x0F;如要改變最高位和最低位則輸入0x81;
第三個參數表示要寫入的數值,與參數二結合,只有參數2當中為1的位才會被改寫為相應的數值;

舉例:
(1)GPIOPinWrite(GPIO_PORTB_BASE, GPIO_PIN_6, 1) --B口的PIN_6輸出0,其它位不變;
(2)GPIOPinWrite(GPIO_PORTB_BASE, GPIO_PIN_6, 0xFF) --B口的PIN_6寫1,其它位不變;
(3)GPIOPinWrite(GPIO_PORTB_BASE, GPIO_PIN_6 | GPIO_PIN_2, 0xF0)
----B口的Pin6 輸出1, 同時,Pin2輸出0;

查看完整回答
反對 回復 2021-10-17
?
白衣染霜花

TA貢獻1796條經驗 獲得超10個贊

GPIOPinWrite(GPIO_PORTB_BASE, GPIO_PIN_6, 1)這個函數的意思是GPIOB6寫入1;GPIOPinWrite(GPIO_PORTF_BASE, GPIO_PIN_2, 0x00000004)的意思是GPIOF寫入4,即為:F0寫0,F1寫0,F2寫1,F3……15都寫0。

查看完整回答
反對 回復 2021-10-17
  • 2 回答
  • 0 關注
  • 809 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號