迪文科技论坛

 找回密码
 立即注册
搜索
查看: 499|回复: 6

【提问】如何给modbus某个页面添加密码验证

[复制链接]

3

主题

9

回帖

94

积分

注册会员

Rank: 2

积分
94
发表于 2025-5-14 22:39:01 | 显示全部楼层 |阅读模式
基于这个源码:http://inforum.dwin.com.cn:20080 ... 2809&extra=page%3D1

如何在这个源码的基础上实现,某个页面加密


比如只有进到这个页面(07页面)才需要输入数据,输入正确的口令,才可以设置下述参数?请问如何修改modbus的源码,支持这个功能。
论文上搜到的源码,大多数都是在进入系统就验证密码,验证成功后才进入系统。
如何实现只对特殊的设置数据才需要验证密码,其他不需要密码的功能?
【提问】DMG80480T070_05WTR密码登录OS和modbusOS结合问题
http://inforum.dwin.com.cn:20080/forum.php?mod=viewthread&tid=9421&highlight=modbus%2B%E5%AF%86%E7%A0%81  
【提问】modbus代码添加自己的代码实现密码输入页面切换
http://inforum.dwin.com.cn:20080/forum.php?mod=viewthread&tid=2502&highlight=modbus%2B%E5%AF%86%E7%A0%81

上述两个结合的都是开始验证密码




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0

主题

481

回帖

2895

积分

金牌会员

Rank: 6Rank: 6

积分
2895
发表于 2025-5-15 11:26:06 | 显示全部楼层
就在所有进入7页的操作前判断密码地址就行了,不是跳转输密码,是就直接跳7页
回复

使用道具 举报

3

主题

9

回帖

94

积分

注册会员

Rank: 2

积分
94
 楼主| 发表于 2025-5-16 10:27:30 | 显示全部楼层
紫狐 发表于 2025-5-15 11:26
就在所有进入7页的操作前判断密码地址就行了,不是跳转输密码,是就直接跳7页 ...

能否具体一点?
或者提供一点汇编代码示例?
想要实现的效果是输入正确的密码才会修改其他参数
回复

使用道具 举报

0

主题

195

回帖

6139

积分

论坛元老

Rank: 8Rank: 8

积分
6139
发表于 2025-5-16 13:14:06 | 显示全部楼层
输入正确的口令,才可以设置下述参数, 可以做两个同样的页面,一个页面录入控件用来判断密码,一个页面可以正常录入,如果密码正确就切页,但是肉眼看不出页面已经变化了
回复

使用道具 举报

3

主题

9

回帖

94

积分

注册会员

Rank: 2

积分
94
 楼主| 发表于 2025-5-16 14:51:44 | 显示全部楼层
chenzf 发表于 2025-5-16 13:14
输入正确的口令,才可以设置下述参数, 可以做两个同样的页面,一个页面录入控件用来判断密码,一个页面可 ...

这个我知道。但是不清楚在汇编源码中如何做到特定页面才需要密码的代码。比如源码中在哪里修改.
或者官方有没有类似的源码可供参考?
回复

使用道具 举报

0

主题

503

回帖

4399

积分

论坛元老

Rank: 8Rank: 8

积分
4399
发表于 2025-5-17 09:22:16 | 显示全部楼层
ocno 发表于 2025-5-16 14:51
这个我知道。但是不清楚在汇编源码中如何做到特定页面才需要密码的代码。比如源码中在哪里修改.
或者官方 ...

需要您根据分享的代码例程加自己的需求代码进去 判断是否输入密码还是直接切换页面
回复

使用道具 举报

3

主题

9

回帖

94

积分

注册会员

Rank: 2

积分
94
 楼主| 发表于 2025-5-20 22:21:18 | 显示全部楼层
本帖最后由 ocno 于 2025-5-20 22:37 编辑

;==================
                 ORG         1000H
                 GOTO        Main
                 ORG         1080H
Main:            CALL        ModBus_Ini
Maia:            CALL        Dwin_ModBus_RTU
                                 CALL        GET_PICID        
                 GOTO        Maia

;===============================================
; 密码验证
;===============================================
GET_PICID:
                LDWR R0,0014H
                MOVXR R10,1,1

                IJNE    R10,00H,Go_end ;只有页面19才进行密码判断
                IJNE    R11,13H,Go_end ;只有页面19才进行密码判断               
                GOTO    Password  

Password:
        LDWR    R0,Vp_Password    ;
        MOVXR   R10,1,1     ;R10 R11
        IJNE    R10,0,Password≠0H
        IJNE    R11,0,Password≠0H

        GOTO    Go_end
Password≠0:    ;123456;00 01 E2 40   ;12345 ; 00 00 30 39
        IJNE    R10,30H,Error
        IJNE    R11,39H,Error

        
        LDWR R10,5A01H
        LDWR R12,0005H ;页面切换 05 ;5A A5 07 82 0084 5A01 0005
        LDWR R0,0084H
        MOVXR R10,0,2      
  LOOP1:       ;判断切换页面操作是否完成,GUI 内核处理速度 非常快,一般此处的判断操作也可以省略
        LDWR R0,0084H
        MOVXR R10,1,1
        IJNE R10,0,LOOP1
   
        LDWR    R0,Vp_Password    ; 清零地址
        LDBR    R10,0,2
        MOVXR   R10,0,1     ;R10 R11
        GOTO    Go_end   
;==============================            
Error:         
        LDWR R10,5A01H
        LDWR R12,0013H ;页面切换 19 ;5A A5 07 82 0084 5A01 0013
        LDWR R0,0084H
        MOVXR R10,0,2      
  LOOP2:       ;判断切换页面操作是否完成,GUI 内核处理速度 非常快,一般此处的判断操作也可以省略
        LDWR R0,0084H
        MOVXR R10,1,1
        IJNE R10,0,LOOP2
        
        LDWR    R0,Vp_Password    ;  
        LDBR    R10,0,2
        MOVXR   R10,0,1     ;R10 R11 R12 R13
;==============================        
Go_end:        
        RET


测试可行,分享给大家
回复

使用道具 举报

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

本版积分规则

QQ|Archiver|手机版|小黑屋|迪文科技论坛 ( 京ICP备05033781号-1 )

GMT+8, 2026-4-15 03:34 , Processed in 0.030168 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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