单片机频率的计算求解

发布网友 发布时间:2022-04-22 09:25

我来回答

3个回答

热心网友 时间:2023-08-16 06:50

你可以查一下每条for语句里面执行的时间啊,i=400,就是一个变量,通过改变其值来改变for的运行时间,就可以改变频率了。

你也许是想问为什么400就是1000HZ的频率。怎么计算的,对吧。

告诉你一个简单可行的办法,就是用proteus仿真软件,测试一下你的for的运行时间。

简单说就是设置一个IO口,当运行完for后,让该IO口取反,在测试程序中用whie(1) 一直这样做。然后通过proteus观察IO口的高低电平的变化时间,就可以知道for的运行时间了。当然,这也只是一个大概的测试方法。

粗略的延时就用for语句等实现,精确延时是用定时器完成的。

像你这个程序,只是个大概延时,没必要搞得非常精确,所以就用for语句实现了。

热心网友 时间:2023-08-16 06:50

/*------1000HZ-------*/就是不知道这些频率是怎么计算出来的 ,单片机的晶振是12MHZ,单片机初学者,请求用你通俗易懂的语言解释,谢谢,非常感谢,郁闷好几天了。
----
不是算的,是试验出来的。

想要输出不同的频率,就需要改变周期。
改变延时时间,即可:yanshi(7);、yanshi(10);。

要想得到准确的时间,就应该用汇编语言来编程。
用C语言,没有办法算时间,只能是瞎猫...。

热心网友 时间:2023-08-16 06:51

这程序里调用了一个延时程序 yanshi(10);

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com