參考野火給的程序移植而成,需要的可以下載來使用,代碼已經(jīng)調(diào)試好,打開串口助手查看結(jié)果
單片機源程序如下:
- #include "stm32f4xx.h"
- #include "./usart/bsp_debug_usart.h"
- #include "./led/bsp_led.h"
- #include "./internalFlash/bsp_internalFlash.h"
- void delay(unsigned int x)
- {
- while(x--);
- }
- /**
- * @brief 主函數(shù)
- * @param 無
- * @retval 無
- */
- int main(void)
- {
- unsigned int m;
- uint32_t aa[2] = {0x12345678,0x11111111};
- uint32_t bb[2] = {0};
- uint16_t aa1[5] = {400,500,600,700,800};
- uint16_t bb1[5] = {0};
- uint8_t aa2[10] = {0,1,2,3,4,5,6,7,8,9};
- uint8_t bb2[10] = {0};
-
- /*初始化USART,配置模式為 115200 8-N-1*/
- Debug_USART_Config();
- LED_GPIO_Config();
-
- LED_BLUE;
- /*調(diào)用printf函數(shù),因為重定向了fputc,printf的內(nèi)容會輸出到串口*/
- printf("正在進行讀寫內(nèi)部FLASH實驗,請耐心等待 \r\n");
- printf("開始寫入32位數(shù)據(jù)\r\n:");
- if(Write_Wordbyte(ADDR_FLASH_SECTOR_8,ADDR_FLASH_SECTOR_9,aa,2) == 1)
- {
- LED_GREEN;
- }
- for(m = 0;m < 2;m++)
- {
- printf("寫入的32位數(shù)據(jù)為 = %X\r\n",aa[m]);
- delay(0xfffff);
- }
- if(Read_Wordbyte(ADDR_FLASH_SECTOR_8,2,bb) == 1)
- {
- LED_RED;
- }
- for(m = 0;m < 2;m++)
- {
- printf("讀出的32位數(shù)據(jù)為 = %X\r\n",bb[m]);
- delay(0xfffff);
- }
- ////////////////////////////////////////
- printf("開始寫入16位數(shù)據(jù)r\n");
- if(Write_HalfWordbyte(ADDR_FLASH_SECTOR_8,ADDR_FLASH_SECTOR_9,aa1,5) == 1)
- {
- LED_GREEN;
- }
- for(m = 0;m < 5;m++)
- {
- printf("寫入的16位數(shù)據(jù)為 = %d\r\n",aa1[m]);
- delay(0xfffff);
- }
- if(Read_HalfWordbyte(ADDR_FLASH_SECTOR_8,5,bb1) == 1)
- {
- LED_RED;
- }
- for(m = 0;m < 5;m++)
- {
- printf("讀出的16位數(shù)據(jù)為 = %d\r\n",bb1[m]);
- delay(0xfffff);
- }
- ///////////////////////////////////
- printf("開始寫入8位數(shù)據(jù)\r\n");
- if(Write_Byte(ADDR_FLASH_SECTOR_8,ADDR_FLASH_SECTOR_9,aa2,10) == 1)
- {
- LED_GREEN;
- }
- for(m = 0;m < 10;m++)
- {
- printf("寫入的8位數(shù)據(jù)為 = %d\r\n",aa2[m]);
- delay(0xfffff);
- }
- if(Read_Byte(ADDR_FLASH_SECTOR_8,10,bb2) == 1)
- {
- LED_RED;
- }
- for(m = 0;m < 10;m++)
- {
- printf("讀出的8位數(shù)據(jù)為 = %d\r\n",bb2[m]);
- delay(0xfffff);
- }
-
- while(1)
- { }
- }
- /*********************************************END OF FILE**********************/
復(fù)制代碼
所有程序51hei提供下載:
讀寫內(nèi)部FLASH.7z
(359.98 KB, 下載次數(shù): 155)
2019-10-5 15:58 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|