找回密码
 立即注册
查看: 420|回复: 0

学习【布丁橘长】有关STC32G12K128 心得_20240905

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:1
  • 最近打卡:2024-07-28 23:13:28

2

主题

3

回帖

27

积分

新手上路

积分
27
发表于 2024-9-5 00:41:08 | 显示全部楼层 |阅读模式
本帖最后由 yingjianruanhua 于 2024-9-5 01:02 编辑

在帖子里面回复,导致码字丢失!!!!!!!!
所以重开新帖

自己(参考官方文档)画了一块STC32G12K最小系统板(问题1)

1. 对P53端口设置为准双向模式
2. 使用STC-ISP 生成延迟函数,修改为指定毫秒延迟(问题2)
3. 烧录代码通电后,PWR灯常亮,WORK灯闪烁

代码如下:
  1. #include <STC32G.H>
  2. sbit LED_WORK = P5^3;
  3. void delayMs(int ms);
  4. void main() {
  5.         // 设置为准双向模式
  6.         P5M0 &= ~0x08;
  7.         P5M1 &= ~0x08;
  8.         
  9.         while(1) {
  10.                 LED_WORK = 0x00;
  11.                 delayMs(300);
  12.                
  13.                 LED_WORK = 0xFF;
  14.                 delayMs(160);
  15.         }
  16.         
  17. }
  18. void delayMs(int ms)                //1毫秒@11.0592MHz
  19. {
  20.         while ( --ms ) {
  21.                 AUXR |= 0x80;                        //定时器时钟1T模式
  22.                 TMOD &= 0xF0;                        //设置定时器模式
  23.                 TL0 = 0xCD;                                //设置定时初始值
  24.                 TH0 = 0xD4;                                //设置定时初始值
  25.                 TF0 = 0;                                //清除TF0标志
  26.                 TR0 = 1;                                //定时器0开始计时
  27.                
  28.                 // 等待定时器溢出
  29.                 while (TF0 == 0);        // 等待TF0标志置位
  30.                 TR0 = 0;                         // 停止定时器0
  31.         }
  32. }
复制代码


碰到的问题:
1. 自己画的板子,焊接过程中,有虚焊,刚好是P53,导致排查问题花费了较长的时间
2. STC-ISP生成的代码,不带循环,添加循环后,需要加上等待重置,否则无法达到期望效果
3. 最开始使用的是KeilMDK,无法添加STC的库,后来才发现应该使用 Keil-C251
4. 我自己的 USB-TYPEC 数据线,无法使用官方的 USBHID模式,不清楚原因。重启了电脑,才可以
5. STC-ISP 烧录软件中,一定要勾选“每次下载前都重新装载文件”。否则因为没烧录最新固件,导致怀疑代码有问题
6. 帖子中的代码不能动,修改后,代码会缺失。就这样吧,难看就难看吧




看 一闪一闪亮晶晶

固件在这里
STC32G12K_P53闪灯.hex (284 Bytes, 下载次数: 16)





回复

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-5-9 09:13 , Processed in 0.112706 second(s), 48 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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