文件(iic.h):#define SDA_IN() {GPIOB->CRL&=0X0FFFFFFF;GPIOB->CRL|=0X80000000;}#define SDA_OUT() {GPIOB->CRL&=0X0FFFFFFF;GPIOB->CRL|=0X30000000;}#define IIC_SCL PBout(6)#define IIC_SDA P
/** ****************************************************************************** * @file i2c simu.c * @brief simulation function * @CPU STM32F051 * @compiler Keil uVision V4.74 *
M4作為主機(jī): int main(void) { /* USER CODE BEGIN 1 */ /* USER CODE END 1 */ HAL_Init(); /* Configure the system clock */ SystemClock_Config(); /* Initialize all co
以下是main.c中的內(nèi)容://********************************************************** // 使用STM32F103自帶的IIC,利用IIC2實(shí)現(xiàn)STM32與EEPROM芯片 // AT24C02間的數(shù)據(jù)傳輸。傳輸成功在LCD上顯示。 /
硬件平臺(tái):STM32F401編輯器 : keil 5.18操作系統(tǒng):win7一、I2C協(xié)議在傳輸數(shù)據(jù)的時(shí)候,SDA線必須在時(shí)鐘的高電平周期保持穩(wěn)定,SDA的高或低電平狀態(tài)只有在SCL 線的時(shí)鐘信號(hào)是低電平時(shí)才能改變 。起始和停
硬件平臺(tái):master:stm32f401re slave:stm32f401ce開發(fā)平臺(tái):keil 5.18操作系統(tǒng):win7如上篇所講,將401CE配置為I2C從機(jī),并設(shè)置為從發(fā)送模式。主機(jī)的I2C與從機(jī)相同,同樣配置即可。同時(shí)增加uart設(shè)置,方
宏定義:/*I2C傳輸速度,最高為400kHz*/#define I2C_SPEED 400000/* STM32 自身的 I2C 地址, 這個(gè)地址只要與 STM32 外掛的 I2C 器件地址不一樣即可 */#define I2C_OWN_ADDR 0x77/*EEPROM地址*/#defi
我的方法也特別簡(jiǎn)單。高手勿噴。 首先,你得稍微了解一下FSMC的基本原理,就是說它是怎么用的,怎么配置,為什么能這么用。這個(gè)東西可以看看STM32F4的參考手冊(cè)。這里不具體說了。(其實(shí)是因?yàn)槲乙膊皇?/p>
介于網(wǎng)上找的庫(kù)函數(shù)中文版沒有FSMC的,所有只能在這邊轉(zhuǎn)載一下FSMC的函數(shù)解析,供像我這樣的菜鳥學(xué)習(xí)typedef struct{uint32_t FSMC_Bank;//nor被分為四塊,其中這個(gè)參數(shù)是說明對(duì)那個(gè)塊編程uint32_t FSM
首先是LCD的RAM寫子函數(shù):[objc] view plain copyvoid LCD_WriteRAM(u16 RGB_Code) { GPIO_SetBits(LCD_RS_PORT,LCD_RS_PIN); GPIO_Write(LCD_PORT_PORT,RGB_Code>>8); //Delay(5); GPIO_Rese
使用外接12MHz的晶振,會(huì)造成很多的問題,如USART的波特率不正確,Systick走時(shí)不準(zhǔn)等問題,在無論是在實(shí)際調(diào)試還是在軟件模擬中都會(huì)發(fā)現(xiàn)這個(gè)情況,其實(shí),這不能怪ST官方,我們必須肯定ST官方為方便用戶
第一部分STM32SYSTICK定時(shí)器:systick 定時(shí)器按照字面意思就知道是一個(gè)簡(jiǎn)單的定時(shí)器,主要用來做延時(shí),以避免MCU的資源浪費(fèi)。它是一個(gè)24位的倒置計(jì)數(shù)器,倒置的意思就是從最大數(shù)字遞減到0,SysTick定時(shí)
第一部分:STM32按鍵輸入是我的第二個(gè)在STM32 平臺(tái)上有輸入的小實(shí)例。思路為,先查詢硬件圖看清按鍵是低電平有效還是高電平有效,根據(jù)我的開發(fā)環(huán)境得知四個(gè)按鍵有三個(gè)按鍵是低電平有效,有一個(gè)按鍵是高
今天來說一說,GPIO,對(duì)于我這個(gè)新手來說,GPIO就好比我在學(xué)習(xí)開車之前得學(xué)會(huì)如何開門一樣,由此可以看出這對(duì)于我學(xué)習(xí)STM32 的重要性,好廢話不多說,先總結(jié)一下STM32F103ZE的開發(fā)板里總共有7組IO口,每
一、基本概念(詳細(xì)內(nèi)容見st網(wǎng)站stm32應(yīng)用筆記AN2784)1. FSMC配置控制一個(gè)NOR閃存存儲(chǔ)器,需要FSMC提供下述功能:●選擇合適的存儲(chǔ)塊映射NOR閃存存儲(chǔ)器:共有4個(gè)獨(dú)立的存儲(chǔ)塊可以用于與NOR閃存、SRAM和