程序烧录
就普中的51开发板而言, 程序的烧录是使用usb转串口的ch340g芯片来实现的. 而软件则是有普中开发的烧录软件, 和STC官方开发的烧录软件–STC-ISP. 两者的区别在于功能的多少和自动程度. 就功能而言STC的软件更强大, 就易用性而言, 普中的更加容易上手.
烧写过程
STC-ISP
- 首先要选择要烧写的单片机的型号, 普中A2开发版使用的是stc89c52rc系列单片机, 所以要选择stc89c52rc选项, 而不是stc89c52.
- 选择要烧写的串口, 可以从设备管理器查找.
- 选择要烧写的程序.
- 关闭开发板电源.
- 点击下载程序.
- 打开开发板电源.
- 等待烧写完成
烧写过程中可能遇到波特率的问题, 教程很多.
PZ-ISP
- 选择要烧写的芯片的型号, stc89c52rc series.
- 选择要烧写的串口.
- 选择要烧写的程序.
- 点击下载.
也可能遇到波特率问题.
LED程序
可以用最简单的LED程序来实操一下这个过程.
程序的编写使用keil5.
keil5
程序的下载网上教程很多, 不做分享. 在开发51单片机时, 要使用<REGX52.H>
库文件, 这个文件定义51了引脚的功能对应的变量, 如P2
变量代表着单片机的P2
IO口. 在创建项目的时候应当选择ATMEL公司的AT89C52芯片, 与STC的89C52芯片是兼容的. 而程序编写完成后, 应调整Options for Target 选项中的output, 选中Create HEX File, 否则keil默认不生成二进制文件.
led点亮程序
这个开发版P2
口所连的led是有vcc供电的, 所以要使得led能供工作, 与那个led相连的io口应置为低电平.
#include <REGX52.H>
void main(void)
{
int P2=0xfa;
}
led闪烁
使用到了STC-ISP的软件延时计算器模块来生成我们想要延时的时间的代码, 其中由于开发版使用的晶振是11.0592MHz, 所以应选择这个频率, 又由于使用的是c语言, 所以生成的要是c代码.
#include <REG52.H>
#include <INTRINS.H>
void Delay500ms() //@11.0592MHz
{
unsigned char data i, j, k;
_nop_