每天进步一点点------SOPC TIMER (一)
寄存器图
可以通过操作以下的寄存器来实现对timer(定时器)内核的操作(仅描述32位计数器)

状态寄存器:
TO(timeout) :计数器计数到0时,该位置1,之后TO位的值会保持,直到手动清零,向状态寄存器写零,可以清除TO位
RUN:只读寄存器,读该寄存器,返回值为1表示计数其正在运行,0表示计数器停止计数,向状态寄存器写值,对该位无影响
控制寄存器:
ITO(interrupt timeout):该位为1允许timer在计数为0 时输出中断。该位为0,计数至0时,不输出中断信号.
CONT(continuous):该位控制定时器计数至0 后的动作,该位为1 ,计数器继续运行;该位为0,计数器到0后,停止计数。(无论该位为何值,在计数器到0后,均会载入计数初值)
START:启动计数器。当计数器停止时,写1,计数器从原计数器继续计数;当计数器运行时,写1,无影响。向该位写0,无影响.
STOP:停止计数器,当计数器运行时,写1,计数器停止计数;当计数器已经停止时,写1,无影响。向该位写0,无影响.(在硬件配置时,没选择"Start/Stop control bits" ,向该位写值,无影响)
注意:同时向START位和STOP位写1,结果不可预测!
计数值寄存器:
32位存储计数初值,计数器载入该值时满足的条件(二者选其一):
1,计数器计数至零;
2,对该计数值寄存器进行写操作;
计数器的计数周期为,初值加1,因为计数器需计数至0后,才载入计数初值
当硬件配置时,选择“Start/Stop control bits”,向该寄存器写值,计数其停止计数;若未选择时,计数器不会停止计数。未选择“Writeable period”,向该寄存器写值,会使计数器复位
临时值寄存器:
向给寄存器写任意值,计数器当前计数值会复制到临时值寄存器!
对该寄存器的操作,对计数器无影响
中断行为:
当ITO位为1,且计数器计数至0时,计数器发出中断信号,
每天进步一点点------SOPC TIMER (一)的更多相关文章
- 每天进步一点点------SOPC的uC/OS-II应用(一)
uC/OS-II(又名Micro C/OS)是基于嵌入式系统的完整的,可移植.可固化.可裁剪的可剥夺型实时内核,其已经广泛应用在航空飞行器.医疗设备.工业控制等可靠性和稳定性要求较高的场合.该内核的代 ...
- 每天进步一点点------SOPC PIO (一)
最近想使用Nios II里的并口PIO口进行双向操作,即需要输出的时候设置为输出方向,需要输入的时候设置为输入方向.在这期间,因为没认真仔细阅读参考文档,走了一点点的弯路.下面就简单的介绍下并行输入/ ...
- 每天进步一点点------SOPC的Avalon-MM IP核(二) AVALON总线的IP核定制
简介 NIOS II是一个建立在FPGA上的嵌入式软核处理器,除了可以根据需要任意添加已经提供的外设外,用户还可以通过定制用户逻辑外设和定制用户指令来实现各种应用要求.这节我们就来研究如何定制基于Av ...
- 每天进步一点点------SOPC的Avalon-MM IP核(一) avalon总线的信号时序
在SOPC中自定义外设时.可以设置avalon总线的信号时序,以满足外设的要求.一般情况下,可以设为: 其中setup为read和write信号之前,address和writedata信号提前建立的时 ...
- 每天进步一点点------SOPC的Avalon-MM IP核(四) KEY_LED IP定制
/********************************************************************************* * Company : * Eng ...
- 每天进步一点点------SOPC的Avalon-MM IP核(三) LCD1602 IP定制
注:Avalon信号类型命名参考图 /********************************************************************************* ...
- 详解java定时任务---Timer篇
一.简介 在java的jdk中提供了Timer.TimerTask两个类来做定时任务. Timer是一种定时器工具,用来在一个后台线程计划执行指定任务,而TimerTask一个抽象类,它的子 ...
- 【小梅哥SOPC学习笔记】NIOS II处理器运行UC/OS II
SOPC开发流程之NIOS II 处理器运行 UC/OS II 这里以在芯航线FPGA学习套件的核心板上搭建 NIOS II 软核并运行 UCOS II操作系统为例介绍SOPC的开发流程. 第一步:建 ...
- qt下的时钟程序(简单美丽,继承自QWidget的Clock,用timer调用update刷新,然后使用paintEvent作画就行了,超详细中文注释)good
最近抽空又看了下qt,发现用它来实现一些东西真的很容易比如下面这个例子,绘制了个圆形的时钟,但代码却清晰易懂[例子源自奇趣科技提供的例子]因为清晰,所以就只写注释了,吼吼其实也就这么几行代码头文件 / ...
随机推荐
- Wannafly Camp 2020 Day 6F 图与三角形 - 图论
把黑边视为无边,那么答案之和每个点的度数有关 #include <bits/stdc++.h> using namespace std; #define int long long int ...
- PP: Imaging time-series to improve classification and imputation
From: University of Maryland encode time series as different types of images. reformulate features o ...
- linux - mysql - 忘记用户名、密码
1, 关闭mysql服务 /etc/rc.d/init.d/mysqld stop 2,使用 –skip-grant-tables选项启动mysql服务 (1)打开文件 mysqld vi /etc/ ...
- Node.js、npm和webpack的安装
1. 前往Node.js官网下载安装程序 2. 一路点击下一步即可 3. 测试是否安装成功 4. 配置npm在安装全局模块时的路径和缓存cache的路径 因为在执行例如npm install webp ...
- 一些常见的HTTP的请求状态码
200:正确的请求返回正确的结果,如果不想细分正确的请求结果都可以直接返回200. 201:表示资源被正确的创建.比如说,我们 POST 用户名.密码正确创建了一个用户就可以返回 201. 202:请 ...
- MySQL启动和停止
MySQL视为大仓库,关闭的时候有权限有身份都无法进入使用的时候要保持启用状态 方式一: 计算机游击找到“管理”打开 左侧栏目中找到“服务和应用程序”打开 打开服务 找到MySQL...,右击.... ...
- django 版本 对应pyhton版本
对应关系
- 电脑进不去BIOS解决办法
把所有外设(主要是硬盘,包括装在主板上的固态硬盘)拆下来,拆下纽扣电池给主板放电,装回纽扣电池,重启F1进入BIOS. 最终查到原因,是固态那里出的问题,固态作为启动硬盘,被自己搞得有问题了,有两个启 ...
- 实用 docker history
关闭安装认证, 开启tcp 端口 sudo vi /usr/lib/systemd/system/docker.service ExecStart=/usr/bin/dockerd --insecur ...
- abb画学号
MODULE Module2 VAR signaldi signaldi26; VAR signaldi signaldi37; VAR signaldi signaldi48; PROC main2 ...