历史上的今天
今天是:2025年02月15日(星期六)
2020年02月15日 | PIC单片及定时器溢出中断的设计思路及程序设计
2020-02-15 来源:eefocus
1.设计思路
PIC16F87系列单片机的定时/计数器0是一个8位的简单增量溢出计数器。时钟源可以是内部系统时钟(Fosc/4),也可以是外部时钟。为了扩大定时或计数范围,在定时/计数器0中设计了一个可编程预分频器。当TMR0内部计数器计数从FFH跳到OOH时,发生计数溢出,置位TOIF(INTCON的D2),向CPU申请中断。
RB0/INT引脚上的外部中断由边沿触发,既可以是上升沿,也可以是下降沿,当寄存器OPTION_REG的INTEDG位为1时,选择上升沿触发;为0时选择下降沿触发。一旦检测到引脚上出现有效边沿,就将INTF位INTCON的D1置1。
本例中同时允许定时器0中断和外部INT中断。在程序执行过程中,不定时地在RB0/INT引脚上加入脉冲,产生中断请求。中断服务程序查询TGIF和INTF标志以决定响应哪一个中断,中断响应优先级由中断查询次序决定。
2.程序设计
主程序流程如图1所示,中断子程序流程如图2所示。

图1 主程序流程

图2 中断子程序流程
(1)包含必要的头文件及定义全局变量。

(2)中断服务子程序,通过判断定时器0的中断对端口C进行操作,使其输出方波。


(3)主函数,初始化定时器0及端口A,然后进入中断等待状态。
史海拾趣
|
--希望能对大家有帮助 --**************************************-- --程序名:任意整数分频,占空比为50% --**************************************-- library ieee; use ieee.std_logic_1164.all; entity clk_div is generic(n:integer:= ...… 查看全部问答> |
|
我写了一个模块,已经编译通过,运行没有问题 可是我希望进一步再模块中使用Glib库的API的时候,加入 #include 编译模块的时候怎么样都找不到glib.h 我知道模块编译的时候是在系统空间编译的, 我在用户空间引用glib.h就没有问题, 那么怎 ...… 查看全部问答> |
|
我修改 power button 驱动,注释掉了PowerOffSystem(); 可仍然有效果,很奇怪 我修改 power button 驱动,注释掉了PowerOffSystem(); 可仍然有效果,很奇怪 // Soft reset and standard suspend-resume both start with suspend for now. &nbs ...… 查看全部问答> |
|
uCOS-II在STM32的移植,我做了N天了,可是uCOS就是在我的板子上运行不起来,实在让我很纠结!在此发帖,希望有人帮帮我。 前几天开始uCOS在STM32的移植,刚开始移植编译老是不通过,找了五天,看了官方的移植例子,实在看不懂,又去 ...… 查看全部问答> |
|
我有个nxp p89lpc9221芯片,用来控制7段数码管显示,用ICP口编程。 我现在设置p0.0,p0.1,p0.2为开漏输出;P0M1 |= 0x07; P0M2 |= 0x07; 三个脚都上拉到3.3v; 然后设置三个脚输出为0: sbit p00 = P0 ^ 0; sbit p01 = P0 ^ 1; sbit ...… 查看全部问答> |
|
基于stm32F103+enc28j60+路由+家庭宽带的物联网全套资料 基于stm32F103+enc28j60+路由+家庭宽带的物联网是参照野火大神的例程以及自己以前建网站经验,主要在STM32内编写一个很小的网页服务器,只有一页,在网页中可以实现LED控制,以及温度、湿度在网页上显示。   ...… 查看全部问答> |
|
Unable to handle kernel paging request at virtual address的产生原因 问题: 我在移植linux-2.6.14 到s3c2410时也出现了类似错误,先移植好网卡后,在移植LCD,出错 s3c2410_bwscon value 22111910 s3c2410_bankcon2 value 7ffc ax88796 extIRQ = 12, IRQtype= 4 Unable to handle kernel paging request at virt ...… 查看全部问答> |
|
本帖最后由 s364147694 于 2014-4-7 14:15 编辑 一次ADC采样转换时间是 采样时间+转换时间,公式是= (4 x ADC12CLK x N) + ( 13 xADC12CLK/Fadc12clk)) 但是采样的时钟和转换始终是一个吗??公式里的ADCLK是指分频后的时钟还是没分频的?? 最 ...… 查看全部问答> |
|
本帖最后由 a523248304 于 2014-11-7 11:56 编辑 别人发给我的,分享给大家,混个脸熟。。。 另外工程师需要PCB封装、原理图元件库、典型应用电路可以去“搜芯网”找,找不到就向他们发布需求,他们工程师会提供给你。。。网址就不发在论坛 ...… 查看全部问答> |




