ARM学习笔记之定时器

最新更新时间:2021-11-29来源: eefocus关键字:ARM  学习笔记  定时器 手机看文章 扫描二维码
随时随地手机看文章

《深入浅出ARM7——LPC213x/214x上册》学习笔记之定时器


LPC2131有2个32位定时器,4路捕获和4路匹配输出。


捕获:当满足捕获条件时,把定时器的值装入捕获寄存器,可以在上升沿,下降沿捕获,并可选择捕获时是否产生中断。


匹配:当TC的值和匹配寄存器的值相等时,可设置定时器继续工作,复位定时器或者停止寄存器,并可选择是否产生中断。有4个外部匹配输出,当匹配发生时,可设置外部匹配引脚输出高电平、低电平、翻转或者无动作。


一个例子如下(经验证过):

#include "config.h"

#define LEDS (0XFF<<18)

uint32 table[]={

0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};

uint32 i;

void __irq T0(void)

{       

        i++;

        if(i==8)

                  i=0;

        T0IR=0X01;

        VICVectAddr=0x00;

}

 

void T0init()

{

        T0TC=0;

        T0PR=0;

        T0MCR=0X03;

        T0MR0=Fpclk/2;

        T0TCR=0X01;

 

        VICIntSelect=0x00;

        VICVectCntl0=0x20|0x04;

        VICVectAddr0=(uint32)T0;

        VICIntEnable=1<<0x04;

        

}

 

int main()

{

        PINSEL2=PINSEL2&(~0X08);

        IO1DIR=LEDS;

        TargetResetInit(); //目标板复位初始化,这里删除也可以,但在串口查询例子中一定要加

 //   IRQEnable();  加上编译通不过,删除则正常工作

        T0init();

        while(1)

        {

                  //     IO1PIN=(~table[i])<<18;

                  IO1SET = (~table[i])<<18;

                  IO1CLR = table[i]<<18;

        }

        return(0);

}


关键字:ARM  学习笔记  定时器 编辑:什么鱼 引用地址:http://news.eeworld.com.cn/mcu/ic555868.html

上一篇:ARM7学习笔记之开始
下一篇:ARM9的大端模式和小端模式

推荐阅读

收购截止期将近,英伟达ARM提交长文:ARM市场影响力被夸大
据报道,一直以来,美国图形芯片巨头英伟达计划以400亿美元的代价,从日本软银集团手中买下英国芯片设计巨头ARM,但是这一交易的进展并不顺利。  最初收购交易的截止期限是今年三月份,眼看着就要错过。而这一交易在美国、英国、欧洲等地都遭到了反垄断监管部门的审核,监管担心,交易将会削弱市场竞争。  按照最初计划,软银集团、英伟达和ARM计划在2020年9月以后的一年半时间内完成交易。  科技市场研究公司高德纳的分析师阿兰·普雷斯利(Alan Priestley)和一些股市投资人认为,一国和多个国家监管机构否决这一交易的可能性很大。  不过,英伟达和ARM并未坐以待毙。  本周一,交易双方提交给英国“竞争市场局”的一份长达28页的文件
发表于 2022-01-12
嵌入式4412开发板QT5.7编译安装到arm
平台:iTOP-4412精英版+4.3寸屏有学东西写文章的习惯,毕竟都是入门,在这里记录一下安装过程,虽然可能短期内用不到了,但以后用到的时候可以作为参考。********************************华丽的分割线***************************1、从网上下载所有最新的源码Ubuntu16.0 amd64版本第一个,这个就不要源码了,直接安装就好了QT5.7.0,万能的度娘一找就找到了(官网下载),注意是下载源码,linux版本的源码。ARM-NONE-LINUX-GNUEABI-GCC4.8,arm-***以后就这么写了,名字太长,这个选择源码或者选择编译好的都可以,有一个博客(http
发表于 2022-01-11
嵌入式4412开发板QT5.7编译安装到<font color='red'>arm</font>
ARM Cortex-A9 (tiny 4412)
要求移植linux增加系统调用并烧写至开发板详细步骤一、搭建linux编译环境1、GCC 编译器的安装:tar xzvf arm-linux-gcc-4.5.1-v6-vfp-20120301.tgz  -C/arm-linux-gcc -v //查看GCC版本2、gedit ~/.bashrcexport PATH=$PATH:/opt/FriendlyARM/toolschain/4.5.1/bin3、reboot -p 重启4、cp -f tiny4412_android_defconfig .configmake -->编译5、安装libz.soyum install zlib.i6866、挂载红帽
发表于 2022-01-11
<font color='red'>ARM</font> Cortex-A9 (tiny 4412)
ARM开发板实现双系统引导的一种方法
前言  本文所用的uboot代码为迅为官方提供,开发板是迅为iTOP-4412开发板(不带设备树)。  首先,我们确定一下系统启动的流程:首先启动uboot,uboot启动内核并挂载rootfs(根文件系统),内核启动完成且rootfs工作完成后,挂载emmc上的文件系统,操作系统正式开始工作。(读者要弄懂根文件系统和普通文件系统的区别与联系,网上资料很多,本文不作赘述。)  本文实现的双系统引导,都是基于Linux的,即两个系统使用同一个内核、同一个根文件系统,只是emmc上的文件系统有所不同。第一个系统是一个最小Linux系统,第二个系统是一个带Qt/E的Linux系统。uboot启动后会从emmc的特定位置读取一定长度的字符串
发表于 2022-01-11
<font color='red'>ARM</font>开发板实现双系统引导的一种方法
英伟达回应与ARM合并案:外界夸大宣传 禁止收购后果严重
Nvidia在2020年9月份宣布斥资400亿美元收购ARM公司,由于NVIDIA股价大涨,这笔交易实际价值超过500亿美元,也就是3000多亿人民币,然而一年多过去,收购ARM的希望越来越小,反对声在加大。有可能对这起收购案带来致命一击的是美国FTC的介入,去年初宣布起诉NVIDIA收购ARM一事之后,最近FTC又发了长文剖析了这笔交易,数落了NVIDIA收购ARM的120宗罪过,解释为什么不能允许他们收购ARM公司。简单来说,FTC认为NVIDIA收购ARM之后会影响市场竞争,会用ARM来打击对手,这同时也会损害ARM生态,而让ARM保持中立的话,可以让大家相安无事,谁也控制不了谁。对于这一番指控,NVIDIA前不久也发表49
发表于 2022-01-11
ARM汇编语言学习笔记(一)介绍
的汇编语言和特定的机器语言指令集是一一对应的,不同平台之间不可直接移植。简单的来说,就是通过特定的语言直接操作计算机中的寄存器等,来直接控制计算机的运行。二、ARM汇编由于对于特定的机器架构需要采用不同的汇编语言,对于嵌入式语言的开发者来说,ARM无疑是比重最大的那一块。学习ARM架构,有助于我们从机器底层来理解计算机的每一条指令的运行方式,中断的进入和出,出栈入栈的操作。三、为什么要学习ARM汇编我在CJSON的里面写到,只需要了解CJSON的函数的使用和怎么解析和构造JSON函数就可以啦。我们可以简单的将其视为一个黑盒子,有一个进口和一个出口。里面是什么和我们无关。但是,这里我认为并不一样,keil和一些编译工具帮助我们做了大量
发表于 2022-01-10
小广播
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2022 EEWORLD.com.cn, Inc. All rights reserved