liu199426 发表于 2024-2-29 18:52:38

求教STC12c5a60s2串口二切换,怎么从p1口切换到p4口

求教STC12c5a60s2串口二切换,怎么从p1口切换到p4口

21cnsound 发表于 2024-2-29 21:58:48

只有LQFP44和LQFP48、PLCC-44三种封装的支持串口2切换到P4

liu199426 发表于 2024-3-1 08:55:14

21cnsound 发表于 2024-2-29 21:58
只有LQFP44和LQFP48、PLCC-44三种封装的支持串口2切换到P4

型号是LQFP44我把特殊寄存器修改成B2和92都切换不了,都还是在P1口通讯

21cnsound 发表于 2024-3-1 09:00:14

sfr AUXR1 = 0x92-------这个是定义AUXR1寄存器,即指定sfr寄存器地址,如果include头文件就不用重新定义了
你应该在main中对寄存器AUXR1或位S2_P4直接赋值。

21cnsound 发表于 2024-3-1 09:03:42

sfr AUXR1 = 0xA2; //Auxiliary Register 1-PCA_P4SPI_P4S2_P4GF2    ADRJ   -    DPS0000,0000
这是头文件中的特殊寄存器AUXR1 的定义,这个0xA2是这个寄存器的地址,这个不能修改。

liu199426 发表于 2024-3-1 09:05:01

21cnsound 发表于 2024-3-1 09:00
sfr AUXR1 = 0x92-------这个是定义AUXR1寄存器,即指定sfr寄存器地址,如果include头文件就不用重新定义了 ...

我是在头文件中修改了定义,之前把P1口的通讯调通然后在修改定义,但是修改完定义还是在P1口通讯,达不到切换功能。

liu199426 发表于 2024-3-1 09:05:53

如图

21cnsound 发表于 2024-3-1 09:09:04

liu199426 发表于 2024-3-1 09:05
我是在头文件中修改了定义,之前把P1口的通讯调通然后在修改定义,但是修改完定义还是在P1口通讯,达不到 ...
你修改了特殊功能寄存器AUXR1的地址,没有修改AUXR1的值,这样AUXR1的就实现不了其该有的功能了。
因为特殊功能寄存器中的值都是和硬件直接连接或者打交道的

liu199426 发表于 2024-3-1 09:20:23

21cnsound 发表于 2024-3-1 09:09
你修改了特殊功能寄存器AUXR1的地址,没有修改AUXR1的值,这样AUXR1的就实现不了其该有的功能了。
因为特 ...

非常感谢您的指点,谢谢
页: [1]
查看完整版本: 求教STC12c5a60s2串口二切换,怎么从p1口切换到p4口