找回密码
 立即注册
查看: 509|回复: 4

STC01 控制LED闪烁

[复制链接]
  • 打卡等级:偶尔看看II
  • 打卡总天数:20
  • 最近打卡:2024-07-26 07:08:58

5

主题

14

回帖

127

积分

注册会员

积分
127
发表于 2024-6-28 00:05:20 | 显示全部楼层 |阅读模式
本帖最后由 标记重捕 于 2024-6-29 07:47 编辑

一 实验目标


自从知道STC8H8K64U核心板可以代替DIP40的89C52插在51开发板上,我就买了一块核心板。
收到核心板后,打算练练手。
如文章题目所示,这次的实验是要控制LED的闪烁。

二 硬件连接


这块核心板并不是所有IO口都有LED,根据原理图,我选择使用P20口的LED作为操作对象。
从电路图中可见,LED的阴极连接了P20口。

三 代码步骤及实现

3.1 包含芯片头文件


使用官方提供的STC8H头文件。

3.2 数据类型重定义


这是官方的数据类型重定义文件,但是我很不喜欢u8 u16这样的命名方式,所以做了更改,改成了uint8_t的形式。

3.3 定义时钟频率


这是官方的数据类型配置文件,这里定义的系统时钟是24MHz。这个频率可以在STCISP软件中更改。



3.4 实现延时函数


调用时钟参数设置延时函数,最小延时单位为1ms。

3.5 LED功能的封装

GPIO初始化

根据数据手册,配置M0 M1,实现配置P20为准双向口。

LED亮



LED灭


LED闪烁



3.6 程序一直运行LED的闪烁


其中SYS_Ready为结构体StartUpInit的成员;
Run为结构体System的成员在Run中每隔300ms变更一次P20端口的电平。

四 实验现象4.1 程序烧录


官方提供的烧录步骤说明。

4.2 现象





LED闪烁演示
花有重开日,人无再少年
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:429
  • 最近打卡:2025-05-08 00:01:49
已绑定手机

19

主题

3196

回帖

4956

积分

论坛元老

积分
4956
发表于 2024-7-20 16:38:15 来自手机 | 显示全部楼层
这个可以用开发板的uart下载吧。也可以直接USB下载吧。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:379
  • 最近打卡:2025-05-08 09:11:24
已绑定手机

28

主题

301

回帖

841

积分

高级会员

积分
841
发表于 2024-8-2 08:54:34 | 显示全部楼层
用是VS_CODE 开发
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:259
  • 最近打卡:2025-05-09 01:00:04

0

主题

34

回帖

767

积分

高级会员

积分
767
发表于 2024-8-3 01:18:19 来自手机 | 显示全部楼层
小坤 发表于 2024-8-2 08:54
用是VS_CODE 开发

可以用vscode开发吗
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:126
  • 最近打卡:2025-05-06 16:45:31
已绑定手机

19

主题

208

回帖

522

积分

高级会员

积分
522
发表于 2024-8-3 08:33:55 | 显示全部楼层
vscode 仅仅是一个代码编辑和查看的工具
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-5-9 06:22 , Processed in 0.289492 second(s), 77 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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