找回密码
 立即注册
查看: 353|回复: 10

求大神指点

[复制链接]
  • 打卡等级:常住居民II
  • 打卡总天数:89
  • 最近打卡:2026-02-19 18:05:06
已绑定手机

28

主题

18

回帖

378

积分

中级会员

积分
378
发表于 2025-11-26 17:50:09 来自手机 | 显示全部楼层 |阅读模式
我现在的单片机是STC32G12K128-LQFP64,硬件电路板P1接灯,其余都为空脚,未连接任何硬件!
这个是我以前学习的51 8位单片机汇编语言程序
,求大神帮忙还添加点什么程序,把这个程序弄进去STC32G12K128,程序运行起来!

START: MOV   R0, #8        
             MOV   A,  #01111111B
LOOP:  MOV   P1, A         
              ACALL DELAY         
              RR    A           
              DJNZ  R0, LOOP      
              JMP   START   
   
DELAY:  MOV  R5,#50         
   DLY1:   MOV  R6,#100         
   DLY2:   MOV  R7,#100         
               DJNZ R7,$              
               DJNZ R6,DLY2        
               DJNZ R5,DLY1        
               RET                 
                      END               
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:586
  • 最近打卡:2026-07-04 12:34:03
已绑定手机

112

主题

4958

回帖

1万

积分

荣誉版主

无情的代码机器

积分
10758
发表于 2025-11-26 19:35:32 | 显示全部楼层
三天不学习,赶不上刘少奇~
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:316
  • 最近打卡:2026-07-04 08:25:57

18

主题

261

回帖

345

积分

中级会员

积分
345
发表于 2025-11-27 08:28:34 | 显示全部楼层
都32位了,直接用C呗,移植性很强,相信能学会汇编,定然是能学会C的
回复

使用道具 举报 送花

  • 打卡等级:常住居民II
  • 打卡总天数:89
  • 最近打卡:2026-02-19 18:05:06
已绑定手机

28

主题

18

回帖

378

积分

中级会员

积分
378
发表于 2025-11-27 08:47:09 来自手机 | 显示全部楼层
猫虎的 发表于 2025-11-27 08:28
都32位了,直接用C呗,移植性很强,相信能学会汇编,定然是能学会C的

还是汇编自学方便,程序工工整整,C语言一大把符号,看着头疼
回复

使用道具 举报 送花

  • 打卡等级:常住居民II
  • 打卡总天数:89
  • 最近打卡:2026-02-19 18:05:06
已绑定手机

28

主题

18

回帖

378

积分

中级会员

积分
378
发表于 2025-11-27 08:48:27 来自手机 | 显示全部楼层
ercircle 发表于 2025-11-26 19:35
例程包里有汇编跑马灯

https://www.stcaimcu.com/data/download/DemoCode/STC32G-DEMO-CODE-V9.6.zip

大神,这些我也有的,这些程序为实验箱量身定做程序,我的除了p1,其他都是空着,希望程序简单化,求大神指点

点评

学习论坛课程,自己动手丰衣足食 陈桂友老师-STC单片机教学视频 国芯人工智能技术交流网站 - AI32位8051交流社区 《8051U深度入门到32位51大型实战视频》,【免费 + 包邮 送】实验箱@Ai8051U,100万套 - 字库生成  详情 回复 发表于 2025-11-27 09:05
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:586
  • 最近打卡:2026-07-04 12:34:03
已绑定手机

112

主题

4958

回帖

1万

积分

荣誉版主

无情的代码机器

积分
10758
发表于 2025-11-27 09:05:14 | 显示全部楼层
三天不学习,赶不上刘少奇~
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:295
  • 最近打卡:2026-07-03 15:36:22
已绑定手机

22

主题

663

回帖

2480

积分

金牌会员

积分
2480
发表于 2025-11-27 09:22:34 | 显示全部楼层
                        CSEG        AT         0
                        JMP                START

START: MOV   R0, #8        
             MOV   A,  #01111111B
LOOP:  MOV   P1, A         
              ACALL DELAY         
              RR    A           
              DJNZ  R0, LOOP      
              JMP   START   
   
DELAY:  MOV  R5,#50         
   DLY1:   MOV  R6,#100         
   DLY2:   MOV  R7,#100         
               DJNZ R7,$              
               DJNZ R6,DLY2        
               DJNZ R5,DLY1        
               RET                 
                      END
回复

使用道具 举报 送花

  • 打卡等级:以坛为家III
  • 打卡总天数:747
  • 最近打卡:2026-07-03 20:10:40

51

主题

200

回帖

2663

积分

金牌会员

积分
2663
发表于 2025-11-27 10:01:25 | 显示全部楼层
我作为新手的学习心得分享给你:
1.STC新型单片机使用时都要配置端口工作模式。
2.还要启用扩展寄存器(XFR)访问使能。
3.STC32或AI8051单片机还要设置程序指令延时参数和提高访问XRAM速度的设置。



我对汇编一窍不通,根据版主的提示看了跑马灯例程的汇编程序后我觉得你的代码应该添加这些配置才能工作,但添加的位置我不懂你可以试试,同时也请高手指正。
1、$include (../../comm/STC32G.INC)
2、MOV     WTST, #00H     ;设置程序指令延时参数,赋值为0可将CPU执行指令的速度设置为最快
3、MOV     CKCON,#00H     ;提高访问XRAM速度
4、ORL     P_SW2,#080H    ;使能访问XFR

回复

使用道具 举报 送花

  • 打卡等级:常住居民II
  • 打卡总天数:89
  • 最近打卡:2026-02-19 18:05:06
已绑定手机

28

主题

18

回帖

378

积分

中级会员

积分
378
发表于 2025-11-27 10:14:49 来自手机 | 显示全部楼层
乐此不疲 发表于 2025-11-27 10:01
我作为新手的学习心得分享给你:
1.STC新型单片机使用时都要配置端口工作模式。
2.还要启用扩展寄存器(XFR) ...

感谢
回复

使用道具 举报 送花

  • 打卡等级:以坛为家III
  • 打卡总天数:939
  • 最近打卡:2026-07-04 02:00:58

14

主题

1389

回帖

7588

积分

论坛元老

积分
7588
发表于 2025-11-27 11:28:21 | 显示全部楼层
给你一个何宾老师的编程框架





  1. ;*******************************************************************
  2. $include (STC32G.INC)
  3. data_seg1 segment code
  4. rseg data_seg1
  5. TABLE: DW 0x0123,0x4567,0x89ab,0xcdef ;four data is in code memory (ff:xxxx)
  6. ;*******************************************************************
  7. data_seg2 segment edata
  8. rseg data_seg2
  9. STORE: DSW 4                                                ; 4*2=8B (00:xxxx) EDATA
  10. ;*******************************************************************
  11. prog_seg segment code               ;复位入口地址
  12.         rseg prog_seg
  13.         LJMP main
  14.         ORG 0x220
  15. main:
  16.         MOV     SPX,#0100H     ;设置堆栈指针初始值
  17.         MOV     WTST, #00H     ;设置程序指令延时参数,赋值为0可将CPU执行指令的速度设置为最快
  18.         MOV     CKCON,#00H     ;提高访问XRAM速度
  19.         ORL     P_SW2,#080H    ;使能访问XFR
  20.         MOV     P1M0, #00H
  21.         MOV     P1M1, #00H
  22.                
  23. START:  MOV   R0, #8        
  24.         MOV   A,  #01111111B
  25. LOOP:   MOV   P1, A         
  26.         ACALL DELAY300MS         ;64K 程序大小的函数使用 LCALL 或者 ACALL 调用
  27.         RR    A           
  28.         DJNZ  R0, LOOP      
  29.         JMP   START   
  30. ;-------------------------------------
  31. DELAY300MS:                        ;@24.000MHz
  32.         PUSH        DR0
  33.         MOV                WR0,#27
  34.         MOV                WR2,#30526
  35. NEXT:
  36.         DEC                DR0,#1
  37.         JNE                NEXT
  38.         POP                DR0
  39.         RET             ;64K 程序大小的函数使用 RET 返回
  40. ;-------------------------------------
  41. END
复制代码



回复

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2026-7-5 17:02 , Processed in 0.079476 second(s), 87 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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