[STM8] stm8L连不上电脑

[复制链接]
1425|13
 楼主| aouwen 发表于 2017-3-4 14:31 | 显示全部楼层 |阅读模式
本帖最后由 aouwen 于 2017-3-4 14:46 编辑

stm8l不知道是不是程序写错了,插到电脑下载没反应            用的是stm8L051


用flash loader 和usb线烧的,烧了一个程序之后就没反应了
dsadas.jpg
 楼主| aouwen 发表于 2017-3-4 14:47 | 显示全部楼层
有个大神跟我说是写保护,但是他用的stvd,不知道我的iar环境下如果接除写保护
mmuuss586 发表于 2017-3-4 15:41 | 显示全部楼层
删除写保护的话,要用串口的BOOT更新下程序才行;
sky.sun.zz 发表于 2017-3-4 16:54 | 显示全部楼层
无标题.png

解除芯片的读保护即可
myiclife 发表于 2017-3-4 23:27 | 显示全部楼层
驱动有问题。
myiclife 发表于 2017-3-4 23:28 | 显示全部楼层
没有连接好,检查硬件电路试试。
 楼主| aouwen 发表于 2017-3-6 11:44 | 显示全部楼层
sky.sun.zz 发表于 2017-3-4 16:54
解除芯片的读保护即可

写保护解决了,现在有个问题是LSE不起振,知道是什么原因吗。
我用CLK_LSEConfig(LSE_ON);
来起振,后面用whlie(CLK_GetFlagstatus(CLK_FLAG_LSERDY)==reset){
                               i++;
                                delayms(100);
                                if(i>100)
                                    break;
                             
}
sky.sun.zz 发表于 2017-3-6 11:58 | 显示全部楼层
你好像没有使能LSE。
官方的代码是:
void CLK_Configuration(void)
{
  CLK_ECKR   |=  0X1;            //开启外部时钟 ECKR:外部时钟寄存器 HSEEN=1:打开
     while(!(CLK_ECKR&0X2));    //等待外部时钟HSErdy稳定
  CLK_CKDIVR &=  0XF8;           //CPU无分频,  CPUDIV的低3位=0
  CLK_SWR   =    0XB4;           //SWR:主时钟切换寄存器,0XB4:HSE,0XD2:LSI,0XE1:HSI
      while(!(CLK_SWCR&0X8));   //SWCR切换控制寄存器,这里要等SWIF=1
  CLK_SWCR |=    0X2;            //SWEN=1:使能外部时钟
}
Bjorn 发表于 2017-3-8 21:12 | 显示全部楼层
BOOT没启动啊
拉克丝 发表于 2017-3-9 22:00 | 显示全部楼层
驱动问题吗??
backlugin 发表于 2017-3-9 22:44 | 显示全部楼层
是不是硬件存在问题了。
backlugin 发表于 2017-3-9 22:46 | 显示全部楼层
应该是jlink存在问题。
 楼主| aouwen 发表于 2017-3-10 14:56 | 显示全部楼层
sky.sun.zz 发表于 2017-3-6 11:58
你好像没有使能LSE。
官方的代码是:
void CLK_Configuration(void)

CLK_SWCR |=0X2;
这个寄存器是使能LSE吗?
sky.sun.zz 发表于 2017-3-10 15:41 | 显示全部楼层
注释都在8楼呀:
CLK_ECKR   |=  0X1;            //开启外部时钟 ECKR:外部时钟寄存器 HSEEN=1:打开
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

24

帖子

1

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