版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第第頁STM32單片機學(xué)習(xí)筆記(4):24C02(模擬IIC)
項目簡介利用CubMX生成基于32(單片機)的HAl庫工程,然后編寫程序在(proteus)上(仿真)驗證。本項目最適合沒有開發(fā)板的同學(xué)學(xué)習(xí),零成本利用仿真軟件率先入門(STM32)單片機。這是第四部分針對EEP(ROM)24C02的一個實例,I(IC)(通信)是一種比較典型的串行通信方式,在很多情況下都會有所使用,了解并熟悉IIC通信就顯得十分重要。本項目之所以使用(模擬)IIC,而沒有使用STM32單片機內(nèi)置的(硬件)IIC,主要由于Half庫里IIC的坑太多了,自己一開始也是想通過HAL庫來開發(fā),但是始終不成功,也有可能仿真軟件也有些坑,如果有能夠做出來的大佬,也歡迎評論區(qū)或私聊我交流,不過在實物32(單片機開發(fā))板上網(wǎng)上好像驗證過可用,但是手上暫時缺開發(fā)板,針對硬件IIC這一塊的內(nèi)容,以后有時間會完善。
硬件模塊STM32F103R4
24C02
串口模塊
軟件工具CubMX
Proteus
(KEIL)
電路連接圖
工作流程首先創(chuàng)建一個CubMX工程,如果是配置硬件IIC很容易,只要簡單選擇一下就可以了
默認(rèn)是標(biāo)準(zhǔn)模式,速度是100kHz,可以選擇高速模式400kHz,其余可以保持默認(rèn),當(dāng)然這是硬件IIC的配置方法,咱們用的是模擬IIC,相應(yīng)的引腳設(shè)置在后面生成的Keil工程里編寫相應(yīng)程序即可。
其余也是保持默認(rèn)即可
之后,在生成的KEIL工程中編寫相應(yīng)的程序,這部分在后面會列出。
然后就是驗證了。將提前設(shè)置的一組數(shù)據(jù)寫入進(jìn)24C02中,然后從24C02中讀取出來,并用串口打印,提前設(shè)置的數(shù)據(jù)是{1,2,3,4,5,6,7,0},串口打印出的數(shù)據(jù)如下:
(程序代碼)main.c
uint8_tWri(te)Buffer[2*Buffe(rS)ize]={1,2,3,4,5,6,7,0};//需要寫的數(shù)據(jù)在WriteBuffer當(dāng)中uint8_tRe(ad)Buffer[2*BufferSize]={0};//讀出來的數(shù)據(jù)放進(jìn)ReadBuffer當(dāng)中uint8_ti;uint8_tdata_addr=0x01;/*USERCODEEND0*///重定向printf()到串口發(fā)送和接收,方便應(yīng)用intfputc(intch,FILE*f){uint8_ttemp[1]={ch};HAL_(UART)_Transmit(returnch;}//重定向s(can)f()函數(shù)和getchar()函數(shù),方便應(yīng)用intfgetc(FILE*f){uint8_tch=0;HAL_UART_Receive(returnch;}/***@briefTheapplicationentrypoint.*@retvalint*/intmain(void){/*(MCU)Configura(ti)on*//*Resetofallperipherals,InitializestheFlashinterfaceandtheSystick.*/HAL_Init();/*USERCODEBEGINInit*//*USERCODEENDInit*//*Configurethesystemclock*/SystemClock_Config();/*USERCODEBEGINSysInit*//*USERCODEENDSysInit*//*Initializeallconfiguredperipherals*/MX_GPIO_Init();MX_USART1_UART_Init();/*USERCODEBEGIN2*//*USERCODEEND2*//*Infiniteloop*//*USERCODEBEGINWHILE*/AT_24c02_int();f(or)(i=0;i24C02.c
voidAT_24c02_int(void){IIC_Init();}//data_addr字節(jié)地址//data數(shù)據(jù)voidAT_24c02_write_data(uint8_tdata_addr,uint8_tdata){IIC_Start();IIC_Send_Byte(0xa0);IIC_W(ai)t_(Ac)k();IIC_Send_Byte(data_addr);IIC_Wait_Ack();IIC_Send_Byte(data);IIC_Wait_Ack();IIC_Stop();}uint8_tAT_24c02_read_data(uint8_tdata_addr){uint8_tdata=0;IIC_Start();IIC_Send_Byte(0xa0);IIC_Wait_Ack();IIC_Send_Byte(data_addr);IIC_Wait_Ack();IIC_Start();IIC_Send_Byte(0xa1);IIC_Wait_Ack();
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度山東省輕工業(yè)設(shè)計院有限公司招聘3人筆試參考題庫附帶答案詳解(3卷)
- 2025年山東中煙工業(yè)有限責(zé)任公司度高校畢業(yè)生招聘筆試參考題庫附帶答案詳解(3卷)
- 深圳市2024年2月廣東深圳市大鵬新區(qū)科技創(chuàng)新和經(jīng)濟(jì)服務(wù)局招聘編外人員1人筆試歷年參考題庫典型考點附帶答案詳解(3卷合一)
- 杭州市2024年浙江省生態(tài)環(huán)境監(jiān)測中心招聘8人筆試歷年參考題庫典型考點附帶答案詳解(3卷合一)
- 2026招聘烤煙調(diào)制工試題及答案
- 南京市2024江蘇南京航空航天大學(xué)信息化處工作人員招聘56人筆試歷年參考題庫典型考點附帶答案詳解(3卷合一)
- 三門縣2024年浙江臺州三門縣住房和城鄉(xiāng)建設(shè)局下屬事業(yè)單位招聘筆試歷年參考題庫典型考點附帶答案詳解(3卷合一)
- 2026招聘電工試題及答案
- 2026燒烤料理師招聘面試題及答案
- 2025-2026 學(xué)年高三 英語 單元測試 試卷及答案
- 酒類進(jìn)貨合同范本
- 2026年教師資格之中學(xué)綜合素質(zhì)考試題庫500道及答案【真題匯編】
- TCEC5023-2020電力建設(shè)工程起重施工技術(shù)規(guī)范報批稿1
- 2025秋國開《人力資源管理理論與實務(wù)》形考任務(wù)1234參考答案
- 2026年5G網(wǎng)絡(luò)升級培訓(xùn)課件
- 2026云南昆明鐵道職業(yè)技術(shù)學(xué)院校園招聘4人考試筆試參考題庫及答案解析
- 2025安徽宣城寧國市面向社會招聘社區(qū)工作者25人(公共基礎(chǔ)知識)綜合能力測試題附答案解析
- 模板工程技術(shù)交底
- 2025年區(qū)域經(jīng)濟(jì)一體化發(fā)展模式可行性研究報告及總結(jié)分析
- 醫(yī)療器械全生命周期有效性管理策略
- 排水管道養(yǎng)護(hù)試題及答案
評論
0/150
提交評論