小弟刚学STM8,遇到个问题,望不吝赐教我刚刚在测试STM8的UART的时候,发现我所使用的STM8S003好像烧不进程序了,就是进入debug界面的时候的程序更新了,然后也跳出busy那个对话框了,但是用串口调试助手测试发现
单片机上跑的还是之前下载进去的程序。我又加了个操作IO的程序,按download and debug,编译器说是烧进去了,但是那个操作IO的程序并没有发挥作用。我以为是单片机坏了,又焊了一片STM8S003,只下载那个IO(闪烁灯)程序,但还是没有效果。调试器上暂停,显示寄存器是更改了(PC_ODR_ODR3有时是1,有时是0,PC_CR1_C13是1,PC_DDR_DDR3也是1),但是IO口上无论LED还是万用表都没反应,万用表量下来发现是浮空。下面是那个闪烁灯的代码
- #include"iostm8s003f3.h"
- int main()
- {
- int i,j;
- CLK_CKDIVR = 0x00;
- PC_DDR |= 0x08;
- PC_CR1 |= 0x08;
- PC_CR2 |= 0x00;
- while(1)
- {
- for(i=0;i<300;i++)
- for(j=0;j<200;j++);
- PC_ODR ^= 0x08;
- }
- }
开发环境是IAR FOR STM8 2.20,在官网上下载,注册的8K代码限制版。然后ST-LINK是淘宝上买的那种U盘型的