找回密码
 立即注册
楼主: manz***

STC8系列4组串口同时通信的程序,Modbus 演示程序;可共享T2做波特率发生器

  [复制链接]

该用户从未签到

46

主题

3174

回帖

7173

积分

超级版主

积分
7173
发表于 2024-5-15 21:13:40 | 显示全部楼层
jwd 发表于 2024-5-15 21:02
我刚才测试了一下,使用内部上拉cpu也工作了,但是我还有个疑问,上电时我不加上拉,内部也不上拉,端口 ...

上电时,还没有运行你的用户程序,你的程序做什么操作都无关,因为还没有运行。
上电时,P3.2是高阻,状态不确定,读到可能是高,也可能是低。所以,一定要外接上拉电阻。
USB接充电器时,D+ D-是对地接有电阻的,哟经下拉动作,如果此时P3.2也是低电平,则MCU自动进入USB下载模式。
回复 支持 反对 送花

使用道具 举报

  • TA的每日心情
    奋斗
    昨天 06:43
  • 签到天数: 199 天

    [LV.7]常住居民III

    26

    主题

    967

    回帖

    2484

    积分

    金牌会员

    积分
    2484
    发表于 2024-5-15 21:16:04 | 显示全部楼层
    梁工 发表于 2024-5-15 21:13
    上电时,还没有运行你的用户程序,你的程序做什么操作都无关,因为还没有运行。
    上电时,P3.2是高阻,状 ...

    这下明白了,谢谢梁工!
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    奋斗
    昨天 06:43
  • 签到天数: 199 天

    [LV.7]常住居民III

    26

    主题

    967

    回帖

    2484

    积分

    金牌会员

    积分
    2484
    发表于 2024-5-16 21:59:36 | 显示全部楼层
    梁工 发表于 2024-5-15 21:13
    上电时,还没有运行你的用户程序,你的程序做什么操作都无关,因为还没有运行。
    上电时,P3.2是高阻,状 ...

    梁工,还得麻烦你下,我现在用试验箱也出现这种问题了,还是插电脑usb能运行,插充电头不能运行
    1. #include "stc32g.h"
    2. #include "stc32_stc8_usb.h"
    3. char *USER_DEVICEDESC = NULL;
    4. char *USER_PRODUCTDESC = NULL;
    5. char *USER_STCISPCMD = "@STCISP#";
    6. void Delay500ms(void)        //@11.0592MHz
    7. {
    8.         unsigned long edata i;
    9.         _nop_();
    10.         _nop_();
    11.         i = 1382398UL;
    12.         while (i) i--;
    13. }
    14. void main()
    15. {
    16.          WTST= 0;
    17.          CKCON= 0;
    18.          EAXFR= 1;       
    19. //    P_SW2 |= 0x80;
    20.    
    21.     P0M1 = 0x00;   P0M0 = 0x00;
    22.     P1M1 = 0x00;   P1M0 = 0x00;
    23.     P2M1 = 0x00;   P2M0 = 0x00;
    24.     P3M1 = 0x00;   P3M0 = 0x00;
    25.     P4M1 = 0x00;   P4M0 = 0x00;
    26.     P5M1 = 0x00;   P5M0 = 0x00;
    27.     P6M1 = 0x00;   P6M0 = 0x00;
    28.     P7M1 = 0x00;   P7M0 = 0x00;
    29.     P3M0 &= ~0x03;
    30.     P3M1 |= 0x03;
    31.     P3PU = 0x04;
    32.     IRC48MCR = 0x80;
    33.     while (!(IRC48MCR & 0x01));
    34.    
    35.     USBCLK = 0x00;
    36.     USBCON = 0x90;
    37.    
    38.     usb_init();                                     //USB CDC 接口配置
    39.                 EUSB=1;
    40. //    IE2 |= 0x80;                                    //使能USB中断
    41.     EA = 1;
    42.    
    43.     while (DeviceState != DEVSTATE_CONFIGURED);     //等待USB完成配置
    44.                 P40=0;
    45.                 while(1)
    46.                 {
    47.                         Delay500ms();
    48.                         P60=!P60;
    49.                
    50.                 }
    51. //    while (1);
    52. }
    53. /************************************************
    54. 函数功能:USB-CDC串口接收数据的回调函数
    55. 函数描述:回调函数由USB中断在接收到串口数据时自动调用
    56.           回调函数处理完成串口数据后需要返回1
    57. 函数返回:返回1:USB中断服务程序自动完成后续的收尾工作
    58.           返回0:USB会暂停接收串口数据,直到用户自行调用
    59.                  usb_OUT_done()函数后USB才会重新恢复接收数据
    60. 注意事项:当函数返回1时用户无需调用usb_OUT_done()
    61.           只有返回0时才需要调用usb_OUT_done()进行手动收尾
    62.           强烈建议usb_OUT_callback返回1
    63. ************************************************/
    64. BOOL usb_OUT_callback()
    65. {
    66.     USB_SendData(UsbOutBuffer,OutNumber);           //发送数据缓冲区,长度(接收数据原样返回, 用于测试)
    67.    
    68.     return 1;
    69. }
    复制代码
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    奋斗
    昨天 06:43
  • 签到天数: 199 天

    [LV.7]常住居民III

    26

    主题

    967

    回帖

    2484

    积分

    金牌会员

    积分
    2484
    发表于 2024-5-16 22:01:01 | 显示全部楼层
    本帖最后由 jwd 于 2024-5-16 22:04 编辑
    梁工 发表于 2024-5-15 21:13
    上电时,还没有运行你的用户程序,你的程序做什么操作都无关,因为还没有运行。
    上电时,P3.2是高阻,状 ...

    我用的是stc32的9.6试验箱,请问还有那里需要设置吗?

    点评

    试验箱已经考虑好了这些问题。  详情 回复 发表于 2024-5-16 23:07
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    46

    主题

    3174

    回帖

    7173

    积分

    超级版主

    积分
    7173
    发表于 2024-5-16 23:07:16 | 显示全部楼层
    jwd 发表于 2024-5-16 22:01
    我用的是stc32的9.6试验箱,请问还有那里需要设置吗?

    试验箱已经考虑好了这些问题。
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    奋斗
    昨天 06:43
  • 签到天数: 199 天

    [LV.7]常住居民III

    26

    主题

    967

    回帖

    2484

    积分

    金牌会员

    积分
    2484
    发表于 2024-5-16 23:14:53 | 显示全部楼层
    梁工 发表于 2024-5-16 23:07
    试验箱已经考虑好了这些问题。

    那我这个现象是怎么出来的呢?

    点评

    按理不应该出现这个现象的,学习板的用户群非常大,没人遇到过,我也没听说过。 既然是学习板,你测试一个STC的例程看看,比如数码管显示的。  详情 回复 发表于 2024-5-16 23:18
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    46

    主题

    3174

    回帖

    7173

    积分

    超级版主

    积分
    7173
    发表于 2024-5-16 23:18:29 | 显示全部楼层
    jwd 发表于 2024-5-16 23:14
    那我这个现象是怎么出来的呢?

    按理不应该出现这个现象的,学习板的用户群非常大,没人遇到过,我也没听说过。
    既然是学习板,你测试一个STC的例程看看,比如数码管显示的。
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    奋斗
    昨天 06:43
  • 签到天数: 199 天

    [LV.7]常住居民III

    26

    主题

    967

    回帖

    2484

    积分

    金牌会员

    积分
    2484
    发表于 2024-5-16 23:27:05 | 显示全部楼层
    本帖最后由 jwd 于 2024-5-16 23:30 编辑
    梁工 发表于 2024-5-16 23:18
    按理不应该出现这个现象的,学习板的用户群非常大,没人遇到过,我也没听说过。
    既然是学习板,你测试一 ...

    我现在就用试验箱闪烁P60的那个灯,插电脑USB正常闪烁,插充电头就不亮jwd:


    00a50be4f90c01455faa6ab1f293b174.jpg

    00a50be4f90c01455faa6ab1f293b174.mp4

    2.41 MB, 下载次数: 6

    点评

    STC32G学习板V9.6版本程序,直接下载“01.1-用P6口做跑马灯-入门版”或“01.2-用P6口做跑马灯”,不管使用电脑USB供电还是用充电器充电,均正常,所以真不知道你是什么情况了。  详情 回复 发表于 2024-5-17 10:56
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    奋斗
    昨天 06:43
  • 签到天数: 199 天

    [LV.7]常住居民III

    26

    主题

    967

    回帖

    2484

    积分

    金牌会员

    积分
    2484
    发表于 2024-5-16 23:33:06 | 显示全部楼层
    梁工 发表于 2024-5-16 23:18
    按理不应该出现这个现象的,学习板的用户群非常大,没人遇到过,我也没听说过。
    既然是学习板,你测试一 ...

    工程文件

    stc32g_cdc_interrupt_demo (2).zip

    84.86 KB, 下载次数: 7

    点评

    你这个程序是USB-CDC程序,有USB通信,必须使用电脑USB才行,用充电器供电没有USB通信的。  详情 回复 发表于 2024-5-17 10:57
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    昨天 08:08
  • 签到天数: 45 天

    [LV.5]常住居民I

    0

    主题

    4

    回帖

    214

    积分

    中级会员

    积分
    214
    发表于 2024-5-17 08:09:55 | 显示全部楼层
    学习一下,多谢
    回复 支持 反对 送花

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

    GMT+8, 2024-6-15 04:45 , Processed in 0.092676 second(s), 73 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

    快速回复 返回顶部 返回列表