在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2576|回复: 9

[原创] 轻松学习ARM Cortex-M0 DesignStart Eval 第一节,搭建最小系统

[复制链接]
发表于 2023-3-7 18:15:05 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
本帖最后由 冷月飞虹 于 2023-3-16 18:06 编辑

本节资源下载:

   00_fpga_demo.zip (210.84 KB, 下载次数: 128 )

在这节,我们将搭建一个最小系统。如下图所示
(理解系统架构后,你需要根据参考,移植代码到自己的FPGA平台上)

                               
登录/注册后可看大图

1、cortexm0ds_logic.v和CORTEXM0INTEGRATION.v是ARM提供的M0代码
2、ahb_to_sram.v, 用于连接SRAM和外设(led_ctrl)
3、uart_dbg.v,用于程序下载和调试
4、m0_sram.v里面实例化了SRAM,需要例化4快,  8位的SRAM

m0_top.v接口说明:
1、clk         :系统时钟
2、por_n     : 复位信号(低电平复位)
3、clk_dbg  : uart_dbg.v时钟
4、uart_txd : UART通信
5、uart_rxd : UART通信
5、led[31:0] : 连接到LED灯或者GPIO上

FPGA移植参考(时钟配置和FPGA顶层引脚配置):


                               
登录/注册后可看大图

fpga_top.v使用FPGA开发软件,使用PLL产生时钟
1、u_clk_pll.c1 ----> clk_dbg  :  uart_dbg.v模块时钟,接入20M就可以
2、u_clk_pll.c0 ----> clk          :  系统时钟,也就是是MCU运行时钟,根据实际情况选择,最低 5MHZ
3、UART_TXD\UART_RXD      :  用于串口下载程序,双向口,需要使能FPGA引脚内部上拉功能
4、LEDR[9:0] \gpio[1:0]         :  根据实际情况连接到LED灯或者GPIO上,用于观测FPGA运行情况

FPGA移植参考(RAM生成):

                               
登录/注册后可看大图

fpga_ram.v里面实例化


module fpga_ram(
    input                SRAM_CLK    ,
    input                SRAMCS      ,
    input                SRAMWEN     ,
    input  [29:0]    SRAMADDR    ,
    input  [ 7:0]     SRAMWDATA   ,
    output [ 7:0]   SRAMRDATA
);

    fpga_ram_64k    u_fpga_ram_64k
    (
    .clock              ( SRAM_CLK      ),
    .clken              ( SRAMCS         ),
    .wren              ( SRAMWEN       ),
    .address         ( SRAMADDR      ),
    .data              ( SRAMWDATA    ),
    .q                   ( SRAMRDATA     )
    );
endmodule

配置好后,开始进行FPGA综合,下图,是我的FPGA综合结果, RAM用了16384bits 也就是2Kb(个人根据实际情况配置)

                               
登录/注册后可看大图


完成FPGA综合后,下载到FPGA上运行,将串口小板连接好FPGA的UART_TXD\UART_RXD引脚
打开串口助手,波特率设置为256000,ODD校验, 发送几个0xD5,  如果能接收到数据,则UART通信初步正常


                               
登录/注册后可看大图


下一节,我们将会使用keil开发软件,下载程序和调试程序


发表于 2023-9-20 21:13:19 | 显示全部楼层
讲的非常好,step by step
发表于 2023-10-16 19:46:46 | 显示全部楼层
感谢大佬
发表于 2023-10-27 14:38:04 | 显示全部楼层
:):):):):):):):):):):):):)
发表于 2023-10-30 16:29:46 | 显示全部楼层
大佬,想请教一下,uart_dbg.v这个单元是怎么设计的,脚本是什么
发表于 2023-10-31 14:30:05 | 显示全部楼层
测试了下uart用128000的波特率,与博主的串口响应一样,为B7。
发表于 2024-3-4 18:41:49 | 显示全部楼层
我下载到板子后,发送D5,返回的值是AD B7 E8 ,有点奇怪
发表于 2024-3-7 18:07:44 | 显示全部楼层
下载到板子后串口接收不到数据,请问可能是哪里有问题
发表于 2024-4-23 15:40:40 | 显示全部楼层
赞!!!!!!!!!!!!!
发表于 2024-8-8 14:21:06 | 显示全部楼层
多谢共享
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

×

小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-15 21:41 , Processed in 0.033287 second(s), 8 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表