关于如何不停电下载:
按照手册,不停电下载要用到USB的库文件:
文件下载地址:深圳国芯人工智能有限公司-库函数
下载完成后,打开压缩包“STC_USB_LIBRARY.zip”,
在STC_USB_LIBRARY.zip\库文件\STC-CDC库文件中,复制出来stc_usb_cdc_32g.LIB
将库函数“stc_usb_cdc_32g.LIB”复制到创建工程所在的文件夹中(就是复制到main函数所在文件夹):
按以下步骤,在main目录下添加stc_usb_cdc_32g.LIB文件
添加完成后,main.下面会多出库函数:
在程序中追加以下语句:
有50个警告,都是没使用库里面的函数警告,暂时不管后面给出解决方案。
打开STC-ISP软件,重新打开HEX文件,断电第一次下载程序时,还是需要按P3.2 INTO,再按POWER电源键,松开POWER电源键,ISP软件识别到HID-wire,放开P3.2键。再点击“下载/编程“按键。
新的程序文件下载后,串口那里会显示(COMx)USB-CDC,CDC字样,代表设置成功。后续下载程序都不需要按按键了。
注意事项:
1.烧录的下个程序中必须包含stc_usb_cdc_32g.LIB文件。
2.并且在程序头文件中必须#include "ai_usb.h";
3.程序的初始化中同样需要追加usb_init;和 EA=1;
上述留了一个坑:就是那50个警告怎么消除:
方法如下:
再运行编译:警告变为0了
完整程序:
- #include <AI8051U.H>
- #include "ai_usb.h"
-
- void main(void)
- {
-
- EAXFR = 1; //允许访问扩展的特殊寄存器,XFR
- WTST = 0; //设置取程序代码等待时间,赋值为 0 表示不等待,程序以最快速度运行
- CKCON = 0; //设置访问片内的 xdata 速度,赋值为 0 表示用最快速度访问,不增加额外的等待时间
-
- //设置P2口为准双向IO口
- P2M0 = 0x00;
- P2M1 = 0x00;
-
- usb_init();
- EA = 1;
-
- //点亮第四个灯(P23口)(低电平点亮)
- P23 = 0;
-
- while(1)
- {
-
- }
- }
复制代码
|