ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Пятница
10 мая
1430557
Гyдвин, волшебник (27.04.2024 16:24, просмотров: 523)
Кто интенсивнее дергал за вымя CH32V помогите разгадать ребус пожалуйста :) 

Увы, только немного щупал примеры в алишных отладках... Ну и приобрел жменьку 8-лапых CH32V003J4M6 для "семечек". Отутюжил на скорую руку платку вот с таким содержимым пару месяцев назад (извиняюсь за непрезентабельный вид - лепилось на коленке пару часов). Настроил PORT C на вывод и запустил тестилку - биппер, адресный светодиод, импульс на драйвер мосфетов. Мои жиденькие мосфеты испустили волшебный дым после нескольких телодвижений и я забросил это дело. Вчера попалось на глаза и решил таки потрогать и входы - PD6(PA1) - кнопка, PA2 - вход АЦП. Вот тут и всплыл ребус. При нежатии кнопки чип вылетает в hard fault или пересбрасывается. Короче, уходит в нирвану. С какого рожна? В DS пишут, что после сброса этот пин по-умолчанию PD6/PA1/ URX/A6/T1CH2/A1/OPN0...

int main(void)
{
     NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
     Delay_Init();
     // //gpio perifer enable
     RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD | RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOC, ENABLE);
     __disable_irq();
    //port C
     GPIOC->OUTDR = 0; // выходы порта С все 0
     GPIOC->CFGLR=0x44434334; // PC1, PC2, PC4 - PP_Out, 50 Мгц
    set_color(3);
    while(1)
    {
     beep(20);  // 20 ms
     Delay_Ms(2000); //2 s
     beep(2);  // 2 ms
     pulse(5); // 5 ms
     Delay_Ms(2000); // 2 s
    }
}