首页 > 编程知识 正文

单片机SFG(单片机参数)

时间:2023-05-05 00:20:31 阅读:76890 作者:3054

电子部件准备1个STC 89C52RC单片机芯片(40Pin直插式DIP封装)

1个10uF铝电解电容器

2个10K直线电阻

1个11.0592MHz石英晶体振动

2个30pF瓷电容器

电子元器件图STC 89C52RC单片机芯片(40Pin直插式DIP封装) :

必须是DIP包。 作为贴片购买的是无法插入面板的10uF铝电解电容器时:

正负判别:从侧面展望电容器外壳,纵向观察,带“-”符号的一侧猛地向下。 这个方向的引线为负,另一侧的引线为正

10K直线电阻:

一般包装上有说明,如果没有,可以通过观察电阻表象计算出电阻值11.0592MHz水晶振动。

注意直型30pF瓷电容器:

不区分正负极,直接连接即可定义STC 89C52RC电气特性针

3358 www.Sina.com/http://www.Sina.com/http://www.Sina.com/T2/p 1.0~p 1.71~8带内部上拉电阻8 T2EX )可以同时进行RST9复位输入,如果将用于完成单片机复位初始化操作的RXD/P3.010串行输入端口通过USB绕到TTL下载机烧程序,该接口一般如果连接到P3.111串行输出端口,并通过USB将其传输到TTL下载机进行烧程序,则该接口通常是下载机的RXD引脚INTO/P3.212外部中断端口0INT1/P3.313外部中断端口1to/p P3.515计时器1外部输入WR/P3.616外部数据存储器写入门RD/P3.717外部数据存储器读取门XTAL218振荡器反相放大器的输入端XTAL119振荡器反相放大器和内部时钟发生电路的输入端VSS20地(GND A1521 ~ 28是带内部上拉电阻8位双向I/,o端口可以输入输出数据的PSEN29外的ROM读栅极信号在访问片外的程序存储器时,这里是存储器读栅极信号ALE/PROG30地址来自片上EPROM程序脉冲ale:p0端口的低位8位地址PROG :作为片上内存在EPROM的芯片输出负脉冲,在EPROM编程中, 为了执行该管脚输入编程脉冲EA31访问外部程序存储器控制信号内部程序指令,连接到电源正(p0.0/ad0 ) p0.7/ad732 )漏极开放的8位双向I/O端口上输入数据

89C52RC的导线必须共连接6处。 要连接的六个管脚的“管脚符号”已经用红色字体表示,每个管脚如何连接在注释中已有说明。

补充:表格注释:

电路图

这是官方文件中记载的51最小系统电路图。

这是另外制作的HD简洁版51的最小系统电路图。

最小系统电路构建在前一标题中另外描绘的“STC 89C52RC最小系统”

查看电路图”,将所有原件插入面包板上进行安装。

安装后如图所示。

下图是后来改进的新构建方法。 比以前更清楚,应该弯曲的地方弯曲腾出地方,减少交叉,容易观察和理解。

烧程序写程序,需要使用USB转动TTL来实现。 添加到最小系统电路。

电路升级

原来的电路需要连接到USBTTL程序下载机烧程序。 USB在TTL下载机上有5V的电源输出,所以不烧程序就连接起来也起到了电源的作用。

USB转动TTL程序下载器的关键是将下载器的TXD、RXD针脚与芯片的TXD、RXD针脚反向连接。

对于USBTTL下载器,只需连接四个针脚,无需连接3.3V的针脚。

软件安装和配置开始前烧51单片机程序所需的环境和软件如下。

从USB到TTL下载程序的驱动程序(这里是使用CH340芯片从USB到TTL下载程序的驱动程序) ) ) ) ) ) ) ) ) ) ) ) ) )。

keil forc 51 ide (版本4 ) ) )。

STC-ISP(v6.85I ) )。

注意:

要在windows10上安装下载程序驱动程序,必须禁用并启动签名驱动程序,然后才能安装

请不要将Keil IDE下载到ARM版本。 没有C51的相关CPU选项

安装USBTTL驱动程序下载百度搜索CH340驱动程序安装即可

安装Keil IDE百度搜索“keilc51”,下载安装即可。 一般都有解读教程。 按照步骤就行了。 注意版本最好是版本

4。

安装STC-ISP百度搜索“STC-ISP”,下载安装即可。 这个软件不需要安装,下载解压缩后双击就可以运行了。

注意:

此软件还提供了CH340等驱动程序,请安装。 创建一个用Keil点亮指示灯的程序,单击" project "-" new project ",然后选择并保存项目文件的位置。

弹出“选择CPU设备类型”对话框,在左侧树中依次选择“Atmel” –
“AT89C52”,点击“OK”即可。

点击“File” – “New”创建一个空文件,直接点击保存,保存为后缀名为c的c语言文件。

在左侧“Project”选项卡中,找到“Source Group 1”,右键点击“Add Files to
Group‘Source Group
1’”,选择刚才保存的后缀名为c的c语言文件,点击“Add”后关闭对话框。

在c语言文件中写入以下代码:

#include <reg52.h>sbit led = P2^0;void main(){led=0;}

保存后,点击以下图标设置输出hex文件:

在弹出的对话框中,切换到“Output”选项卡,勾选“Create HEX
File”,值保持默认,点击“OK”即可。

保存后,点击以下图标开始编译:

输出结果:

Build target 'Target 1'assembling STARTUP.A51...compiling hello-led.c...linking...Program Size: data=9.0 xdata=0 code=18creating hex file from "hello-led"...> "hello-led" - 0 Error(s), 0 Warning(s).

以上表示编译成功。会在项目的同级目录下生成一个以hex为后缀名的文件。

使用STC-ISP软件烧录程序

此时确保USB转TTL驱动程序都已安装好,USB转TTL下载器已插在电脑的USB口上。
下载器插入以后,系统会自动检测USB设备,同时在“设备管理器”中的“端口”中也会有此设备对应的COM端口。

打开STC-ISP软件,首先选择“单片机型号”。这里选择“STC89C52RC”。

检查“串口号”是否检测出下载器的COM端口。

以上就是成功检测到下载器。

点击“打开程序文件”,选择刚才生成的hex文件。

点击“下载/编程”:

此时,先将USB转TTL下载器5V的电源线拔掉,然后再接上,以触发冷启动后监听重新握手来实现程序的刷入。

软件日志输出框内输出结果:

正在重新握手 ... 成功 [0.594"]当前的波特率: 115200正在擦除目标区域 ... 完成 ! [0.312"]正在下载用户代码 ... 完成 ! [0.109"]正在设置硬件选项 ... 完成 ! [0.016"]更新后的硬件选项为:. 当前的时钟频率: 11.088MHz. 系统频率为12T(单倍速)模式. 振荡器的放大增益不降低. 当看门狗启动后,任何复位都可停止看门狗. MCU内部的扩展RAM可用. ALE脚的功能选择仍然为ALE功能脚. P1.0和P1.1与下次下载无关. 下次下载用户程序时,不擦除用户EEPROM区单片机型号: STC89C52RC/LE52RC固件版本号: 6.6.4C操作成功 !

以上即表示程序烧写成功,程序会立即执行。

看到LED成功被点亮。
扩展

程序烧写好了,只要电源一直供电,程序就会永久执行下去。但是不想一直插着下载器,太累赘。后来使用手机数据线(必须是4芯的,刚开始不知道找了个什么设备上的USB线,居然是2芯的),剥开以后,将红色线接电源正极输入,黑色线接GND,USB线接任意的USB口上都可以,51单片机正常运行。

LED 间隔1秒亮灭切换代码:

#include <reg52.h>sbit led = P2^0;void delay(int n) {int i, j;for(i = n; i > 0; i--)for(j = 110; j > 0; j--);}void main(){while(1) {led=~led;delay(1000);}}

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。