微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > 射频无线通信设计 > Open1081使用心得分享-第一周

Open1081使用心得分享-第一周

时间:10-02 整理:3721RD 点击:

第一周:

使用Jlink实现boot和wifi_driver下载,实际操作与手册有些出入。

1. 打开J-Flash ARM

2. 选CPU型号ST STM32F205RG

3. Flash起始地址08000000,Production选项选中擦除erase,这一步第一次操作是有必要的

4. 擦除芯片Target->Erase chip

5. Production选项programserial number选08000000,擦除Erase没选

6. 打开文件boot.bin,设置起始地址为08000000

7. 下载,弹出擦除窗口选No,至此boot完成

后面开始下载wifi_driver,驱动文件名为EMW316x_WiFi_driver_5.90.230.1.bin。

操作步骤:

1. Flash起始地址080C0000

2. Production选项programserial number选08000000,擦除Erase没选

3. 打开文件EMW316x_WiFi_driver_5.90.230.1.bin,设置起始地址为080C0000

4. 下载,弹出擦除窗口选No,至此wifi_driver下载完成

程序Demo测试,Demo版本MxchipWNet-Demo-EMW316x_V1.12.7z:

1. LED

1) 编译器用的是Keil5.10,所以编译软件修改Option->User路径为C:\Keil\ARM\ARMCC\bin\fromelf.exe

2) cpu选型STM32F205RG(原Demo设置为STM32F215RG),IROM1:0x800C000 0xF8000(这步很重要)

3) 重新选中Jlink调试器,Flash当然是1M

4) 下载

5) LED开始闪烁,串口打印信息:

Welcome to WaveShareSTM32F2 series MCU Board Open207V

6) 修改main.c的GPIO_LED_Binky(500)参数可以改变闪烁亮灭时间,修改MX1081_IO.c可以改变IO端口设置,比较一下和F407设置相同。

2. UART

UART调试采用串口2,波特率115200

#define USARTx_RX_PIN GPIO_Pin_3

#define USARTx_RX_SOURCE GPIO_PinSource3

#define USARTx_RX_GPIO_PORT GPIOA

#define USARTx_RX_GPIO_CLK RCC_AHB1Periph_GPIOA

#defineUSARTx_RX_AF GPIO_AF_USART2

#define USARTx_TX_PIN GPIO_Pin_2

#define USARTx_TX_SOURCE GPIO_PinSource2

#define USARTx_TX_GPIO_PORT GPIOA

#define USARTx_TX_GPIO_CLK RCC_AHB1Periph_GPIOA

#defineUSARTx_TX_AF GPIO_AF_USART2

设置如LED步骤14,下载完后后现象,串口打印信息:

UART TESET

>SYSCLKSource is PLL!

>SYS clock = 120MHz

>HCLK clock = 120MHz

>PCLK1 clock = 30MHz

>PCLK2_clock = 60MHz

在接收中断做回显处理。

发送字符A可接收成功回显:

USART Hyperterminal Interrupts Receive aword: A

USART HyperterminalInterrupts Receive a word:

多处理一次,此为问题一;

发送ASCII码0x31

USART HyperterminalInterrupts Receive a word:

HyperterminalInterrupts Receive a word: 1

回显两次并且丢失USART,此为问题2;

两次发送间隔时间较短时,接收数据异常,此为问题三;

USART Hyperterminal Interrupts Receive a word: al Interrupts Receivea word: 1

USART Hyperterminal Interrupts Receive a word:

ART Hyperterminal Interrupts Receive a word: 1

USART Hyperterminal Interrupts Receive a word:

USART Hyperterminal Interrupts Receive a word: 1

USARTHyperterminal Interrupts Receive a word: T

HyperterminalInterrupts Receive a word: 1

3. IIC

IIC采用的内部IIC总线模式而不是模拟IIC,原来STM32F103X总出现问题用模拟方式,Open1081会不会出现问题待测试。

设置依旧如LED步骤14,

实现现象:串口打印信息:

EEPROM 24C02 Write Test

EEPROM 24C02 Write Test OK

EEPROM 24C02 Read Test

EEPROM 24C02 Read Test OK

添加一段测试看读取EEPROM-AT24C02数据

for(Addr=0; Addr<256;Addr++)

{

printf("%d", ReadBuffer[Addr]);

if(Addr % 10 == 0)

{

printf("\n");

}

}

串口打印数据为0255,所以AT24C24写入数据成功

4. SPI

打开工程,重新设置如LED步骤14。

SPI采用SPI1通道,SPI1设置最大速度为60M(PLCK2)/32=1.875M(采用32分频,原设置为128分频)

SPI_InitStruct.SPI_BaudRatePrescaler= SPI_BaudRatePrescaler_32;

下载程序,实现现象:

串口打印信息,AT45DB041D(4Mbits)前面40个数据写入和读取比较

后面例程还在写,文字表达不好,请各位多多指出不恰之处。

好东西

很不错 谢谢楼主 分享

真的是好东西,不枉我打开这个页面,感谢楼主,慷慨解囊是一种美德 啊!学习走起!

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top