我将例程下载到STC89C52单片机上,用单片机来控制CH432T,结果PC机上的串口调试软件接收到的数据是27 FF 00 03 0C 07 18 1B 1C 1F 20 23 24 27 38 3B 3C 3F C0 C3 C4 87 D8 DB DC DF E0 E3 E4 E7 F8 FB ,这是由CH432的串口1发来的数据,请问为什么会这样?这些数据正确吗?
您好,请问您的串口波特率设置为多少?
9600
请问你们有没有AVR的例程?我们最终的产品使用ATMEGA64来控制CH432的
没有AVR例程,但是C语言可方便移植,我们例程串口0的波特率为9600bps,串口1为2400bps。你改为2400试试看。
我已经在程序中将串口1的波特率改为9600了,所以应该不是波特率的问题,当单片机执行程序UART1_SendByte( 0xBB );的时候,PC机会接收到两个数据27 FF
签名处有我的联系方式,可以电话联系,你用的使我们的DEMO板还是芯片,如果是芯片的话,晶振用的是多大的?
晶振用7.3728
#define Fpclk 1843200 /* 定义内部时钟频率 */ 这里您的定义是多少??是7372800/12 = 614400???
#define CH432_BPS1 2400 /* 定义CH432串口1通讯波特率 */ #define Fpclk 921600 /* 定义内部时钟频率 */
我用AVR调试的时候,读取寄存器的数据为:00 01 01 00 7F 1F ,LSR和MSR的初始值不正常
时钟配置不正确,如果晶振为7.3728M,12分频为614400, #define Fpclk 614400 /* 定义内部时钟频率 */