//#define CPU_REF_HZ 20000000l /* reference clock for H8CANUSB */
//#define CPU_SYS_HZ 20000000l /* default system for H8CANUSB */
-#define CPU_REF_HZ 11059200l /* reference clock for H8CANUSB */
-#define CPU_SYS_HZ 11059200l /* default system for H8CANUSB */
+#define CPU_REF_HZ 4000000l /* reference clock for H8CANUSB */
+#define CPU_SYS_HZ 16000000l /* default system for H8CANUSB */
unsigned long cpu_ref_hz; /* actual external XTAL reference */
/* PLL mode x2, */
/* *SYS_LPWRCR=1&LPWRCR_STCxm; */
{
+#if (CPU_SYS_HZ != CPU_REF_HZ) && (CPU_SYS_HZ/2 != CPU_REF_HZ) && (CPU_SYS_HZ/4 != CPU_REF_HZ)
+#error Wrong clock settings: CPU_SYS_HZ must be 1, 2 or 4 multiple of CPU_REF_HZ
+#endif
+#if CPU_SYS_HZ > 20000000
+#error Wrong clock settings: CPU_SYS_HZ must be less or equal to 20000000
+#endif
const char clkrat2stc[]={0,0/*1*/,1/*2*/,1,2/*4*/,2,2,2,3/*8*/};
*SYS_LPWRCR=LPWRCR_STCxm&(LPWRCR_STC0m*
clkrat2stc[(CPU_SYS_HZ+CPU_REF_HZ/2)/CPU_REF_HZ]);