標(biāo)題: 單片機應(yīng)該不能只通過延時函數(shù)讓兩個輸出口輸出不同頻率的波形吧? [打印本頁]

作者: 迷茫的落葉    時間: 2021-1-20 11:47
標(biāo)題: 單片機應(yīng)該不能只通過延時函數(shù)讓兩個輸出口輸出不同頻率的波形吧?
如題,有大佬過來解答一下嗎?

作者: csmyldl    時間: 2021-1-20 12:13
可以用定時計數(shù)器確定波形周期,比用延時函數(shù)好
作者: xianfajushi    時間: 2021-1-20 12:36
定時也是延時的一種形式而已
作者: 人人學(xué)會單片機    時間: 2021-1-20 13:04
當(dāng)然是可以的,下面這個是最小公倍數(shù)的算法。簡簡單單的三個IO口輸出波形


作者: 迷茫的落葉    時間: 2021-1-20 14:02
csmyldl 發(fā)表于 2021-1-20 12:13
可以用定時計數(shù)器確定波形周期,比用延時函數(shù)好

嗯……為了精準(zhǔn)延時我延時函數(shù)就是用定時器中斷寫的,基本能輸出我想要的波形,但是如果我想同時輸出兩個不同的波形應(yīng)該怎么辦?
作者: 迷茫的落葉    時間: 2021-1-20 14:03
xianfajushi 發(fā)表于 2021-1-20 12:36
定時也是延時的一種形式而已

確實如此
作者: munuc_w    時間: 2021-1-20 14:34
用一個定時精度高一點的定時器,如定時1uS,在中斷里計數(shù),根據(jù)你  要的頻率,處理計數(shù)值及標(biāo)識,在主循環(huán)中判斷不同的標(biāo)識控制IO口。
作者: wangyuejia2015    時間: 2021-1-20 14:44
stm32 有專門pwm接口
作者: 龍千校    時間: 2021-1-20 16:39
看芯片帶不帶硬件PWM,沒有的話只能軟件pwm
作者: 迷茫的落葉    時間: 2021-1-20 16:51
munuc_w 發(fā)表于 2021-1-20 14:34
用一個定時精度高一點的定時器,如定時1uS,在中斷里計數(shù),根據(jù)你  要的頻率,處理計數(shù)值及標(biāo)識,在主循環(huán) ...

你這么一說我感覺有點不知道怎么定時了,我現(xiàn)在用的51單片機自帶24.5M的晶振,定時1us算不出來
作者: 迷茫的落葉    時間: 2021-1-20 16:58
人人學(xué)會單片機 發(fā)表于 2021-1-20 13:04
當(dāng)然是可以的,下面這個是最小公倍數(shù)的算法。簡簡單單的三個IO口輸出波形

這個牛逼,弄一個單獨的計數(shù)器,根據(jù)當(dāng)前數(shù)值來判斷燈(輸出)是否應(yīng)該改變狀態(tài),我覺得可以套用(把這個寫進定時器中斷應(yīng)該能達到很好的效果)
作者: 迷茫的落葉    時間: 2021-1-20 17:00
wangyuejia2015 發(fā)表于 2021-1-20 14:44
stm32 有專門pwm接口

還在學(xué)51呢,現(xiàn)在手上有塊C8051F410,還在鉆研
作者: 迷茫的落葉    時間: 2021-1-20 17:02
龍千校 發(fā)表于 2021-1-20 16:39
看芯片帶不帶硬件PWM,沒有的話只能軟件pwm

嗯,我找一找




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1