|
@@ -111,6 +111,10 @@ int luat_pwm_setup(luat_pwm_conf_t* conf) {
|
|
|
case 30:
|
|
case 30:
|
|
|
wm_pwm0_config(WM_IO_PA_02);
|
|
wm_pwm0_config(WM_IO_PA_02);
|
|
|
break;
|
|
break;
|
|
|
|
|
+ case 40:
|
|
|
|
|
+ wm_pwm0_config(WM_IO_PB_19);
|
|
|
|
|
+ break;
|
|
|
|
|
+
|
|
|
case 01:
|
|
case 01:
|
|
|
wm_pwm1_config(WM_IO_PB_01);
|
|
wm_pwm1_config(WM_IO_PB_01);
|
|
|
break;
|
|
break;
|
|
@@ -123,6 +127,7 @@ int luat_pwm_setup(luat_pwm_conf_t* conf) {
|
|
|
case 31:
|
|
case 31:
|
|
|
wm_pwm1_config(WM_IO_PA_03);
|
|
wm_pwm1_config(WM_IO_PA_03);
|
|
|
break;
|
|
break;
|
|
|
|
|
+
|
|
|
case 02:
|
|
case 02:
|
|
|
wm_pwm2_config(WM_IO_PB_02);
|
|
wm_pwm2_config(WM_IO_PB_02);
|
|
|
break;
|
|
break;
|
|
@@ -135,6 +140,7 @@ int luat_pwm_setup(luat_pwm_conf_t* conf) {
|
|
|
case 32:
|
|
case 32:
|
|
|
wm_pwm2_config(WM_IO_PB_24);
|
|
wm_pwm2_config(WM_IO_PB_24);
|
|
|
break;
|
|
break;
|
|
|
|
|
+
|
|
|
case 03:
|
|
case 03:
|
|
|
wm_pwm3_config(WM_IO_PB_03);
|
|
wm_pwm3_config(WM_IO_PB_03);
|
|
|
break;
|
|
break;
|
|
@@ -147,6 +153,7 @@ int luat_pwm_setup(luat_pwm_conf_t* conf) {
|
|
|
case 33:
|
|
case 33:
|
|
|
wm_pwm3_config(WM_IO_PB_25);
|
|
wm_pwm3_config(WM_IO_PB_25);
|
|
|
break;
|
|
break;
|
|
|
|
|
+
|
|
|
case 04:
|
|
case 04:
|
|
|
wm_pwm4_config(WM_IO_PA_07);
|
|
wm_pwm4_config(WM_IO_PA_07);
|
|
|
break;
|
|
break;
|
|
@@ -159,6 +166,9 @@ int luat_pwm_setup(luat_pwm_conf_t* conf) {
|
|
|
case 34:
|
|
case 34:
|
|
|
wm_pwm4_config(WM_IO_PB_26);
|
|
wm_pwm4_config(WM_IO_PB_26);
|
|
|
break;
|
|
break;
|
|
|
|
|
+ case 44:
|
|
|
|
|
+ wm_pwm4_config(WM_IO_PA_04);
|
|
|
|
|
+ break;
|
|
|
// #endif
|
|
// #endif
|
|
|
// TODO 再选一组PWM0~PWM4
|
|
// TODO 再选一组PWM0~PWM4
|
|
|
default:
|
|
default:
|
|
@@ -270,7 +280,7 @@ int luat_pwm_capture(int channel,int freq) {
|
|
|
case 10:
|
|
case 10:
|
|
|
channel = channel%10;
|
|
channel = channel%10;
|
|
|
memset(pwmDmaCap0, 0, sizeof(pwmDmaCap0)/sizeof(char));
|
|
memset(pwmDmaCap0, 0, sizeof(pwmDmaCap0)/sizeof(char));
|
|
|
- wm_pwm0_config(WM_IO_PB_19);
|
|
|
|
|
|
|
+ wm_pwm0_config(WM_IO_PA_10);
|
|
|
tls_pwm_stop(channel);
|
|
tls_pwm_stop(channel);
|
|
|
dmaCh = tls_dma_request(1, TLS_DMA_FLAGS_CHANNEL_SEL(TLS_DMA_SEL_PWM_CAP0) | TLS_DMA_FLAGS_HARD_MODE);
|
|
dmaCh = tls_dma_request(1, TLS_DMA_FLAGS_CHANNEL_SEL(TLS_DMA_SEL_PWM_CAP0) | TLS_DMA_FLAGS_HARD_MODE);
|
|
|
DmaDesc.src_addr = HR_PWM_CAPDAT;
|
|
DmaDesc.src_addr = HR_PWM_CAPDAT;
|
|
@@ -285,7 +295,7 @@ int luat_pwm_capture(int channel,int freq) {
|
|
|
return 0;
|
|
return 0;
|
|
|
case 20:
|
|
case 20:
|
|
|
memset(pwmDmaCap0, 0, sizeof(pwmDmaCap0)/sizeof(char));
|
|
memset(pwmDmaCap0, 0, sizeof(pwmDmaCap0)/sizeof(char));
|
|
|
- wm_pwm0_config(WM_IO_PA_02);
|
|
|
|
|
|
|
+ wm_pwm0_config(WM_IO_PB_12);
|
|
|
tls_pwm_stop(channel);
|
|
tls_pwm_stop(channel);
|
|
|
dmaCh = tls_dma_request(1, TLS_DMA_FLAGS_CHANNEL_SEL(TLS_DMA_SEL_PWM_CAP0) | TLS_DMA_FLAGS_HARD_MODE);
|
|
dmaCh = tls_dma_request(1, TLS_DMA_FLAGS_CHANNEL_SEL(TLS_DMA_SEL_PWM_CAP0) | TLS_DMA_FLAGS_HARD_MODE);
|
|
|
DmaDesc.src_addr = HR_PWM_CAPDAT;
|
|
DmaDesc.src_addr = HR_PWM_CAPDAT;
|
|
@@ -301,7 +311,7 @@ int luat_pwm_capture(int channel,int freq) {
|
|
|
case 30:
|
|
case 30:
|
|
|
channel = channel%10;
|
|
channel = channel%10;
|
|
|
memset(pwmDmaCap0, 0, sizeof(pwmDmaCap0)/sizeof(char));
|
|
memset(pwmDmaCap0, 0, sizeof(pwmDmaCap0)/sizeof(char));
|
|
|
- wm_pwm0_config(WM_IO_PA_10);
|
|
|
|
|
|
|
+ wm_pwm0_config(WM_IO_PA_02);
|
|
|
tls_pwm_stop(channel);
|
|
tls_pwm_stop(channel);
|
|
|
dmaCh = tls_dma_request(1, TLS_DMA_FLAGS_CHANNEL_SEL(TLS_DMA_SEL_PWM_CAP0) | TLS_DMA_FLAGS_HARD_MODE);
|
|
dmaCh = tls_dma_request(1, TLS_DMA_FLAGS_CHANNEL_SEL(TLS_DMA_SEL_PWM_CAP0) | TLS_DMA_FLAGS_HARD_MODE);
|
|
|
DmaDesc.src_addr = HR_PWM_CAPDAT;
|
|
DmaDesc.src_addr = HR_PWM_CAPDAT;
|
|
@@ -317,7 +327,7 @@ int luat_pwm_capture(int channel,int freq) {
|
|
|
case 40:
|
|
case 40:
|
|
|
channel = channel%10;
|
|
channel = channel%10;
|
|
|
memset(pwmDmaCap0, 0, sizeof(pwmDmaCap0)/sizeof(char));
|
|
memset(pwmDmaCap0, 0, sizeof(pwmDmaCap0)/sizeof(char));
|
|
|
- wm_pwm0_config(WM_IO_PB_12);
|
|
|
|
|
|
|
+ wm_pwm0_config(WM_IO_PB_19);
|
|
|
tls_pwm_stop(channel);
|
|
tls_pwm_stop(channel);
|
|
|
dmaCh = tls_dma_request(1, TLS_DMA_FLAGS_CHANNEL_SEL(TLS_DMA_SEL_PWM_CAP0) | TLS_DMA_FLAGS_HARD_MODE);
|
|
dmaCh = tls_dma_request(1, TLS_DMA_FLAGS_CHANNEL_SEL(TLS_DMA_SEL_PWM_CAP0) | TLS_DMA_FLAGS_HARD_MODE);
|
|
|
DmaDesc.src_addr = HR_PWM_CAPDAT;
|
|
DmaDesc.src_addr = HR_PWM_CAPDAT;
|
|
@@ -330,10 +340,11 @@ int luat_pwm_capture(int channel,int freq) {
|
|
|
tls_pwm_cap_init(channel, sysclk.apbclk*UNIT_MHZ/256/freq, DISABLE, WM_PWM_CAP_DMA_INT);
|
|
tls_pwm_cap_init(channel, sysclk.apbclk*UNIT_MHZ/256/freq, DISABLE, WM_PWM_CAP_DMA_INT);
|
|
|
tls_pwm_start(channel);
|
|
tls_pwm_start(channel);
|
|
|
return 0;
|
|
return 0;
|
|
|
|
|
+
|
|
|
case 04:
|
|
case 04:
|
|
|
channel = channel%10;
|
|
channel = channel%10;
|
|
|
memset(pwmDmaCap4, 0, sizeof(pwmDmaCap4)/sizeof(char));
|
|
memset(pwmDmaCap4, 0, sizeof(pwmDmaCap4)/sizeof(char));
|
|
|
- wm_pwm4_config(WM_IO_PA_04);
|
|
|
|
|
|
|
+ wm_pwm4_config(WM_IO_PA_07);
|
|
|
tls_pwm_stop(channel);
|
|
tls_pwm_stop(channel);
|
|
|
dmaCh = tls_dma_request(1, TLS_DMA_FLAGS_CHANNEL_SEL(TLS_DMA_SEL_PWM_CAP0) | TLS_DMA_FLAGS_HARD_MODE);
|
|
dmaCh = tls_dma_request(1, TLS_DMA_FLAGS_CHANNEL_SEL(TLS_DMA_SEL_PWM_CAP0) | TLS_DMA_FLAGS_HARD_MODE);
|
|
|
DmaDesc.src_addr = HR_PWM_CAPDAT;
|
|
DmaDesc.src_addr = HR_PWM_CAPDAT;
|
|
@@ -349,7 +360,7 @@ int luat_pwm_capture(int channel,int freq) {
|
|
|
case 14:
|
|
case 14:
|
|
|
channel = channel%10;
|
|
channel = channel%10;
|
|
|
memset(pwmDmaCap4, 0, sizeof(pwmDmaCap4)/sizeof(char));
|
|
memset(pwmDmaCap4, 0, sizeof(pwmDmaCap4)/sizeof(char));
|
|
|
- wm_pwm4_config(WM_IO_PA_07);
|
|
|
|
|
|
|
+ wm_pwm4_config(WM_IO_PA_14);
|
|
|
tls_pwm_stop(channel);
|
|
tls_pwm_stop(channel);
|
|
|
dmaCh = tls_dma_request(1, TLS_DMA_FLAGS_CHANNEL_SEL(TLS_DMA_SEL_PWM_CAP0) | TLS_DMA_FLAGS_HARD_MODE);
|
|
dmaCh = tls_dma_request(1, TLS_DMA_FLAGS_CHANNEL_SEL(TLS_DMA_SEL_PWM_CAP0) | TLS_DMA_FLAGS_HARD_MODE);
|
|
|
DmaDesc.src_addr = HR_PWM_CAPDAT;
|
|
DmaDesc.src_addr = HR_PWM_CAPDAT;
|
|
@@ -365,7 +376,7 @@ int luat_pwm_capture(int channel,int freq) {
|
|
|
case 24:
|
|
case 24:
|
|
|
channel = channel%10;
|
|
channel = channel%10;
|
|
|
memset(pwmDmaCap4, 0, sizeof(pwmDmaCap4)/sizeof(char));
|
|
memset(pwmDmaCap4, 0, sizeof(pwmDmaCap4)/sizeof(char));
|
|
|
- wm_pwm4_config(WM_IO_PA_14);
|
|
|
|
|
|
|
+ wm_pwm4_config(WM_IO_PB_16);
|
|
|
tls_pwm_stop(channel);
|
|
tls_pwm_stop(channel);
|
|
|
dmaCh = tls_dma_request(1, TLS_DMA_FLAGS_CHANNEL_SEL(TLS_DMA_SEL_PWM_CAP0) | TLS_DMA_FLAGS_HARD_MODE);
|
|
dmaCh = tls_dma_request(1, TLS_DMA_FLAGS_CHANNEL_SEL(TLS_DMA_SEL_PWM_CAP0) | TLS_DMA_FLAGS_HARD_MODE);
|
|
|
DmaDesc.src_addr = HR_PWM_CAPDAT;
|
|
DmaDesc.src_addr = HR_PWM_CAPDAT;
|
|
@@ -381,7 +392,7 @@ int luat_pwm_capture(int channel,int freq) {
|
|
|
case 34:
|
|
case 34:
|
|
|
channel = channel%10;
|
|
channel = channel%10;
|
|
|
memset(pwmDmaCap4, 0, sizeof(pwmDmaCap4)/sizeof(char));
|
|
memset(pwmDmaCap4, 0, sizeof(pwmDmaCap4)/sizeof(char));
|
|
|
- wm_pwm4_config(WM_IO_PB_16);
|
|
|
|
|
|
|
+ wm_pwm4_config(WM_IO_PB_26);
|
|
|
tls_pwm_stop(channel);
|
|
tls_pwm_stop(channel);
|
|
|
dmaCh = tls_dma_request(1, TLS_DMA_FLAGS_CHANNEL_SEL(TLS_DMA_SEL_PWM_CAP0) | TLS_DMA_FLAGS_HARD_MODE);
|
|
dmaCh = tls_dma_request(1, TLS_DMA_FLAGS_CHANNEL_SEL(TLS_DMA_SEL_PWM_CAP0) | TLS_DMA_FLAGS_HARD_MODE);
|
|
|
DmaDesc.src_addr = HR_PWM_CAPDAT;
|
|
DmaDesc.src_addr = HR_PWM_CAPDAT;
|
|
@@ -397,7 +408,7 @@ int luat_pwm_capture(int channel,int freq) {
|
|
|
case 44:
|
|
case 44:
|
|
|
channel = channel%10;
|
|
channel = channel%10;
|
|
|
memset(pwmDmaCap4, 0, sizeof(pwmDmaCap4)/sizeof(char));
|
|
memset(pwmDmaCap4, 0, sizeof(pwmDmaCap4)/sizeof(char));
|
|
|
- wm_pwm4_config(WM_IO_PB_26);
|
|
|
|
|
|
|
+ wm_pwm4_config(WM_IO_PA_04);
|
|
|
tls_pwm_stop(channel);
|
|
tls_pwm_stop(channel);
|
|
|
dmaCh = tls_dma_request(1, TLS_DMA_FLAGS_CHANNEL_SEL(TLS_DMA_SEL_PWM_CAP0) | TLS_DMA_FLAGS_HARD_MODE);
|
|
dmaCh = tls_dma_request(1, TLS_DMA_FLAGS_CHANNEL_SEL(TLS_DMA_SEL_PWM_CAP0) | TLS_DMA_FLAGS_HARD_MODE);
|
|
|
DmaDesc.src_addr = HR_PWM_CAPDAT;
|
|
DmaDesc.src_addr = HR_PWM_CAPDAT;
|