18220866638 发表于 2023-10-9 23:42:17

梁工,我买的STC32G12K128芯片的降龙棍,用这个作为例子改了一星期了也不行,能不能发一个降龙棍的MODBUS例子

18220866638 发表于 2023-10-11 10:43:50

有没有最新STC32G的

XD1986 发表于 2023-12-12 11:10:09

梁工 发表于 2022-12-19 13:09
STC8H/STC8G 的 4组 独立串口程序, 通用
Modbus 演示程序, 2023/8/28更新
解压缩后参考、测试“08-串口1中 ...

谢谢大神

jianjun 发表于 2023-12-12 18:03:46

梁工 发表于 2023-9-30 21:21
不好意思!我的例程是STC8系列的,降龙棍勇的是STC32G,不能直接下载运行(我记混了)。
下面的工程我改 ...

梁工您好,我用的是STC8A8K64D4单片机,直接下载您的STC8G单片机MODBUS程序后通讯成功。
但是我用STC-ISP生成的STC8A8K64D4单片机头文件则不行。一大堆错误。怎么能移植到STC8A单片机呢?

梁工 发表于 2023-12-12 18:30:30

jianjun 发表于 2023-12-12 18:03
梁工您好,我用的是STC8A8K64D4单片机,直接下载您的STC8G单片机MODBUS程序后通讯成功。
但是我用STC-ISP ...

STC8G、STC8H、STC8A8K的串口都是通用的啊,怎么有错误?你贴出错误提示看看。

jianjun 发表于 2023-12-13 08:45:22

本帖最后由 jianjun 于 2023-12-13 08:55 编辑

您的工程我把#include      "..\..\STC8Gxxx.h"改为#include      "STC8A.h",然后编译出现下面的错误:

Build target 'Target 1'
compiling UART1.c...
UART1.c(321): error C141: syntax error near 'TIMER0_VECTOR', expected 'const'
UART1.c(322): error C132: 'TIMER0_VECTOR': not in formal parameter list
UART1.c(322): error C141: syntax error near '{', expected ';'
UART1.c(325): error C132: 'RX1_TimeOut': not in formal parameter list
UART1.c(329): error C244: 'B_RX1_OK': can't initialize, bad type or class
UART1.c(329): error C132: 'B_RX1_OK': not in formal parameter list
UART1.c(330): error C141: syntax error near '}', expected 'hdata'
UART1.c(387): error C202: 'INT_CLKO': undefined identifier
Target not created.
Build Time Elapsed:00:00:00

定位下来都是下面这一段和INT_CLKO变量未定义的问题

void timer0_ISR (void) interrupt TIMER0_VECTOR
{
      if(RX1_TimeOut != 0)
      {
                if(--RX1_TimeOut == 0)      //超时
                {
                        if(RX1_cnt != 0)      //接收有数据
                        {
                              B_RX1_OK = 1;      //标志已收到数据块
                        }
                }
      }
}


zhudean11 发表于 2023-12-13 11:17:37

{:4_250:}好东西,收藏

jianjun 发表于 2023-12-13 13:47:12

本帖最后由 jianjun 于 2023-12-13 13:48 编辑

梁工 发表于 2023-12-12 18:30
STC8G、STC8H、STC8A8K的串口都是通用的啊,怎么有错误?你贴出错误提示看看。 ...按提示加上这些定义后正常了,哎,头文件不统一造成
#define                TIMER0_VECTOR      1
#define                S1_USE_P36P37()                                        P_SW1=(P_SW1 & ~0xc0) | 0x40      //UART1 使用P3.6 P3.7口
#define                S1_USE_P16P17()                                        P_SW1=(P_SW1 & ~0xc0) | 0x80      //UART1 使用P1.6 P1.7口
#define                S1_USE_P43P44()                                        P_SW1=(P_SW1 & ~0xc0) | 0xc0      //UART1 使用P4.3 P4.4口
#define         P1n_standard(bitn)                        P1M1 &= ~(bitn),      P1M0 &= ~(bitn)
#define   P3n_standard(bitn)                        P3M1 &= ~(bitn),      P3M0 &= ~(bitn)
#define         P4n_standard(bitn)                        P4M1 &= ~(bitn),      P4M0 &= ~(bitn)
#define                S1_USE_P30P31()                                        P_SW1 &= ~0xc0

jianjun 发表于 2023-12-16 16:13:00

梁工您好,我有2个寄存器变量是带小数点的浮点型数据,浮点型数据如何通过8位串口发过去?上位机(标准MODBUS协议)又是如何整合成浮点型32位数据的, 有点蒙逼,有没有示例代码演示?先感谢指教{:4_196:}

西红柿牛柳 发表于 2023-12-20 10:44:54

哇哦,正好是我需要的,感谢大神,改天学习一下
页: 1 2 3 4 [5] 6 7 8 9 10 11 12 13 14
查看完整版本: 8H/8G/8C/8A系列4组串口同时通信的程序,Modbus 演示程序;可共享T2做波特率发生器