最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

STM32入門教程-2023持續(xù)更新中

2023-03-19 13:59 作者:玄炫植  | 我要投稿

基于標(biāo)準(zhǔn)庫








還得是施密特(圖中肖特基為施密特,圖片翻譯錯(cuò)誤)












90度相位差判斷旋轉(zhuǎn)方向


配置中斷的順序






PWM






GPIO配置為復(fù)用推挽輸出(AF_PP)


千萬別用這個(gè),不然調(diào)試端口全沒,只能串口燒錄


這里解除jtag的復(fù)用

驅(qū)動(dòng)究竟干了啥




關(guān)于測周法的解釋



從模式可以自動(dòng)清零CNT

主從觸發(fā)的高級(jí)應(yīng)用后面再學(xué)



利用補(bǔ)碼的定義在CNT自減時(shí)把結(jié)果從uint16_t變成int16_t 可以讀出負(fù)數(shù)

抗噪聲



AD值最大為2^12 - 1也就是4095 ->3.3V

DA原理圖


逐次逼近ADC,采用二分法去計(jì)算數(shù)字量




ADC時(shí)鐘分頻只能選擇6往后的,因?yàn)樽畲笾С?4MHz

看門狗





用通道序號(hào)作為傳入值實(shí)現(xiàn)人工掃描[doge]




觸發(fā)源選擇就是開啟該觸發(fā)源的DMA

套娃(結(jié)構(gòu)體訪問寄存器)

關(guān)于(uint32_t)ADC1->DR這個(gè)寄存器


開始學(xué)USART啦



挖個(gè)坑CRC校驗(yàn)是什么?



usart1掛在apb2->72MHz




16倍波特率=72MHz / 寄存器(DIV)

使用keil精簡庫中的printf


編碼選utf-8,串口接收同樣,防止亂碼,這里加如下

--no-multibyte-chars

或者采用GB2312編碼,串口使用GBK模式接收


串口觸發(fā)中斷





挖坑:多主多從


主機(jī)發(fā)送

PS:高位先行

主機(jī)接收

應(yīng)答機(jī)制

地址選擇


看手測兒!

軟件iic整體架構(gòu)

iic時(shí)序(6種)->設(shè)置mpu6050.h->main函數(shù)里實(shí)現(xiàn)


bit 6 置0就是關(guān)閉休眠模式

硬件iic


硬件i2C

10位地址標(biāo)志位11110

EV5事件:(大標(biāo)志位)DR->CC->I2C

軟硬件iic的區(qū)別

軟件占空比不規(guī)則,SCL下降沿來時(shí)不能立刻讀寫數(shù)據(jù),有延時(shí)

小尖峰因?yàn)閺臋C(jī)釋放數(shù)據(jù)線的瞬間主機(jī)拉低SDA,這就是硬件的快速響應(yīng)


SPI協(xié)議


片選置0

woc,指令讀??!

W25Q64BV閃存芯片

flash寫入數(shù)據(jù)先擦除,全部置1

寫入后芯片進(jìn)入忙狀態(tài),等緩存區(qū)搬運(yùn),可以讀busy寄存器查看狀態(tài)


軟件SPI設(shè)計(jì)思路:

自己寫一個(gè)MySPI作為底層操作引腳

然后寫W25Q64的硬件驅(qū)動(dòng)代碼調(diào)用MySPI的相關(guān)操作


指令集

跨頁函數(shù)(寫著玩玩)

uint32_t W25Q64_PageProgramLeap(uint32_t Address,uint8_t *DateArray,uint16_t Count)

{

uint8_t i;

uint8_t PageNum;

uint8_t externFrontNum;

uint8_t externBackNum;

externFrontNum = 0xFF - (Address & 0xFF) + 1;

PageNum = (Count - externFrontNum) / 0x100 ;

externBackNum = (Count - externFrontNum) % 0x100;

if(PageNum)

{

W25Q64_PageProgram(Address,DateArray,externFrontNum);

for(i=1;i<=PageNum;i++)

{

W25Q64_PageProgram((Address + (i << 8)) & 0xFFFF00,DateArray + externFrontNum +(i-1)*0x100,0x100);

}

W25Q64_PageProgram((Address + ((PageNum + 1) << 8)) & 0xFFFF00,DateArray + externFrontNum +PageNum * 0x100,externBackNum);

}else

{

W25Q64_PageProgram(Address,DateArray,externFrontNum);

W25Q64_PageProgram((Address + ((PageNum + 1) << 8)) & 0xFFFF00,DateArray + externFrontNum ,externBackNum);

}

//return PageNum;

//return ((PageNum + 1) << 8);// & 0xFFFF00

}

STM32入門教程-2023持續(xù)更新中的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
太仆寺旗| 定西市| 苗栗县| 泸州市| 聂拉木县| 郴州市| 大英县| 纳雍县| 西宁市| 阿勒泰市| 定西市| 固始县| 明光市| 义马市| 山东省| 旌德县| 攀枝花市| 航空| 临澧县| 望江县| 石楼县| 米易县| 盘锦市| 邻水| 本溪市| 镇巴县| 安福县| 荔浦县| 乌兰浩特市| 淳化县| 调兵山市| 那曲县| 天镇县| 泗阳县| 会泽县| 安平县| 嵊泗县| 涡阳县| 通榆县| 会东县| 固原市|