文章目录
1 STC系列共有
1.1 程序无法烧录问题
1.1.1 可能的原因及解决方法:
- MCU电源引脚上的一颗47uF电容的原因,去掉了就可以下载了(可能是我的USB串口功率不够吧);
- 同常情况下点击STC-ISP软件 下载/编程 后,接通VCC即可烧录,但也遇到需要接通GND
1.2 单片机外部电路
- 单片机外部晶振两电容的作用:稳定频率和快速起振。典型值是30pF;
1.3 编程
- 宏定义中使用 ‘\’ 续行符语法,表示续行符的下一行与续行符所在的代码是同一行。代码中因为宏定义关键字“#define”只是对当前行有效,所以我们使用续行符来连接起来。应用续行符的时候要注意,在“\”后面不能有任何字符(包括注释、空格),只能直接回车。
1.4 UART应用
1.4.1 UART移植官方例程不正常
可能的原因及解决方法:
- MAIN_Fosc 要和 烧录软件 STC-ISP 中“输入用户程序运行时的RC频率” 一致;
- UART1 初始化的 COMx_InitStructure.UART_BRT_Use = BRT_Timer2; 要使用 BRT_Timer2 , Timer1在工程中应用到了其他地方;
- 使用库函数时收发缓存数组要有足够的空间 COM_TX1_Lenth ;
- 循环发送几组数据时,每组数据间要有一定的延时;
1.5 EEPROM应用
1.5.1 写、擦除操作注意事项
- 每次写之前都要先擦除,每次擦除都是以页(512Byte)为单位;
- 擦除地址注意
1.5.2 程序调试阶段每次烧录程序后都变成了0xFF
- 注意STC-ISP软件的选项配置