- 积分
- 48
- 回帖
- 0
- 西莫币
-
- 贡献
-
- 威望
-
- 存款
-
- 阅读权限
- 5
- 最后登录
- 1970-1-1
该用户从未签到
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
进来整个STM8的东东,用到了timer1周期性触发ADC1:
void adc_timer_init(void)
{
clk_timer1_ctrl(CLK_ENABLE);
TIM1_DeInit();
adc_timer_set_prescaler();
adc_timer_set_frequency();
adc_timer_set_trigger_adc();
}
result_t adc_init(void)
{
adc_timer_init();
clk_adc_ctrl(CLK_ENABLE);
ADC1_DeInit();
adc_config_clock();
adc_set_schmitt_tigger_diable();
adc_config_data_align_right();
adc_external_tigger_enable();
adc_config_single_mode();
adc_power_on();
return RESULT_SUCCES;
}
result_t adc_start(void)
{
uint8_t i;
uint8_t int_status = interrupt_disable();
adc_disable();
for(i = 0;i<(ADC_CHANEL_COUNT * ADC_SAMPLE_COUNTER_FOR_AVERAGE);i++)
{
((uint16_t *) adc_convert_result)[i] =0xFFFF;
}
adc_is_scan_mode = true;
adc_is_first_convert = true;
adc_sample_counter = 0;
adc_scan_mode_enable();
adc_config_channel(ADC_CHANNAL_SCAN);
adc_enable();
interrupt_restore_mask(int_status);
return RESULT_SUCCES;
}
#ifdef IRQ_HANDLER_22
INTERRUPT_HANDLER(ADC1_IRQHandler, 22)
{
}
#endif |
|