关于单片机三大编程语言的编程问题,高悬赏求大神!!!!!

1.单位时间内完成振动或振荡的次數或周数常用单位是赫兹。1赫兹等于1次/秒或1周/秒2.某一时间内某事物发生的次数或完成某过程的次数,有时也叫频率

晶振周期:晶振嘚振荡周期就是时钟周期,比如12M晶振zhi时钟周期是 1/12M; 机器周期是单片机三大编程语言执行指令所消耗的最小时间单位比如51是12分频,51的1个机器周期划分为6个状态周期、12个节拍;12M晶振机器周期是 1/12M*12=1S;

时钟周期:也称为振荡周期, 定义为时钟脉冲的倒数 (可以这样来理解, 时钟周期就是单 爿机外接晶振的倒数, 例如 12M 的晶振, 它的时间周期就是 1/12 us) , 是计算机中最基本的、 最小的时间单位

机器周期:单片机三大编程语言完成一次完整嘚具有一定功能的动作所需的时间周期。如一次完整的读操作或写操作对应的时间一个机器周期=6个状态周期。【指令周期】: 执行完某条指令所需要的时间周期一般需要1~4个机器周期,如MUL AB指令是四机器周期指令一个指令周期=1~4个机器周期。

关系:时钟周期是晶振频率的倒数。 状态周期是时钟周期的二倍。 机器周期是时钟周期的 12 倍。 如:晶振频率是 12MHz 时钟周期就是,(1/12)us 状态周期就是,(2/12)us 机器周期就是,(12/12)=1us

一个机器周期 = 12个时钟周期;时钟周期 = 晶振频率的倒数。

例如:在MCS-51单片机三大编程语言的时钟周期与振荡周期是相等的12M晶振,振荡周期就是(1/12M)s机器周期的时序,由12个时钟周期(12T)组成在一些增强型的51单片机三大编程语言中,机器周期缩短为6T甚至1T,以提高总线访问速率(飞利浦降为6T,STC已降为1T)

1、首先你要算,38KHZ的频率对应的周期就是1/38000秒(公式: T(单位是S) = 1/f)也就是26.32us(微秒),估算为26微秒;
2、现茬你的外部晶振是11.0592,那么12分频后的机器周期大约是1.0812us也就是说需要大概24个机器周期来形成一个26微秒;(如果选12M的晶振比较好算,机器周期就算1us)
3、要产生如此精确的时间量,非定时器莫属那么可以想象,只要根据定时器来定时每12个机器周期后对输出信号进行一次翻轉,那么形成的信号就是一个占空比为50%的周期为24个机器周期即26us的信号了此信号就是想要的38KHZ频率的信号;
4、那么把定时器设置在模式0、1就嘟是可以的,因为只需要让它从初值(max-12)计数到最大值max就可以了设定定时器的中断,在每次中断函数中对输出信号取反。

我要回帖

更多关于 单片机三大编程语言 的文章

 

随机推荐