找回密码
 立即注册
查看: 160|回复: 10

请问STC8G1K08A的P3.2和P3.3如何作为串口用?| 已解决

[复制链接]
  • TA的每日心情
    慵懒
    2024-4-12 08:51
  • 签到天数: 12 天

    [LV.3]偶尔看看II

    3

    主题

    6

    回帖

    93

    积分

    注册会员

    积分
    93
    发表于 2024-3-9 21:23:55 | 显示全部楼层 |阅读模式
    我按照例程配置如下,官方的例程并没有针对STC8G1K08A的P3.2和P3.3的例程,
    我看了手册发现引脚切换那边的 S1_S[1:0], P3.6, P37 和 P3.2P,3.3的配置都是01.
    所以选择了UART1_SW_P36_P37。


    但是这样串口还是无法正常工作,

    请问STC8G1K08A的P3.2和P3.3应该如何配置成串口使用??

    截图202403092121396936.jpg


    1. void        UART_config(void)
    2. {
    3.         COMx_InitDefine                COMx_InitStructure;                                        //结构定义
    4.         COMx_InitStructure.UART_Mode      = UART_8bit_BRTx;        //模式, UART_ShiftRight,UART_8bit_BRTx,UART_9bit,UART_9bit_BRTx
    5.         COMx_InitStructure.UART_BRT_Use   = BRT_Timer1;                        //选择波特率发生器, BRT_Timer1, BRT_Timer2 (注意: 串口2固定使用BRT_Timer2)
    6.         COMx_InitStructure.UART_BaudRate  = 115200ul;                        //波特率, 一般 110 ~ 115200
    7.         COMx_InitStructure.UART_RxEnable  = ENABLE;                                //接收允许,   ENABLE或DISABLE
    8.         COMx_InitStructure.BaudRateDouble = DISABLE;                        //波特率加倍, ENABLE或DISABLE
    9.         UART_Configuration(UART1, &COMx_InitStructure);                //初始化串口1 UART1,UART2,UART3,UART4
    10.         NVIC_UART1_Init(ENABLE,Priority_1);                //中断使能, ENABLE/DISABLE; 优先级(低到高) Priority_0,Priority_1,Priority_2,Priority_3
    11.         UART1_SW(UART1_SW_P36_P37);                //UART1_SW_P30_P31,UART1_SW_P36_P37,UART1_SW_P16_P17,UART1_SW_P43_P44
    12. }
    复制代码







    截图202403092121551815.jpg
    回复 送花

    使用道具 举报

    该用户从未签到

    551

    主题

    9291

    回帖

    1万

    积分

    管理员

    积分
    14057
    发表于 2024-3-9 22:05:41 | 显示全部楼层
    截图202403092205162430.jpg

    截图202403092205375591.jpg

    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    551

    主题

    9291

    回帖

    1万

    积分

    管理员

    积分
    14057
    发表于 2024-3-9 22:06:12 | 显示全部楼层
    截图202403092206099942.jpg
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    551

    主题

    9291

    回帖

    1万

    积分

    管理员

    积分
    14057
    发表于 2024-3-9 22:06:39 | 显示全部楼层

    8-Pin, 特殊,见下表

    截图202403092206363372.jpg
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    551

    主题

    9291

    回帖

    1万

    积分

    管理员

    积分
    14057
    发表于 2024-3-9 22:09:27 | 显示全部楼层
    截图202403092209222729.jpg
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    551

    主题

    9291

    回帖

    1万

    积分

    管理员

    积分
    14057
    发表于 2024-3-9 22:10:12 | 显示全部楼层
    截图202403092210084043.jpg
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    551

    主题

    9291

    回帖

    1万

    积分

    管理员

    积分
    14057
    发表于 2024-3-9 22:13:02 | 显示全部楼层
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    551

    主题

    9291

    回帖

    1万

    积分

    管理员

    积分
    14057
    发表于 2024-3-9 22:15:18 | 显示全部楼层
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情

    7 小时前
  • 签到天数: 58 天

    [LV.5]常住居民I

    3

    主题

    539

    回帖

    714

    积分

    高级会员

    积分
    714
    发表于 2024-3-9 22:25:43 | 显示全部楼层
    对P_SW1寄存器的B7B6设置01
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    奋斗
    前天 08:29
  • 签到天数: 97 天

    [LV.6]常住居民II

    9

    主题

    556

    回帖

    817

    积分

    高级会员

    积分
    817
    发表于 2024-3-9 22:46:40 | 显示全部楼层
    UART1_SW_P36_P37的值应该就是01,这样配置看起来应该就是将串口1映射到P3.2和P3.3。如果串口不通,再查一下你用的库函数估计还有地方不适合8脚的STC8G1K08A。
    PS:51单片机本来就简单,不推荐使用库函数,问题排查太复杂了。
    回复 支持 反对 送花

    使用道具 举报

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

    本版积分规则

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

    GMT+8, 2024-5-2 16:27 , Processed in 0.070853 second(s), 67 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

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