/************************************************************************************************

本例程基于STC32G为主控芯片的实验箱进行编写测试。

使用Keil C251编译器，Memory Model推荐设置XSmall模式，默认定义变量在edata，单时钟存取访问速度快。

edata建议保留1K给堆栈使用，空间不够时可将大数组、不常用变量加xdata关键字定义到xdata空间。

设置开漏模式需要断开PWM当DAC电路中的R2电阻。

开漏模式通过10K电阻上拉到3.3V，电平上升速度慢，需要降低SPI速率才能正常通信。

通过串口对PM25LV040/W25X40CL/W25Q80BV进行读写测试。

对FLASH做扇区擦除、写入、读出的操作，命令指定地址。

默认波特率:  115200,8,N,1. 

串口命令设置: (字母不区分大小写)
    E 0x001234              --> 扇区擦除，指定十六进制地址.
    W 0x001234 1234567890   --> 写入操作，指定十六进制地址，后面为写入内容.
    R 0x001234 10           --> 读出操作，指定十六进制地址，后面为读出字节数. 
    C                       --> 如果检测不到PM25LV040/W25X40CL/W25Q80BV, 发送C强制允许操作.

注意：为了通用，程序不识别地址是否有效，用户自己根据具体的型号来决定。

串口写操作的内容放入SPI发送DMA空间，然后启动SPI_DMA进行发送.
读操作的内容通过SPI读取后放在DMA接收空间，由串口进行打印显示.

下载时, 选择时钟 22.1184MHz (用户可自行修改频率).

************************************************************************************************/