I use at91 sam7x256 board. i am new to arm. i see an example for USB CDC example for iar. it uses usart interrupt via aic. in iar everything is okay this program works as usb to serial , and both RX and TX works well. i ported this project to keil and used the predefined startup code. this project compiled and linked without any errors.when i run , tx (usb out put) works fine , but rx (serial input) runs once and cpu stops. i guess interrups have problem. i don't know if it needs changes in startup code or interrupt code. i tried changin some flag (interrupt flags) at the end of interrupt routine but nothing changed. and i don't know about startup code. anyone can help me? thank you.