kxyz 发表于 2026-5-6 17:22:37

串口中断收发-MODBUS协议——问题

手册中17.10.11 串口中断收发-MODBUS协议 例程,测试时启动不了发送中断


void main(void)
{
…………
…………
            TX1_Buffer = (u8)crc;
            B_TX1_Busy = 1;    //标志发送忙
            TX1_cnt      = 0;    //发送字节计数
            TX1_number = 4;    //要发送的字节数
            TI = 1;      //启动发送


这里启动发送,进不了中断

if(TI)
{
TI = 0;

…………
什么原因?哪位有测试过此例程,需要调整参数吗

乘风飞扬 发表于 2026-5-6 18:21:50

8H/8G/8C/8A系列4组串口同时通信的程序,Modbus 演示程序;可共享T2做波特率发生器
https://www.stcaimcu.com/thread-375-1-1.html
(出处: 国芯人工智能技术交流网站)

帖子里面提供的例子都经过验证,先用例子测试功能正常后再进行修改或者移植。

jwd 发表于 2026-5-6 20:17:28

串口初始化不对?

kxyz 发表于 2026-5-8 09:11:20

主程序中
            TI = 1;      //启动发送
这句是让进中断中执行发送数据吧,TI标志是自动产生的,可以软件写1,其他uart端口都能用软件把发送标志位写1吗
页: [1]
查看完整版本: 串口中断收发-MODBUS协议——问题