中科藍訊AB536X系列晶元PWM使用說明

2021-10-10 22:46:51 字數 1521 閱讀 1436

ab536x 支援 3 個定時器(timer3,timer4,timer5,)pwm 輸出,每個定時器支援 3 路 pwm 輸出 ,分別是 pwm0 ,pwm1,pwm2,其中每個定時器支援 3 路週期相同,可設定不同占空比的 pwm 同時輸出。

ab536x 每組 timer定時器 對應 pwm io 說明:

timer3:

g1: pwm0->pb0  pwm1->pb1  pwm2->pb2

g2: pwm0->pb3 pwm1->pb4 pwm2->pb5

g3: pwm0->pf2 pwm1->pa3 pwm2->pa4

g4: pwm0->pe0

timer4:

g1: pwm0->pe5  pwm1->pe6  pwm2->pe7

g2: pwm1->pf1 pwm2->pf1

timer5:

g1: pwm0->pa5  pwm1->pa6  pwm2->pa7
funcmcon2 對應 pwm 的對映:

timer3->8bit timer4->12bit timer5->16bit

g1->1 g2->2 …

例如:timer3 的 g1 組:

funcmcon2 = (1<<8);

timer3 的 g3 組:

funcmcon2 = (3<<8);

timer4 的 g1 組:

funcmcon2 = (1<<12);

備註:查詢 ab536x 每組 timer 對應 pwm io需要查閱晶元datasheet,以上資料查詢自《ab5362b datasheet》

查詢funcmcon2 暫存器功能《ab536x usermanual》

使用出現問題請複查以上提及的文件。

sdk 預設定時器用途:

timer0 : 系統時鐘使用

timer1: (可選) ledseg_ajust. 7 腳屏的時候使用 timer1_irq_init

timer3: (可選) 軟體紅外解碼使用

但6x系列晶元的定時器沒有被占用,可以放心使用

例程:下面以 timer4 為例

初始化:

#define pwm_max                     4001    

void pwm_init(void)

掃瞄:

呼吸燈掃瞄放5ms中斷,用作頻譜燈需要放1ms中斷,例程是簡單的呼吸燈效果。主要是調整占空比 duty = tmr4duty0 /tmr4pr ;

at(.com_text.rgb)

void rgb_breath_scan(void)else

}tmr4duty0 = cnt ;

tmr4duty1 = cnt;

tmr4duty2 = cnt;

}

中科藍訊AB5325A音箱回連慢解決方法

sdk版本 ab532x s9170 解決方法 未回連的狀態下,在程式中呼叫回連函式 程式處理 在1秒呼叫訊息中新增判斷,是否有回連資訊bt nor get link info null 和藍芽是否處於配對狀態 bt nor is connected 兩者都滿足則呼叫一次回連函式。直到回連上裝置。c...

中科藍訊AB532X 自定義按鍵處理函式的實現

有些時候客戶樣機上的按鍵不夠多,但又想單個按鍵可以操作多個功能,比如同乙個按鍵長按2s乙個功能,長按4s乙個功能等等。要實現這樣的操作就要求軟體能改變按鍵按下的時間,但是藍訊sdk的按鍵處理函式沒開放出來 而且調節預設的按鍵時間測試發現無效 所以,要做這個功能只能重新寫個按鍵處理函式了,不過,在這裡...

中科藍訊藍芽 通用IO GPIO 一般操作

目錄 1.gpio 常用暫存器 2.常見輸入輸出示例 3.關於gpioaset gpioaclr 如下 以gpioa為例子 gpioafen 設定為0表示作為通用io gpio 使用 設定為1表示做其它功能性io,如串列埠 spi.gpioade 數字io使能 0為模擬io,1 為數字io,如作為a...