There is a board of STM32F103CBT6 without external high speed crystal.
I want to use the USB module on this board. The input of the PLL is 4MHZ as I configured PLL source to internal RC oscillator (8MHZ typically with 2x division), then I configures the PLL to 12x, which means the clock to USB module is 48M.
Then the USB module works well, it seems stable.
I tried to heat up the board to 80C to test the stability of the USB module when the accuracy of the clock decreases, I also tried to cool it down to -10C, no problem is caused.
But I still worried about the stability of the USB module driven in this way.
Some datasheet of STM32F0 series from ST emphasizes their usb module is "crystalless", which seems to mean the usb of other series like STM32F1 cannot run without external crystal. But the datasheet of STM32F1 didn't say this problem clearly.
I wondered if usb works really stable enough without external crystal.
BTW, usb is needed to add IAP function to the project, so it is a serious problem.