首要说说晶振与51单片机的机器周期得联系:晶振的倒数是一个时钟周期单位为秒,一个机器周期等于12乘时钟周期。 再说说指令周期与时钟周期得联系:关于8031等前期的51来说,指令周期和机器周期是相同的等于12乘时钟周期,但后来呈现了许多改进型的51系列单片机如80320等,指令周期等于4个时钟周期,也便是说相同的晶振速度是本来的3倍。但无论如何变,T0、T1等守时器的计时任然按机器周期来核算的,也便是说12乘时钟周期。 守时器是按溢出发生中止的,所以要用溢出值65536减你所期望的值得到守时器的初值。 那么怎样核算赋值所决议的时刻呢: 首要核算出机器周期:12*(1/22.1184/1000000)秒(应该是22.1184兆吧), 由于你需求计时50毫秒那么就换算成毫秒吧,该值乘1000便是毫秒了。这个值便是守时器的机器周期,也便是守时器添加一个计数值的值。 那么对你而言需求守时50毫秒,需求多少个守时值呢?很简单用50除这个值就OK了,你能够算算应该是:92160. 现在问题来了,咱们需求92160个计数值,但51守时器最大只能是65536,容不下怎样办?只能在中止服务程序中处理了,比方两次中止做一次计时届时判据那么就能够,所以计数值就能够除以2得46080小于65536能够处理了。 那么初值便是65536-46080=19456了,你能够用电脑核算器换算成16进制填入TH1和TL1。
22.1184晶振的单片机
首先说说晶振与51单片机的机器周期得关系:晶振的倒数是一个时钟周期单位为秒,一个机器周期等于12乘时钟周期。再说说指令周期与时钟周期
声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/bandaoti/zhizao/255972.html