راه اندازی SPI میکروکنترلر ARM

هدف مثال زیر این است که شما با پرتکل سریال (SPI) وطریقه ­ی راه ­اندازی آن در میکروکنترلرهای ARM   آشنا شوید.

این برنامه نحوه ­ی راه ­اندازی پروتکل سریال SPI  و کار با دیتا فلش را نشان می­دهد .


  عمکرد کلی برنامه

در بخش اول طبق تصویر زیر هدرهای مورد نیاز برنامه آورده می­شود. در بخش دوم تابع موجود هستند که برای نوشتن و خواندن بر روی دیتا فلش مورد استفاده قرار می­گیرند. بخش سوم شامل تابع main می­شود که برای در ابتدای آن توابع مربوط به پیکربندی قسمت­های مورد نیاز میکروکنترلر فراخوانی می­شوند.و در انتهای تابع main توابع خواندن و نوشتن که در بخش دوم آورده شده بودند، فراخوانی می­شوند.

#include "stm32f10x.h"
#include "stm32f10x_gpio.h"
#include "spi_flash.h"
#include "string.h"
 
void writeData(unsigned int PageAdr,unsigned char *buffer)
{
  Buffer_Write_Str(1,PageAdr,528,buffer);
  Buffer_To_Page(1,PageAdr);
}
void readData(unsigned int PageAdr,unsigned char *buffer)
{
  Page_To_Buffer(PageAdr,1);
  Buffer_Read_Str(1,PageAdr,528,buffer);
}
 
 
int main(void)
{
    uint8_t buff[528];
    
    SystemInit();
    
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);
    
  SPI_FLASH_Init();
 
  Read_DF_status();
    
  memset(buff,0x40,sizeof(buff));
 
  writeData(10,buff);
 
  //Buffer_Write_Enable(0,1);
 
  memset(buff,0x00,sizeof(buff));
 
  readData(10,buff);
 
  Page_Erase(10);
 
  readData(10,buff);   
while (1); 
return 0;
}

  سخت افزار

برای تست این مثال کد برنامه را دیباگ نمائید؛ نحوه ­ی عملکرد در قالب یک فیلم آموزش در پوشه media در دسترس است.


آشنایی و کار با برنامه

ابتدا برنامه را با نرم افزار Keil باز کنید.

 

 

 

 

 

 

 

 

تغذیه 5 ولت را به برد آموزشی متصل کنید و بعد از اینکه پروگرامر ST-LINK را به برد متصل نمودید؛ برنامه را با استفاده از دکمه ­ی Download    پروگرم نمائید.

 

 

 

دانلود مثال ها و pdf این مقاله



 

Tags: , , , ,