6. PS定时器中断

工程创建

  • 复制之前的ps_hello工程
    Xilinx_ZYNQ7Z020——6. PS定时器中断
  • 在弹出的对话框中填写新的工程名“ ps_timer ”,选择创建工程子目录 PS 里的定时器,因为不需要管脚输出,就不用配置管脚
    Xilinx_ZYNQ7Z020——6. PS定时器中断

SDK

  • 运行 SDK ,可以看到,和前面的例程不同,这里又多出了一个硬件平台信息文件夹
    Xilinx_ZYNQ7Z020——6. PS定时器中断
  • 使用别人的 SDK 工程时也会有类似的现象出现,这里我们都给删除
    Xilinx_ZYNQ7Z020——6. PS定时器中断
  • 文件也删除
    Xilinx_ZYNQ7Z020——6. PS定时器中断
  • 在 Vivado 里重新运行 SDK ,可以看到又有一个新的硬件平台信息
    Xilinx_ZYNQ7Z020——6. PS定时器中断
  • 重新建立一个工程,名字就叫“ ps_timer_test 模板还是 Hello World
    Xilinx_ZYNQ7Z020——6. PS定时器中断
  • 现在又到了写代码的时候了,又有了无从下手的感觉,不知道定时器怎么用,也不知道中断怎么用,还是用老方法,来看看例子
    Xilinx_ZYNQ7Z020——6. PS定时器中断
    Xilinx_ZYNQ7Z020——6. PS定时器中断
  • 本实验设计一个 1 秒定时器中断一次,然后打印出信息, 30 秒后结束,首先修改计数器最大值,修改为 CPU 频率的一半,也就是计数器的时钟频率值,这样就会 1 秒中断一次
    Xilinx_ZYNQ7Z020——6. PS定时器中断
  • 修改计数次数 3 改为 30
    Xilinx_ZYNQ7Z020——6. PS定时器中断
  • 添加打印信息
    Xilinx_ZYNQ7Z020——6. PS定时器中断

下载调试

Xilinx_ZYNQ7Z020——6. PS定时器中断

  • 要注意导入中断的GPIO是哪个,在此工程中是GPIO1,因此导入GPIO1的中断,并且修改宏定义

相关文章: