led燈如何實(shí)現(xiàn)從暗逐漸變亮?
這個(gè)要用到軟件的pwm,因?yàn)?1的沒有硬件的pwm所以只好自己寫軟件的了。首先,要做一個(gè)軟件三角波發(fā)生器子程序,頻率自己定,就是變亮變暗的周期。此函數(shù)的返回值作為pwm的輸入值。再做一個(gè)pwm的模擬程序,占空比(0-100)是三角波發(fā)生器的輸出,pwm模擬程序控制某個(gè)端口輸出1和0的占空比來控制燈 的明暗。pwm的思路是:檢查設(shè)置值是否不等于0,是則端口置1,程序開始加1計(jì)數(shù),計(jì)數(shù)后檢查計(jì)數(shù)值是否等于設(shè)置值,如果等于則跳轉(zhuǎn),不等則繼續(xù)加一,如果到100或者計(jì)數(shù)值等于設(shè)置值則使端口置0,一個(gè)pwm周期結(jié)束,如此重復(fù)就可以了。pwm周期自己看實(shí)際情況定義。如果要控制電燈泡的話,頻率不用太高,50hz可以了。關(guān)鍵是要做隔離,用光電隔離加雙向可控硅來控制。 呵呵,聲明兩點(diǎn):1 源程序網(wǎng)上應(yīng)該有的,或者自己買本書就什么也有了。2 不鼓勵(lì)直接給別人源程序,給你思路再動(dòng)手就應(yīng)該很好弄了,總看別人的,不自己思考永遠(yuǎn)都是別人的。
http://www.programsalon.com/downloads88/sourcecode/embed/detail337156.html