完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本帖最后由 MOPPLAYER 于 2015-11-17 23:17 编辑 前言:一般控制LED的方式就是使用PWM,但Cypress提供了一個PrISM元件針對Servo或者Power和LED做優化,減少低頻閃爍效應和降低EMI,本篇就使用這個元件做個呼吸彩色燈 實作: 1. 新增專案,在Example選擇PrISM LED ![]() Fig. 1 創建範例專案 2. 創建專案後,打開上層原理圖,可發現PrISM元件一個為主的電路圖 ![]() Fig. 2 PrISM元件 3. 對元件點選滑鼠右鍵,選擇DataSheet ![]() Fig. 3 元件說明 4. 這裡主要講解如何使用這個元件,首先它是由幾塊數位電路所組合出來的元件,如下圖 ![]() Fig. 4 包含D Flip-flop和Clock,Control Register,和主元件PrISMdp 5. 主要原理如下圖,亂數產生器Register與Pulse值Register比較後,如果是大於等於或者小於等於(可設定),則輸出高電位 ![]() Fig. 5 上層實現圖,透過比較亂數和Pulse,依照功能性設定輸出高電位 6. 本範例使用以下API,其他採用預設值即可 ![]() Fig. 6 啟動API,會呼叫初始化函式和使能函式 ![]() Fig. 7 變更Pluse的設定值API 7. 其中變更Pluse的設定值,即改變脈衝佔空比,因此圖例如下 ![]() Fig. 8 經過比較後的輸出脈衝 8. 了解原理後,我們將範例加以修改,首先上層原理圖新增一個PrISM,和Constant 0,一個ISR元件,一個Clock元件 ![]() Fig. 9 接線圖 9. 接線好後開始設定.首先設定新增的Clock_2 ![]() Fig. 10 設定頻率為5,為第一個Clock的四分之一,可達到交錯色彩 ![]() Fig. 11 DataSheet提到,Initially align to好處是可以同時觸發,達到理想的時脈操作 10. 設定兩個PrISM,其中兩個Pulse功能性要相反,才有辦法達到交錯色彩 ![]() Fig. 12 PrISM_1設定值,主要變更Pulse設定,其他預設即可 ![]() Fig. 13 PrISM_2設定值,因為只有使用到一個Pulse,所以預設即可 11. 最後設定ISR插斷觸發,選擇上升沿觸發 ![]() Fig. 14 isr_1設定值,上升沿觸發 12. 設定完成後,設定腳位,如下圖 ![]() Fig. 15 腳位2_6,3_6,3_7為RGB LED接腳,2_7為使用者按鈕 13. 再來修改原始碼,main.c修改成如下
其中新增了isr_1的相關觸發函數,變數也新增一組,使得變更色彩值的兩組PrISM是獨立進行,tc腳位每一周期到達0xFF時候都會觸發一次高電位,使得ISR觸發後變更色彩設定值,到達兩端點時候再反遞增或者遞減,達到交錯色彩的呼吸燈 14. 完成變更後,按下Build,沒錯誤的話,連接開發板,按下Program,燒寫至開發板 15. 完成設計,觀察彩色呼吸燈的效果,黃,粉紅,綠色,白色,藍色交替等等,按下使用者按鈕時,會停止PrISM元件,因此色彩不會改變,維持白色 16. 成品實圖 ![]() |
|
相关推荐 |
|
只有小组成员才能发言,加入小组>>
740个成员聚集在这个小组
加入小组1982 浏览 1 评论
1745 浏览 1 评论
3523 浏览 1 评论
请问可以直接使用来自FX2LP固件的端点向主机FIFO写入数据吗?
1674 浏览 6 评论
1451 浏览 1 评论
CY8C4025LQI在程序中调用函数,通过示波器观察SCL引脚波形,无法将pin0.4(SCL)下拉是什么原因导致?
238浏览 2评论
CYUSB3065焊接到USB3.0 TYPE-B口的焊接触点就无法使用是什么原因导致的?
142浏览 2评论
CX3连接Camera修改分辨率之后,播放器无法播出camera的画面怎么解决?
333浏览 2评论
281浏览 2评论
使用stm32+cyw43438 wifi驱动whd,WHD驱动固件加载失败的原因?
466浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-9-1 07:39 , Processed in 0.740651 second(s), Total 68, Slave 50 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191