I seem to be unable to activate the second async serial port on a XC161CJ. There's hardly any difference between both ports and "ASC0" runs fine. But whatever I do, "TXD1" will not transmit anything. Does anyone have any experience with programming this port? These are my settings: ASC0_FDV = 0x016f; ASC0_BG = 0x0006; ASC0_CON = 0x8811; ALTSEL0P3 |= 0x0c00; P3 = (P3 & ~(uword)0x0800) | 0x0400; DP3 = (DP3 & ~(uword)0x0800) | 0x0400; ASC1_FDV = 0x016f; ASC1_BG = 0x0006; ASC1_CON = 0x8811; ALTSEL0P3 |= 0x0003; P3 = (P3 & ~(uword)0x0002) | 0x0001; DP3 = (DP3 & ~(uword)0x0002) | 0x0001; Now, if I write a value to "ASC0_TBUF" it comes out of pin "TXD0" serially.(don't bother about interrupts) If I do the same with "ASC1_TBUF" nothing happens. I can write a value to the pin itself, so physically there's nothing wrong. What am I missing??? Frank
Hi, have you make sure that ASC1DIS in SYSCON3 is set to zero ? /Rolf
Oh yes this important, what Rolfs says. The ASC1 is disabled at startup of XC16x derivatives by default. So, as Rolf mentioned, set the initializing bit to 1 (INIT_SYSCON3) in startup file and ADSC1DIS bit to zero. Rolf!! , thanks for this additional hint. Stefan
Thanks guys! I read the discussions, but one is about simulation (which is not the issue here) and the other one didn't show me anything I didn't already know. But Rolf's remark made the difference! Now this is somewhat confusing: The users manual: "xc161_umd_system_v1.1_2002_02.pdf" states in pg 8-35 that syscon3 has a default value of "0000H". In "xc161_um_sys_v2.0_2003_03.pdf" (the system users manual one month later) it says on pg 6-5 that the default setting of syscon3 is "9FD0H"! But I can not find a decent description of this register anymore.....any hints? Furthermore, "DAVE" does not configure syscon3 either. It sets the bits, but not the initializing bit. Changing "INIT_SYSCON3" in the startup file to "1" was all I needed to do. So, thanks a lot. I'm back on track again, although it's not quite clear to me where to find the right info on this matter... Frank
Hi Frank, thanks for feedback - it was nice to be able to help you. Yes, your are right with the DAvE. We discover this behaviour some weeks ago with the SSC1 interface,thats why I mentioned the INIT bit in SYSCON3 extra again. DAvE really does not set this bit, but only the wanted xxxDIS bit. Concerning the registers - the reset values was changed with the AC steps I mean, since the old reset values brought up some troubles in the start up phase. Stefan
Hi Stefan, I downloaded the docs(the febr ones) after I got the chips. I guess documentation is always one step behind.... But I still wonder where I can find a complete description of the syscon3 register. It doesn't seem to be in the latest user manuals.(or I must have overlooked it) Frank
View all questions in Keil forum