Nombre del experimento: experimento de lectura y escritura E2PROM
Descripción del experimento
El propósito del experimento : dominar el uso de E2PROM dentro del chip.
(Nota: debido a que está escrito en la forma de 'palabra', la dirección escrita debe ser un múltiplo entero de '4', de lo contrario ingresará una falla dura)
Fenómeno experimental : descargue el programa, abra el asistente del puerto serie en el lado de la PC, seleccione el puerto del cable USB, la velocidad en baudios es 115200, sin paridad, el bit de parada es 1 bit y se recibe el modo HEX. Después de cada botón RESET, el asistente del puerto serie recibirá el número de restablecimientos del dispositivo.
Configuración STM32CubeMX
Asignación de
pines PA2 pin: USART2_TX
PA3 pin: USART2_RX
PA2, configuración de 3 pines
Modo GPIO: multiplexación push-pull
GPIO resistencia pull-up / pull-down resistor: sin resistencia pull-up / resistencia pull-down
Velocidad de salida: muy rápida
Frecuencia de reloj: 4,194 MHz
Complete el nombre del proyecto, guarde la ruta, IDE es MDK-ARM V5 y otra información
Programación Keil5
Análisis de funciones
int main(void)
{
uint32_t count[3] = {0};
HAL_Init();
SystemClock_Config();
MX_GPIO_Init();
MX_USART2_UART_Init();
EEPROM_Read(4, count, 1); //在EEPROM 地址4上读取数据
count[0]++;
HAL_FLASHEx_DATAEEPROM_Unlock();
HAL_FLASHEx_DATAEEPROM_Program(FLASH_TYPEPROGRAMDATA_WORD, DATA_EEPROM_BASE + 4, count[0]); // 在EEPROM 地址4上写入count的值。
HAL_UART_Transmit(&huart2,(uint8_t *)count,1,500);
while (1)
{
}
}