zoukankan      html  css  js  c++  java
  • s5pv210的定时器

      前阵子一直忙着乱七八糟的事情,开学放假七天,睡一天看电影一天,还有一些琐事,虽然把开发板带回去了,但是也只是增加旅途的羁绊,说好的会在放假期间把选课系统写完,最后只写了一半。这就导致了后边阵脚大乱的悲剧。

      迫不及待的回到乐嵌,感觉还是多学点东西心里才踏实。放假前的裸机都是小儿科,收假回来就变了天了。由于我的选课系统只有半成品,想着以后面试肯定有用,跪着也要写完!不过结果可想而知,导致裸机没能及时预习复习,一心扑在了选课系统上,加上学到LCD、NANDFLASH、IIC、定时器等硬件,日子真心不好过啊。还好,选课系统每天花三五个小时,连续四五天,总算完成了七七八八,基本功能都实现了,剩下一些BUG和少许功能没有完善,觉得目的已经达到了,就果断放下选课系统转投裸机开发。

      人的精力是有限的,同时做两件事容易顾此失彼。回到裸机之后,发现自己落下了不少,不过,还好自己本来就是一路追赶过来的哈哈。前天回学校拿衣服顺带把车骑过来了(其实是反过来的,,),又落后了半天。晚上本来打算回到教室赶赶进度,没想到没吃晚饭就骑车加上半路下雨,天黑不识路的,接近九点才回到寝室。洗去从二环上带回来的黑泥,出去买了点东西,回去就睡了(真是作死)。

      昨天早上开始做裸机的项目,由于落后了半天和一个晚上,他们都已经做好了坐标的读取,我还是零。简单构思了下,靠着自己的理解去做,鲁老师来了之后,给我指明了一下方向和注意事项,靠着直觉,终于在十二点多做好了坐标的读取。吃饭后大家都没有休息,我自然也不敢松懈。才发现最后坚持下来的只有五六个人,很庆幸自己是其中一个,虽然出发的有点迟哈哈。。外面还在下雨,估计是要入秋了吧,钢筋水泥中独自一人在他乡,中秋将近,不觉之中竟有一丝凄凉。昨晚和老童鞋通了一个小时的电话,自从自己来到湖南,好久没有和他们聊那么久了吧,觉得自己离群好久了,以后慢慢补偿你们了。

      季节变化,情感也时时变化,有好有坏,不必矫情,尽管向前看。

      不废话了,下面从s5pv210 的定时器开始总结。

      210有五个32位的定时器,其中0、1、2、3、4包含了脉冲宽度调制,有定时和计数的器 的功能。这里就不再赘述,相关资料随时都可以找到,这里直接上代码。

          1、、首先是定时器的初始化,主要设置定时器的输入时钟频率、定时器倒数计数初值和重载、占空比、使能定时器中断和开启等

    int init_timer(void)
    {
    unsigned int temp0=0;
    //禁止timer
    TCON = 0x0;

    //使能timer0中断
    TINT_CSTAT = 0x01;
    /*
    设置时钟的工作频率为1M
    prescaler value = 65 divider value = 1
    input clock = 66M /(65+1) /1 = 1M

    TCFG0 &= ~0xff;
    TCFG0 = 65;
    */
    //计算的预分频系数
    TCFG0 &= 0xffffff00;
    TCFG0 |=0x00000041;
    //设置分频系数 ,1/16
    TCFG1 = 0x04;

    //设置TCNB0和TCMP0,启动timer0,TCNTB0逐渐减一,等于零是产生中断
    // 定时1秒 1clk = 16us 1000000 /16 = 62500
    TCNTB0 = 0xF424;
    TCMPB0 = 0x7A12;  //设置比较数值,用于调节占空比

    // 首先设置手动更新,装载TCNTB0
    TCON |= (1<<1);
    TCON &= ~(1<<1);

    //自动重载和开启定时器0
    TCON |= (1<<0) |(1<<3);

    // 使能timer0中断
    temp0 = TINT_CSTAT;
    temp0 &=0xFFFFFFFE;
    temp0 |=0x1;
    TINT_CSTAT = temp0;

    //设置GPD0 为输出 ,设置成T_OUT模式,产生PWM波形
    GPD0CON &= 0xfff0;
    GPD0CON |= 0x02;

    printf("timer0 int enable ");
    return 0;
    }

     

          然后就是其他地方就和按键中断是一样的, 只要把21号中断源打开,把中断服务子程序地址注册到相应的中断地址即可

      

  • 相关阅读:
    Java设置环境变量
    php 生成二维码
    php 生成读取csv文件并解决中文乱码
    php 过滤重复的数组
    php 读取,生成excel文件
    php 逐行读取文本文件
    php 多维数组按键值分类
    python学习,day2:利用列表做购物车实例
    python学习,day1作业:设计一个三级菜单
    python学习,day2:字典
  • 原文地址:https://www.cnblogs.com/ygy1784717631/p/4822887.html
Copyright © 2011-2022 走看看