//以下是SPI模塊的初始化代碼,配置成主機(jī)模式
//SPI口初始化
//這里針是對(duì)SPI2的初始化
void SPI2_Init(void)
{
u16 tempreg=0;
RCC->AHB1ENR|=1<<1; //使能PORTB時(shí)鐘
RCC->APB1ENR|=1<<14; //SPI2時(shí)鐘使能
GPIO_Set(GPIOB,7<<13,GPIO_MODE_AF,GPIO_OTYPE_PP,GPIO_SPEED_100M,GPIO_PUPD_PU); //PB13~15復(fù)用功能輸出
GPIO_AF_Set(GPIOB,13,5); //PB13,AF5
GPIO_AF_Set(GPIOB,14,5); //PB14,AF5
GPIO_AF_Set(GPIOB,15,5); //PB15,AF5
//這里只針對(duì)SPI口初始化
RCC->APB1RSTR|=1<<14; //復(fù)位SPI2
RCC->APB1RSTR&=~(1<<14);//停止復(fù)位SPI2
tempreg|=0<<10; //全雙工模式
tempreg|=1<<9; //軟件nss管理
tempreg|=1<<8;
tempreg|=1<<2; //SPI主機(jī)
tempreg|=0<<11; //8位數(shù)據(jù)格式
tempreg|=1<<1; //空閑模式下SCK為1 CPOL=1
tempreg|=1<<0; //數(shù)據(jù)采樣從第2個(gè)時(shí)間邊沿開(kāi)始,CPHA=1
//對(duì)SPI2屬于APB1的外設(shè).時(shí)鐘頻率最大為168Mhz頻率.
tempreg|=7<<3; //Fsck=Fpclk/256
tempreg|=0<<7; //MSB First
tempreg|=1<<6; //SPI啟動(dòng)
SPI2->CR1=tempreg; //設(shè)置CR1
SPI2->I2SCFGR&=~(1<<11);//選擇SPI模式
SPI2_ReadWriteByte(0xff);//啟動(dòng)傳輸
}
//SPI1速度設(shè)置函數(shù)
//SpeedSet:0~7
//SPI速度=fAPB1/2^(SpeedSet+1)
//fAPB1時(shí)鐘一般為168Mhz
void SPI2_SetSpeed(u8 SpeedSet)
{
SpeedSet&=0X07; //限制范圍
SPI2->CR1&=0XFFC7;
SPI2->CR1|=SpeedSet<<3; //設(shè)置SPI1速度
SPI2->CR1|=1<<6; //SPI設(shè)備使能
}
//SPI1 讀寫(xiě)一個(gè)字節(jié)
//TxData:要寫(xiě)入的字節(jié)
//返回值:讀取到的字節(jié)
u8 SPI2_ReadWriteByte(u8 TxData)
{
while((SPI2->SR&1<<1)==0); //等待發(fā)送區(qū)空
SPI2->DR=TxData; //發(fā)送一個(gè)byte
while((SPI2->SR&1<<0)==0); //等待接收完一個(gè)byte
return SPI2->DR; //返回收到的數(shù)據(jù)
}
程序配置IO口用了原子歷程里面的GPIO_AF_Set();如果沒(méi)有自行配置
下面是GPIO_AF_Set()函數(shù)
//GPIO復(fù)用設(shè)置
//GPIOx:GPIOA~GPIOI.
//BITx:0~15,代表IO引腳編號(hào).
//AFx:0~15,代表AF0~AF15.
//AF0~15設(shè)置情況(這里僅是列出常用的,詳細(xì)的請(qǐng)見(jiàn)407數(shù)據(jù)手冊(cè),56頁(yè)Table 7):
//AF0:MCO/SWD/SWCLK/RTC AF1:TIM1/TIM2; AF2:TIM3~5; AF3:TIM8~11
//AF4:I2C1~I2C3; AF5:SPI1/SPI2; AF6:SPI3; AF7:USART1~3;
//AF8:USART4~6; AF9;CAN1/CAN2/TIM12~14 AF10:USB_OTG/USB_HS AF11:ETH
//AF12:FSMC/SDIO/OTG/HS AF13:DCIM AF14: AF15:EVENTOUT
void GPIO_AF_Set(GPIO_TypeDef* GPIOx,u8 BITx,u8 AFx)
{
GPIOx->AFR[BITx>>3]&=~(0X0F<<((BITx&0X07)*4));
GPIOx->AFR[BITx>>3]|=(u32)AFx<<((BITx&0X07)*4);
}
要注意SPI2用的fAPB1時(shí)鐘 最大為168M
SPI1 用的FAPB2時(shí)鐘 最大為84M
上一篇:STM32學(xué)習(xí)筆記——SPI介紹及配置
下一篇:stm32寄存器版學(xué)習(xí)筆記10 SPI
推薦閱讀
史海拾趣
在穩(wěn)固國(guó)內(nèi)市場(chǎng)的同時(shí),福聲科技積極尋求國(guó)際合作機(jī)會(huì),努力拓展海外市場(chǎng)。公司憑借其優(yōu)質(zhì)的產(chǎn)品和服務(wù),成功吸引了日本、韓國(guó)、加拿大、美國(guó)等多個(gè)國(guó)家和地區(qū)的客戶。通過(guò)與國(guó)際知名企業(yè)的合作與交流,福聲科技不僅提升了自身的技術(shù)水平和品牌影響力,還進(jìn)一步拓寬了國(guó)際市場(chǎng)渠道,為公司的全球化戰(zhàn)略奠定了堅(jiān)實(shí)基礎(chǔ)。
在發(fā)展過(guò)程中,Block USA Inc.也面臨著來(lái)自競(jìng)爭(zhēng)對(duì)手和行業(yè)變化的挑戰(zhàn)。然而,公司始終保持著創(chuàng)新精神,不斷調(diào)整和優(yōu)化產(chǎn)品與服務(wù),以適應(yīng)市場(chǎng)的變化。例如,面對(duì)數(shù)據(jù)安全和隱私保護(hù)的日益嚴(yán)格要求,Block加強(qiáng)了其數(shù)據(jù)保護(hù)措施,并公開(kāi)承認(rèn)了數(shù)據(jù)泄露事件并積極采取措施進(jìn)行補(bǔ)救。同時(shí),公司還繼續(xù)拓展其業(yè)務(wù)邊界,探索新的增長(zhǎng)點(diǎn),以保持其在電子行業(yè)中的競(jìng)爭(zhēng)優(yōu)勢(shì)。
這些故事只是Block USA Inc.在電子行業(yè)發(fā)展歷程中的一部分,它們展示了公司如何通過(guò)不斷創(chuàng)新和拓展業(yè)務(wù)領(lǐng)域,逐步成為一家具有影響力的綜合性電子企業(yè)。然而,隨著市場(chǎng)的不斷變化和競(jìng)爭(zhēng)的加劇,Block仍需保持警惕并持續(xù)努力,以應(yīng)對(duì)未來(lái)的挑戰(zhàn)和機(jī)遇。
ECS公司始終堅(jiān)持以客戶為中心的服務(wù)理念。他們深入了解客戶的需求和痛點(diǎn),為客戶量身定制解決方案。例如,針對(duì)某些行業(yè)對(duì)數(shù)據(jù)安全性的特殊要求,ECS公司推出了專用的安全加密方案;針對(duì)一些大型企業(yè)對(duì)于大規(guī)模計(jì)算資源的需求,ECS公司提供了定制化的高性能計(jì)算服務(wù)。這些定制化服務(wù)不僅滿足了客戶的特殊需求,還增強(qiáng)了客戶對(duì)ECS公司的信任和忠誠(chéng)度。
為了進(jìn)一步擴(kuò)大市場(chǎng)份額,ECS公司開(kāi)始積極拓展全球市場(chǎng)。他們與全球各地的云服務(wù)提供商建立了緊密的合作關(guān)系,共同為客戶提供更加全面、便捷的服務(wù)。同時(shí),ECS公司還積極參加國(guó)際云計(jì)算展會(huì)和論壇,與國(guó)際同行交流經(jīng)驗(yàn)和技術(shù),不斷提升自身的競(jìng)爭(zhēng)力。通過(guò)這些努力,ECS公司的品牌知名度和市場(chǎng)份額得到了顯著提升。
A-BRIGHT公司的起點(diǎn)并不起眼,只是電子行業(yè)里眾多小公司之一。然而,在XXXX年,公司成功研發(fā)出了一種新型的高效率LED芯片,這一技術(shù)突破使得A-BRIGHT的產(chǎn)品在能效和壽命上大幅超越競(jìng)爭(zhēng)對(duì)手。這一創(chuàng)新迅速吸引了市場(chǎng)的關(guān)注,A-BRIGHT的訂單量激增,公司開(kāi)始逐漸嶄露頭角。
我從國(guó)外網(wǎng)站下載的XDS510電路圖,但不知是什么軟件畫(huà)的。請(qǐng)各位路過(guò)的神仙試一試,看是否是OrCAD畫(huà)的。我打不開(kāi)。… 查看全部問(wèn)答∨ |
|
弱弱問(wèn)一個(gè),AVR中的熔絲是不是只可編程一次? 小弟初學(xué)AVR,改了一下有關(guān)時(shí)鐘源的熔絲位,發(fā)現(xiàn)寫(xiě)進(jìn)去的程序都不正常了,延時(shí)程序無(wú)效,但I(xiàn)O操作似乎正常,是不是改錯(cuò)了熔絲的緣故?… 查看全部問(wèn)答∨ |
一個(gè)十分奇怪的問(wèn)題(關(guān)于Flash的) 我通過(guò)串口把數(shù)據(jù)傳輸給Flash ,傳輸完成后,斷電過(guò)1-2分鐘開(kāi)機(jī),通過(guò)串口能打印出剛才下載到Flash中的數(shù)據(jù),但是在斷電后過(guò)大約30分鐘以上,具體時(shí)間不是很清楚了,(有時(shí)5分鐘,有時(shí)1,2小時(shí)),再上電,通過(guò)串口發(fā)現(xiàn)寫(xiě)入的數(shù)據(jù)沒(méi)有了! ...… 查看全部問(wèn)答∨ |
誰(shuí)有usb驅(qū)動(dòng)程序的源代碼? 個(gè)位大俠: 我是剛自學(xué)usb驅(qū)動(dòng)程序,正打算做usb驅(qū)動(dòng)程序用于畢業(yè)設(shè)計(jì). 求一個(gè)usb驅(qū)動(dòng)程序源碼做參考! 有意者請(qǐng)發(fā)一份給我!不慎感激!!! 我的e_mail:zhouq200418055@sina.com.cn… 查看全部問(wèn)答∨ |
EVC中設(shè)斷點(diǎn)怎么有錯(cuò)了 , 我用EVC做個(gè)工程,全速運(yùn)行時(shí)就可以了,但不能設(shè)斷點(diǎn)了,one or more breakpoints could not be moved and have been disabled。 各位大蝦幫幫忙了 小女子先謝謝了哈 … 查看全部問(wèn)答∨ |
C8051FO6數(shù)據(jù)采集的問(wèn)題程序 我用c8051f064做個(gè)簡(jiǎn)單的數(shù)據(jù)采集程序,,采用DMA方式將AD轉(zhuǎn)換的數(shù)據(jù)存于片內(nèi)XRAM中,程序如下,其中部分引用例程,但程序好象還是有問(wèn)題,怎么調(diào)試都沒(méi)有數(shù)據(jù)采進(jìn)來(lái).請(qǐng)高手幫忙指點(diǎn)下,謝謝! #include &n ...… 查看全部問(wèn)答∨ |
C2000 Launchpad是否可以仿真其他帶JTAG的TI MSP430 C2000 Launchpad是否可以仿真其他帶JTAG的TI MSP430?? 因?yàn)槎际荍TAG的嘛,不知道行不行.… 查看全部問(wèn)答∨ |
閑置了一塊FPGA開(kāi)發(fā)板,altera cycloneIV,要轉(zhuǎn) 本帖最后由 googe 于 2015-4-27 17:11 編輯 如題,興趣轉(zhuǎn)移了,所以準(zhǔn)備把手里的FPGA開(kāi)發(fā)板轉(zhuǎn)了,已掛淘寶: http://2.taobao.com/item.htm?spm=2007.1000622.0.0.sIe5iZ&id=44996295445 論壇里的朋友如果有想要的,聯(lián)系QQ:18044163,可小刀。… 查看全部問(wèn)答∨ |
設(shè)計(jì)資源 培訓(xùn) 開(kāi)發(fā)板 精華推薦
- Microchip 升級(jí)數(shù)字信號(hào)控制器(DSC)產(chǎn)品線 推出PWM 分辨率和 ADC 速度業(yè)界領(lǐng)先的新器件
- 意法半導(dǎo)體STM32MP23x:突破成本限制的工業(yè)AI應(yīng)用核心
- 意法半導(dǎo)體推出用于匹配遠(yuǎn)距離無(wú)線微控制器STM32WL33的集成的匹配濾波芯片
- ESP32開(kāi)發(fā)板連接TFT顯示屏ST7789跳坑記
- 如何讓ESP32支持analogWrite函數(shù)
- LGVL配合FreeType為可變字體設(shè)置字重-ESP32篇
- 使用樹(shù)莓派進(jìn)行 ESP32 Jtag 調(diào)試
- ESP32怎么在SPIFFS里面存儲(chǔ)html,css,js文件,以及網(wǎng)頁(yè)和arduino的通訊
- ESP32 freeRTOS使用測(cè)試
- 上汽大眾:汽車(chē)網(wǎng)絡(luò)安全漏洞防護(hù)
- 恩智浦推出全新電池控制IC系列 助力新能源解決方案發(fā)展
- 全球首條GWh級(jí)新型固態(tài)電池生產(chǎn)線樣件下線
- 總投資455億元!三大動(dòng)力電池項(xiàng)目齊刷進(jìn)度條
- 現(xiàn)代汽車(chē)韓國(guó)建氫燃料電池廠,2028年投產(chǎn)
- 6月融資一覽:智能汽車(chē)芯片、第三代半導(dǎo)體、機(jī)器人成資本焦點(diǎn)
- 艙駕一體“點(diǎn)燃”新戰(zhàn)事
- 汽車(chē)智能化2.0引爆「萬(wàn)億蛋糕」,誰(shuí)在改寫(xiě)游戲規(guī)則?
- 2025研華智能系統(tǒng)產(chǎn)業(yè)伙伴峰會(huì)成功舉辦
- 意法半導(dǎo)體公布2025年第二季度財(cái)報(bào)和電話會(huì)議時(shí)間安排
- ADI基于ADPD188BI的煙霧探測(cè)器集成解決方案 有獎(jiǎng)直播 5月13日上午10:00-11:30 為您揭曉!
- ADI有獎(jiǎng)下載活動(dòng)之6 ADI基于IEC61850的智能電子設(shè)備(IED)系統(tǒng)解決方案
- EEWORLD E金礦榮耀登場(chǎng)!為夢(mèng)想加分!
- 2024上海國(guó)際嵌入式展報(bào)名通道開(kāi)啟
- EE大學(xué)堂新年游戲之\\
- 報(bào)名觀看TI嵌入式主題月直播,場(chǎng)場(chǎng)精彩,好運(yùn)連連
- 我愛(ài) TI Webench 之學(xué)課程傳設(shè)計(jì),贏禮100% !
- 你敢評(píng),我敢送! 點(diǎn)評(píng)《越控越有趣-TI C2000 LaunchPad煉成記》盡享精彩好禮!
- 聊聊你眼中的仙童,超值極品拿到手!
- iQOO Z1x:120Hz競(jìng)速屏/5000mAh電池/33W閃充
- 雷軍預(yù)告Redmi下一代旗艦:K30 Pro的遺憾將補(bǔ)足
- 三星申請(qǐng)新商標(biāo) 或?qū)⒔oNote 20保護(hù)套添加抗菌涂層
- 5G SA進(jìn)行時(shí),開(kāi)啟行業(yè)新時(shí)代
- 遠(yuǎn)程患者監(jiān)護(hù)成趨勢(shì),系統(tǒng)設(shè)計(jì)面臨五大趨勢(shì)
- 天寶陳朝暉:AI的準(zhǔn)確譯法不是人工智能 而是機(jī)器智能
- Xilinx與采埃孚宣布就AI創(chuàng)新與無(wú)人駕駛開(kāi)展戰(zhàn)略合作
- 助力汽車(chē)?yán)走_(dá)傳感發(fā)展,羅杰斯推出新一代層壓板材料
- 2D激光雷達(dá)如何實(shí)現(xiàn)3D應(yīng)用?
- Molex 推出電動(dòng)驅(qū)動(dòng)輥用 HarshIO 工業(yè)以太網(wǎng) I/O 模塊
- 【轉(zhuǎn)帖】干法刻蝕的優(yōu)點(diǎn)和過(guò)程
- 問(wèn)個(gè)mfc應(yīng)用的問(wèn)題??
- 二線制變送器電路設(shè)計(jì)與應(yīng)用
- 問(wèn):在黑暗封閉的坑道里監(jiān)測(cè)有沒(méi)有老鼠活動(dòng)選什么傳感器?
- 給大家推薦一篇關(guān)于8051bootloader的文章
- 關(guān)于evc調(diào)試的問(wèn)題
- 用iMPACT燒寫(xiě)程序到W25X40L問(wèn)題
- 在51上用C寫(xiě)串口程序碰到的一個(gè)問(wèn)題
- EMC,EMI輔助材料
- 曬WEBENCH設(shè)計(jì)的過(guò)程+交流電源LED架構(gòu)過(guò)程