微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 小白问题,关于单片机计数器的,各位大大帮下忙啦~~

小白问题,关于单片机计数器的,各位大大帮下忙啦~~

时间:10-02 整理:3721RD 点击:
关于51单片机内置计数器的,开中断,我想问下在计数器计满,TF0位溢出以后进入中断处理程序的时候计时器的TL0和TH0两个寄存器值还有变化么? 溢出之后怎么处理的呢? 我在书上看到个例子,把 T0 T1都打开了,都开中断,T0在中断处理程序里边加上了TL0TH0重新设定语句,T1没加,结果T1的计数结果不准确了,请问这是为啥呢~~
还有小弟用的win7 64位,各位大大能不能给推荐个能用的仿真软件啊,我用的keil v3自带仿真,可是能查询的寄存器好少... 只有那么几个,中断还有计时器的寄存器根本看不了啊...

再加一句,谢谢各位解答啦~~~

好像是进入中断不再计数吧!我做时钟时做过11.0592MHZ的晶振用计算出设置初值为65536-46536的但是,时间不对有一定差距,后将46536改小就好多了,所以个人认为进入中断时不计数的!

那就是还保持在那个溢出的状态喽? ~~

寄存器在中断中不重新赋值的话 中断服务程序结束后继续计时寄存器后会从0开始计数直到再次溢出

嘿嘿,谢谢啦,了解了~~ 还有啊,像汇编存表命令,MOV DPTR TABLE, 这个名为TABLE的代码表被单片机放在哪里了呢? 是程序储存区后边,TABLE  DB DB... 那里呢,还是别的什么地方?  如果是在程序后边的话,是紧跟着上边那条指令继续往下写吗? 那如果是这样的话,那上边那条存表指令,存入的就是TABLE第一个代码的地址吗? ~ 有点长,嘿嘿,再次感谢~~~~

关于table代码表存入单片机具体的位置这个还真没想过,你知道了告诉我一下 让我也学习学习。dptr中存入的的确是table表的第一个代码的内存地址

嗯嗯,木有问题,不过得过段时间了,这几周忙着复习,也没什么时间弄了,就晚上上坛子发发贴,等放假吧

定时器进入中后应该不会继续计数吧

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top