本帖最后由 90houyidai 于 2021-1-13 23:36 编辑
这次裸跑了几个外设的综合试验
串口+ADC+定时器+PWM+CAN
家里没有CAN工具就没测试CAN的功能
使用ADC_IN12将电位器的值传给PWM,进行LED的调光,
并通过串口将采样值传回电脑
开始使用PWM_SetPWMDutyCycle函数进行占空比调节,发现没变化
进入函数查看,才发现这个只能设置对称通道,这个有点误导啊,
主函数
- while (1)
- {
- if (g_timer32ms)
- {
- g_timer32ms = 0;
- ADC_Main();
- PWM_SetChannelValue(PWM2, PWM_CHANNEL_CHANNEL0,g_adcValue/35);
-
- }
- if (g_timer128ms)
- {
- g_timer128ms = 0;
- CAN_Main(CAN1);
- //CAN_Main(CAN2); /* reserved for CAN2 test */
- }
- if (g_timer512ms)
- {
- g_timer512ms = 0;
- GPIO_Main();
- }
- if (g_timer1024ms)
- {
- g_timer1024ms = 0;
-
- printf("ADC_IN12:%d\r\n",g_adcValue);
-
- if (s_eflashTestTimes > 0)
- {
- s_eflashTestTimes--;
- // EFLASH_Main();
- }
- }
- }
|