编辑: 过于眷恋 | 2018-09-20 |
4 of
20 Figure 2-1 USB Serial Port in Windows Device Manager 2.2 安装Arduino IDE 1) 在Windows 10平台上, Arduino IDE可以从Windows App store里面直接安装. 在其它的Windows平 台上, 可以从Arduino官网上下载Windows installer: https://www.arduino.cc/en/Main/Software 2) 把Arduino IDE安装完毕并运行后, 请打开File / Preferences菜单, 如Figure 2-2所示: Step FPGA M10 C User Guide Page
5 of
20 Figure 2-2 Arduino IDE, Preferences Menu 3) File / Preferences菜单会开启一个如Figure 2-3所示的对话框. 请把 Additional Boards Managers URL 设置为 https://raw.githubusercontent.com/PulseRain/Arduino_M10_IDE/step_fpga/package_M10_index.json Step FPGA M10 C User Guide Page
6 of
20 Figure 2-3 Arduino IDE, Preferences Dialogue 4) 关闭上一个对话框后,请打开Tools / Boards / Boards Manager菜单, 如Figure 2-4所示. Step FPGA M10 C User Guide Page
7 of
20 Figure 2-4 Arduino IDE, Boards Manager Menu 5) Boards Manager 会启动一个如Figure 2-5所示的对话框. 在搜索条输入 step 来查找和安装所需 的软件包 Figure 2-5 Arduino IDE, Boards Support Package for StepFPGA M10 Step FPGA M10 C User Guide Page
8 of
20 2.3 编写Sketches 和所有的Arduino开发板一样, 在开始编写Sketches之前, 用户需要在Arduino IDE的Tool / Port菜单 下选择正确的COM口和开发板名称, 如Figure 2-6所示. Figure 2-6 Arduino IDE, Select COM port 开发板的选择在Tool / Board菜单下, 如Figure 2-7所示. void setup() { led_index = 1;
P3_DIRECTION = 0xFF;
// Set Port
3 direction } void loop() { P3 = led_index;
if (led_index == 0x80) { led_index = 1;
} else { led_index = led_index >
git clone -b step_fpga https://github.com/PulseRain/Mustang.git step_fpga >
>
cd step_fpga >
>
git submodule update --init Crecursive Step FPGA M10 C User Guide Page
13 of
20 3.2 编译综合(Build the FPGA Image) 用户可以用Intel Quartus Prime打开synth / Mustang_fast.qpf , 并点击 Start a new compilation , 如Figure 3-1所示. Figure 3-1 Building Mustang Project Mustang project 内含一个叫post_flow.tcl的script.这个script会自动做文件合成与转换. 转换结束后,在synth/output_files/flash_images/full_image.pof就是最后需要的FPGA Image. 如果用户需要把数据放入 UFM的话,只需把对应的.hex文件命名成ufm.hex,并放到synth/output_files/之下, post_flow.tcl 会自动 将其包含到最终的FPGA Image里面. Step FPGA M10 C User Guide Page
14 of
20 4 软硬件协作 4.1 片上闪存的配置(Onchip Flash Memory) Step FPGA M10采用Single Compressed Image设置, 在该设置下, 其片上闪存的地址如Table 4-1所示: 分区号 闪存类型 地址 大小(字节)
1 UFM 0x00000 C 0x03FFF
16384 2 UFM 0x04000 C 0x07FFF
16384 3 UFM 0x08000 C 0x167FF
59392 4 CFM 0x16800 C 0x397FF
143360 Table 4-1 闪存配置 在Table 4-1 所示的4个分区中, 分区1和2一共有32KB, 被用来存放代码. PulseRain FP51-1T MCU的缺省配 置有32KB Instruction RAM和8KB Data RAM. 分区1和2 正好和FP51-1T MCU的Instruction RAM 大小相对 应.在上电启动时, source / code_mem_power_on_loader.sv 会把用户的代码从闪存分区1和2载入到 Instruction RAM 中并执行. 闪存分区3目前被用来存放LOGO图片, 该图片可以在LCD上显示. 小脚丫自带的LCD有132 x 162的分辨率 .这里建议用户存放一个大小为128 x 154的真彩图片在这个分区. 在synth / output_files下有一个叫 pic2hex.py的Python Script, 可以把图片转换为 .hex 文件. 该目录下的 bitmap.hex 就是由同一目录下的 pulse_step.png生成的. 当用户用Arduino IDE 编译Sketch以后, 可以把Arduino生成的.hex 文件的最后一 行删除, 并与bitmap.hex合并,并将合并后的文件命名为synth/output_files/ufm.hex. 这样在生成FPGA Image时, ufm.hex 会被自动包含在最后生成的Image里面 (参见Section 3.2) 4.2 外部设备和Arduino软件库 针对Step FPGA的Base Board, PulseRain Technology 增加了如下外........