IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> 关于CH552G单片机连接电脑和烧录程序的细节总结 -> 正文阅读

[嵌入式]关于CH552G单片机连接电脑和烧录程序的细节总结

前言:昨天tb上买的CH552单片机到货了,开始着手研究的时候,发现无论在哪儿,相关资料都非常零散,所以我打算开一个帖来记录和整理那些零散的知识。今天这一篇就是记录一下CH552G单片机从连接电脑到写程序到烧录的各种细节问题。

因为我手上买的是CH552G的单片机,所以本文就以CH552G为参考来介绍

?官方引脚定义即是如此,可以看到和其他单片机一样,CH552G也有TXD和RXD,学习过STC都知道下载程序必须用串口下载,虽然CH552G也可以使用串口下载,但是还有更方便的直接通过USB下载,即使用D+D-数据线来进行下载(后面我会补充使用串口下载的方法)

一、通过D+D-线来进行第一次烧录程序

先来看一下,为了下载我们需要准备一下外围电路

?注意:①.供电电压为5v,供电脚接VCC,此时V33引脚会输出3.3v电压,但不建议为其他3.3设备进行供电;②.两个104电容不可或缺,缺少单片机可能会不工作,这点请注意;③.bt1开关是为了后续下载使用。

在搭建好外围电路之后就可以着手开始烧录程序了

首先我们要先去沁(qìn)恒官网下载烧录程序:WCHISPTool_Setup.exe - 南京沁恒微电子股份有限公司CH54X,CH55X,CH56X,CH57X,CH58X,CH32F10X,CH32V10X的单片机系列芯片程序烧录软件,支持用户程序烧录、校验以及DataFlash操作,支持USB、串口以及网络三种接口。https://www.wch.cn/downloads/WCHISPTool_Setup_exe.html

①.下载完后打开界面是这样的:

②.此时我们将已经搭好外围电路的设备连接电脑:

?可以看到设备上已经弹出设备了(注意:如果你的CH552设备之前被别人烧录过一次,那么可能第一次连接不会显示设备,这种情况在后面[烧录程序]部分会详细说)

③.下载方式选择[USB]模式,在[用户程序文件]选择一个hex文件进行烧录,勾选[下载完成后运行目标程序]

?④.点击下载

(注意:如果连接的设备长期处于[下载模式]的话设备是会自动重启一次的,这个之后也会详细说)

⑤.至此,你的单片机就可以开始工作啦!

接下来我来介绍一下怎么给CH552G写一个简单的程序

二、编写并二次烧录程序

CH552采用的依旧是8051内核的单片机,提到8051我们就会自然的想到KILE来写程序,本文将使用kile5来进行示范

省去下载kile5程序的过程,直接步入正题

①.在烧录程序中点击功能,选择将WCH系列添加进kile器件库中

此时在kile5的安装目录中 [例:D:\Keil_v5\] 的UV4文件夹中就能看到 wch.cdb文件了(完整示例目录D:\Keil_v5\UV4)

?至此还暂时没完,还得在kile配置文件中添加识别这个器件的信息

回到kile5安装目录目录 [D:\Keil_v5] ,找到“TOOLS.INI”文件

?以记事本的形式打开,并在指定行中添加一下内容

CDB88=UV4\WCH.CDB ("WCH MCU Database")

添加完成后保存并退出

?②.在kile5中新建工程并选择CH552单片机

打开kile5 -> project -> New μVision Project -> [选择工程需要保存的目录] -> 在器件选择中选择CH552 -> 点[否] ->

?在器件选择完后需要引入CH552独有的.h头文件,我们可以去沁恒官网下载
CH552EVT.ZIP - 南京沁恒微电子股份有限公司CH551/2芯片头文件,评估板说明及参考应用例程请参考CH554EVT.ZIP。https://www.wch.cn/downloads/CH552EVT_ZIP.html

?下载完导入后我们写一个简单的IO口高低电平交替闪烁的例程

#include "ch552.h"                // 导入CH552的头文件

sbit P32 = P3^2;

void delay(unsigned int time){
	while(time--);
}

void main(){
	while(1){
		P32 = 0;
		delay(50000);
		P32 = 1;
		delay(50000);
	}
}

注意:记得生成.hex文件(Alt+F7 -> Output -> √Create HEX File)

?然后我们的工程文件中就可以看到生成的.hex文件了(.../Objects/xxx.hex)

?③.第二次烧录(与第一次烧录有所不同)

为什么说与初次烧录不同呢?因为CH552设计是有 [运行模式] 和 [烧录模式] 的,如果原本内部没有程序,那么会直接进入烧录模式,这也就解释了为什么我们第一次连接电脑的时候就能直接下载程序(沁恒这么设计的理由应该也是为了方便批量化生产);那么我们在第一次烧录程序完成之后呢,下次上电的时候就会直接进入运行模式,而不会进行烧录模式了(而且如果长时间处于烧录模式,单片机会自动重启进入默认的运行模式)。还记得之前外部去驱动电路D+的接VCC的按键吗?那个就是为了烧录而准备的,要想在下次上电的时候进入烧录模式,只需要在上电的时候保持D+为高电平,之后在松开就可以了

CH552运行模式和烧录模式的切换

像之前一样选择刚刚生成的hex文件,点击下载,程序就烧录进去了,观察到的现象就是连接P32的LED在闪烁。

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2022-07-04 23:07:47  更:2022-07-04 23:10:39 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 0:36:59-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码