找回密码
 立即注册
楼主: fei2568

8051U实验箱学习记录 | 学习打卡典范

[复制链接]
  • 打卡等级:偶尔看看II
  • 打卡总天数:23
  • 最近打卡:2025-04-19 12:17:08
已绑定手机

1

主题

61

回帖

285

积分

中级会员

积分
285
发表于 2024-12-9 18:47:07 | 显示全部楼层
sr*** 发表于 2024-12-9 08:35
我搜索的别人也是建议是装在不同目录,桌面图标直接标注不同的c51\c251\ARM,昨天先装了c51和c251 ...

我后面有正确的安装方法,要装到一起
在13楼
https://www.stcaimcu.com/forum.p ... 2387&pid=127373
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看II
  • 打卡总天数:23
  • 最近打卡:2025-04-19 12:17:08
已绑定手机

1

主题

61

回帖

285

积分

中级会员

积分
285
发表于 2024-12-9 19:08:28 | 显示全部楼层

下载中断扩展插件

image.png

image.png

image.png

这样就好了

再来回顾一下开发环境的搭建

1.安装keil软件,C51 C251 ARM(好像是管STM32系列的)

2.注册机激活keil,要分3次激活,分别为C51 C251 ARM

3.下载ISP 软件,添加芯片包

4.下载keil扩展中断号的软件

也就这些吧

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看II
  • 打卡总天数:23
  • 最近打卡:2025-04-19 12:17:08
已绑定手机

1

主题

61

回帖

285

积分

中级会员

积分
285
发表于 2024-12-9 19:24:36 | 显示全部楼层

下载第一个程序到实验箱

首先使用 USB 线将实验箱与电脑正确连接,然后打开 AIapp-ISP-v6.94R 或以上版本。

image.png

在上面的界面中,下面几点需要注意: 1、 单片机型号选择“AI8051U-34K64”。 2、 实验箱 使用硬件 USB 接口下载。进入 USB 下载模式需要先按住实验箱上的 P3.2/INT0 按键(P32 接地),然后按一下 ON/OFF 电源按键 / 断电,接着松开 ON/OFF 电源按键 / 上电,最后可松开。 P3.2/INT0 按键。正常情况下就能识别出“(HID1) USB Writer”设备。 点击界面中的“打开程序文件”按钮,在出现的打开程序代码文件的对话框中选择需要 下载的文件。

image.png

文件正确打开后,点击界面中的“下载 / 编程”按钮开始下载代码

image.png

下载成功,会出现如下画面:

image.png

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看II
  • 打卡总天数:23
  • 最近打卡:2025-04-19 12:17:08
已绑定手机

1

主题

61

回帖

285

积分

中级会员

积分
285
发表于 2024-12-9 21:15:10 来自手机 | 显示全部楼层
刚刚边吃饺子边学完了第6集
共3部分内容
1什么是gpio
2按键输入检测
3课后小练
IMG_20241209_211439.jpg
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民II
  • 打卡总天数:85
  • 最近打卡:2025-04-30 08:49:41

1

主题

19

回帖

403

积分

中级会员

积分
403
发表于 2024-12-10 08:25:18 | 显示全部楼层
fei2*** 发表于 2024-12-9 18:47
我后面有正确的安装方法,要装到一起
在13楼
https://www.stcaimcu.com/forum.php?mod=redirect&goto=fin ...

谢谢,我刚刚也安装三个在一个文件夹成功了(虽然不会用),可能以前安装有误。还有就是注册的时候必须要管理员权限打开keil。也可能以前我没注意这个信息,误认为注册失败。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看II
  • 打卡总天数:23
  • 最近打卡:2025-04-19 12:17:08
已绑定手机

1

主题

61

回帖

285

积分

中级会员

积分
285
发表于 2024-12-10 08:27:32 | 显示全部楼层

新建工程

image.png

新建一个文件保存为main.c文件在工程目录下面

image.png

将刚刚新建的main.c文件添加到工程里面(点一下add就好了)

image.png

image.png

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看II
  • 打卡总天数:23
  • 最近打卡:2025-04-19 12:17:08
已绑定手机

1

主题

61

回帖

285

积分

中级会员

积分
285
发表于 2024-12-10 11:18:07 | 显示全部楼层

设置项目1(CPU 模式选择Source模式)

如下图所示,在“Target1”所在的图标点击鼠标右键,并选择“Options for Target ' Target 1'...”

image.png

在弹出的“Options for Target ' Target 1'”窗口中选择“Target”选项页,在“CPU Mode”的下拉选项中选 择“Source (251 Native)”

image.png

80251 的指令模式有“Binary”和“Source”两种模式,Ai8051U 系列目前只支持“Source”模式 由于 Ai8051 U 系列 单片机在中断中的压栈和出栈都是 4 字节模式,建议“ 4 Byte Interrupt Frame Size ”选 项也打上钩

设置项目 2(“Memory Model”选择 XSmall 模式)

在“Memory Model”的下拉选项中选择“XSmall: ...”模式。80251 的存储器模式,在 Keil 环境下有如下 图所示的 5 种模式:

image.png

设置项目 3(“Code Rom Size”选择 Large 或者 Huge 模
式)

在“Code Rom Size”的下拉选项中选择“Large: ...”或者“Huge: ...”模式 80251 的代码大小模式,在 Keil 环境下有如下图所示的 5 种模式:

image.png

设置项目 4(超 64K 代码的相关设置)

如果代码大小在 64K 以内,选择“Large”模式即可。若代码大小超过 64K,则需要选择“Huge” 模式,并需要保证单个函数以及单个文件的代码大小必须在 64K 字节以内,并且单个表格的数据量也必 须在 64K 字节以内。同时还需要作如下图所示的设置:---这一项暂时选择Large ROM 不填

image.png

设置项目 5(HEX 文件格式设置)

“Options for Target ' Target 1'”窗口中选择“Output”选项页,勾选其中的“Create HEX File”选项。若 程序空间超过 64K,则“HEX format”必须选择“HEX-386”模式,只有程序空间在 64K 以内,“HEX format”才可选择 “HEX-80”模式;---这一项暂时选择HEX-80

image.png

完成上面的设置后,鼠标单击如下图所示的编译按钮,如果代码没有错误,即可生成 HEX 文件

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看II
  • 打卡总天数:23
  • 最近打卡:2025-04-19 12:17:08
已绑定手机

1

主题

61

回帖

285

积分

中级会员

积分
285
发表于 2024-12-10 13:07:29 | 显示全部楼层

添加头文件,编写一个最简单的工程

c 语言中 include 用法
#include 命令是预处理命令的一种,预处理命令可以将别的源代码内容插入到所指定的位置。 有两种方式可以指定插入头文件:
#include <文件名.h>

#include "文件名.h"
使用尖括号< >和双引号" "的区别在于头文件的搜索路径不同: 使用尖括号< >,编译器会到系统路径下查找头文件;
使用双引号" ",编译器首先在当前目录下查找头文件,如果没有找到,再到系统路径下查找。

这里我们将头文件放到程序根目录下使用双引号来引用头文件

image.png

将下载下来的ai8051u.h文件复制到程序根目录下,并编写代码

image.png

image.png

修改一下代码编码格式和tab缩进

image.png

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看II
  • 打卡总天数:23
  • 最近打卡:2025-04-19 12:17:08
已绑定手机

1

主题

61

回帖

285

积分

中级会员

积分
285
发表于 2024-12-10 13:45:55 | 显示全部楼层

点亮一个led的代码

#include "ai8051u.h"

void main(void)
{
//下面4行为配置IO口工作模式
P0M0=0x00;
P0M1=0x00;
P4M0=0x00;
P4M1=0x00;
while(1)
{
//这里面写代码
P40=0;
P00=0;
}
}

13.2 配置 I/O 口
每个 I/O 的配置都需要使用两个寄存器进行设置。
以 P0 口为例,配置 P0 口需要使用 P0M0 和 P0M1 两个寄存器进行配置,如下图所示:
即 P0M0 的第 0 位和 P0M1 的第 0 位组合起来配置 P0.0 口的模式 即 P0M0 的第 1 位和 P0M1 的第 1 位组合起来配置 P0.1 口的模式 其他所有 I/O 的配置都与此类似。

image.png

注意:
0 0 准双向口(传统8051端口模式,弱上拉)
灌电流可达20mA,拉电流为270~150μA(存在制造误差)
0 1 推挽输出(强上拉输出,可达20mA,要加限流电阻) 1 0 高阻输入(电流既不能流入也不能流出)
1 1
开漏模式(Open-Drain),内部上拉电阻断开 开漏模式既可读外部状态也可对外输出(高电平或低电 平)。如要正确读外部状态或需要对外输出高电平,需外 加上拉电阻,否则读不到外部状态,也对外输不出高电平。
===【开漏工作模式】,对外设置输出为 1,等 同于 【高阻输入】
===【开漏工作模式】,【打开内部上拉电阻 | 或外部加上拉电阻】,简单等同于 【准双向口】
注:n = 0,1,2,3,4,5,6,7
虽然每个 I/O 口在弱上拉(准双向口)/强推挽输出/开漏模式时都能承受 20mA 的灌电流(还是要加限流 电阻,如 1K、560Ω、472Ω 等),在强推挽输出时能输出 20mA 的拉电流(也要加限流电阻),但整个芯片 的工作电流推荐不要超过 90mA,即从 VCC 流入的电流建议不要超过 90mA,从 GND 流出电流建议不要超过 90mA,整体流入/流出电流建议都不要超过 90mA。

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看II
  • 打卡总天数:23
  • 最近打卡:2025-04-19 12:17:08
已绑定手机

1

主题

61

回帖

285

积分

中级会员

积分
285
发表于 2024-12-10 19:25:39 | 显示全部楼层

下面代码为点亮第一个LED 的代码

#include "ai8051u.h"

void main(void)
{
	//下面4行为配置IO口工作模式
	P0M0=0x00;
	P0M1=0x00;
	P4M0=0x00;
	P4M1=0x00;
	while(1)
	{
		//这里面写代码
		P40=0;
		P00=0;
	}
}
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-1 19:55 , Processed in 0.723831 second(s), 113 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表