Keil Logo

C166: Using 2nd Serial Port (ASC1) on the Infineon C161CS

Information in this article applies to:

  • C166 All Versions


I want to use the second serial port (ASC1) on the Infineon C161CS. The data sheet says it is an XBus peripheral. What must I do to use the ASC1 with my program?


Infineon has added the second serial port (ASC1) on the C161CS as an XBus peripheral. ASC1 is functionally compatible with the ASC0 except that its registers are NOT bit-addressable (because it is an XBus Peripheral) and it provides only three interrupts. The Transmit buffer full interrupt is not implemented on the ASC1.

Therefore, PUTCHAR.C for the general output of a character for the C166 using ASC0 must be modified to work for ASC1.

  1. Change the SFR's to reflect ASC1 and XBus peripheral byte addressablity.
  2. Change the code to reflect that no ASC1 Transmit Buffer Full interrupt exists as in the ASC0.
  3. Include the new modified PUTCHAR.C in your C161CS source code for the project.
  4. Modify your ASC1 initialization code in the main program to be byte addressable.
  5. Re-build all the code now to use ASC1 versus ASC0.

Refer to the Infineon C161CS Data Sheet for more information.


Last Reviewed: Tuesday, December 1, 2020

Did this article provide the answer you needed?
Not Sure
  Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

Change Settings

Privacy Policy Update

Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.