[STM32F1] 断点调试一直在中断程序中循环。。。

[复制链接]
 楼主| juventus9554 发表于 2021-9-12 09:41 | 显示全部楼层 |阅读模式
为什么stm8换了外部晶振,串口发送数据给单片机就没反应了?
jiajs 发表于 2021-9-12 09:43 | 显示全部楼层
晶振是正常的?有图吗
 楼主| juventus9554 发表于 2021-9-12 09:45 | 显示全部楼层
 楼主| juventus9554 发表于 2021-9-12 09:47 | 显示全部楼层
dingy 发表于 2021-9-12 09:49 | 显示全部楼层
时钟设置是不是没设置好啊
yszong 发表于 2021-9-12 09:52 | 显示全部楼层

妙招啊楼上
我还以为是焊到板子上来去不下来哦
ousj 发表于 2021-9-12 09:58 | 显示全部楼层
你可能用的是20X系列的吧,程序宏定义处改掉就好了,我们以前也是20X系列上的16MHz的晶振
hanwe 发表于 2021-9-12 10:00 | 显示全部楼层
先试一下这个
void SystemClock_Init(void)
{
  CLK_HSICmd(ENABLE);//启用内部高速时钟
  CLK_HSIPrescalerConfig(CLK_PRESCALER_HSIDIV1);//配置HSI时钟分频系数为1,16MHZ供给CPU
      /* CLK_HSECmd(ENABLE);                     //外部时钟使能
      CLK_HSICmd(ENABLE);//开启内部高速时钟 16MHz
      CLK_SYSCLKConfig(CLK_PRESCALER_CPUDIV1);//时钟分频设置系统时钟16M不分频
      CLK_ClockSwitchCmd(ENABLE);
      CLK_ClockSwitchConfig(CLK_SWITCHMODE_AUTO, CLK_SOURCE_HSE, DISABLE, CLK_CURRENTCLOCKSTATE_DISABLE); */
}
jlyuan 发表于 2021-9-12 10:02 | 显示全部楼层
你的单片机型号是多少?晶振焊接的是多少MHz的?
xxrs 发表于 2021-9-12 10:04 | 显示全部楼层
我也遇到过这种问题  请问怎么解决的?表示没有找到楼下说的宏定义
chuxh 发表于 2021-9-12 10:06 | 显示全部楼层
在这个文件里,需要修改这个宏定义首先是你的单片机跑外部晶振默认的是24MHz才有必要去改,例如207系列的就是。如果不改,在串口通信中计算的波特率就不正确了
bqyj 发表于 2021-9-12 10:08 | 显示全部楼层
dingy 发表于 2021-9-12 10:10 | 显示全部楼层
在stm8sXXX.h文件里面
tian111 发表于 2021-9-12 10:12 | 显示全部楼层
编译时时钟调成24M是什么意思?
tian111 发表于 2021-9-12 10:14 | 显示全部楼层
在stm8sXXX.h文件里面,有个时钟的定义,把16000000改为24000000
songqian17 发表于 2021-9-12 10:17 | 显示全部楼层
波特率变化了。
jiahy 发表于 2021-9-12 10:18 | 显示全部楼层
以前的晶振是多大的?
supernan 发表于 2021-9-12 10:24 | 显示全部楼层
数据没有发送成功吗
heweibig 发表于 2021-9-12 10:26 | 显示全部楼层
这个串口配置正确了吗
huangchui 发表于 2021-9-12 10:28 | 显示全部楼层
考虑硬件的问题。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

900

主题

12190

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部

900

主题

12190

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部