Starlight_77 发表于 2026-1-26 10:29:51

为什么使用S2CFG寄存器数据会被截断?

        MOV        S2CON,#50H                ;8位数据,可变波特率
        MOV S2CFG,#01H            ;必须W1置为1
      ;!!!!这里S2CFG数据被截断


        ORL        AUXR,#01H                ;串口1选择定时器2为波特率发生器
        ORL        AUXR,#04H                ;定时器时钟1T模式
        MOV        T2L,#0CCH                ;设置定时初始值
        MOV        T2H,#0FFH                ;设置定时初始值
        ORL        AUXR,#10H                ;定时器2开始计时


!!!警告信息
main.asm(20): warning A52: VALUE HAS BEEN TRUNCATED TO 8 BITS

linking...

zhp 发表于 2026-1-27 15:51:34


如上图,S2CFG是XFR,不是传统的SFR
不可以使用直接寻址

需要使用下面的方式对SCFGF进行修改
    MOV WR0,#WORD2 S2CFG
    MOV WR2,#WORD0 S2CFG
    MOV A,#01H
    MOV @DR0,R11
页: [1]
查看完整版本: 为什么使用S2CFG寄存器数据会被截断?