打印
[STC单片机]

笑死,STC8H的双DPTR仿真问题折腾三天,绝望的发帖前30秒解决……

[复制链接]
5083|50
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
laoxu|  楼主 | 2023-2-25 04:46 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
声明: 本贴框架格式系抄袭网友hyperma之贴, 版权系网友hyperma所有~~~

我真的快疯了,无论淘宝上买的STC8H8K64U(模块),还是 STC官方送的板子,把规划中的改写的使用双DPTR指针的

函数strcmp,strncmp,strcpy,strncpy,memcmp,memcpy,memccpy,memmove,

都用STC8H的大ROM装进去,但没想到在这个STC8H超强双DPTR面前踢了铁板。


由于我是从中颖51叛变过来的,对双DPTR一向自认很有信心,用官方库函数+自编库函数,已经玩得不能再熟练了。

上机调试出错, 那很正常, 单步+断点跟踪调试, 查找原因, 就是发现第二个DPTR指针不工作啊!

更改 DPS寄存器没用, 更改直接地址(0xE3)可行, 但就是第二个DPTR指针死活不工作啊!


单步调试跟踪,出现了奇怪的事情,就是发现第一个DPTR指针始终在工作, 第二个DPTR指针永远不工作啊!怎么折腾都这样,

于是我折腾了三天。足足三天啊!换STC8H8K64U板子、重装STC8H8K64U仿真驱动、重装Keil, 重启电脑,都不成……。


实在不行了,凌晨想上来发帖子求救……。唉,揉揉已经通红的眼睛看会儿帖子吧,偶然看到了以前自已发的帖子里, 回网友的疑问?

在数组数据交换过程中, 用DMA传输快? 还是用软件模拟传输快? 自已编写了测试程序, 两者之间的传输速率当然会复杂一肯步些PK,

结果 软件模拟传输飞快 完胜 DMA传输, 在软件模拟传输中, 我成功应用了STC8H8K64U的双DPTR功能啊!我……

然后调出该软件模拟传输测试程序, 编译运行一下看数据,正常了……。这是为什么啊!为什么啊!真心向版主求教,是否说STC8H的仿真及软件是有问题的?



使用特权

评论回复

相关帖子

沙发
laoxu|  楼主 | 2023-2-25 04:47 | 只看该作者
后记:

我随意设断点, 单步或连续跟踪调试,发现该软件模拟传输测试程序不稳定, 时好时坏(查看数组, 传输的结果错误), 经不断更改断点位置, 单步或连续跟踪.


得出以下结论:

STC8H的仿真, 不支持第二个DPTR指针, 无论是单步, 还是连续, 只要在使用第二个DPTR指针过程中有停留(停顿), 就会出错, 永远停止第二个DPTR指针的工作!!!

像前面我调试 函数strcmp,strncmp,strcpy,strncpy,memcmp,memcpy,memccpy,memmove,就是在 双DPTR指针应用中, 加了断点, 造成STC8H的仿真过程中,

在第二个DPTR指针执行过程中有了停顿, 而产生第二个DPTR指针不工作的结果!

使用特权

评论回复
板凳
henangongda123| | 2023-2-25 19:10 | 只看该作者
已放弃STC,改用国产RISC-V内核的32位APT32单片机,SSOP-24封装的,48M主频,才1.2元! APT32F1023B数据手册 V1.0.pdf (1.92 MB)


使用特权

评论回复
评论
henangongda123 2023-3-13 14:15 回复TA
@William1994 :玄铁? 
William1994 2023-3-13 07:25 回复TA
CK802是杭州中天的16位和32位混排的指令集,而RISC V是32位或者纯16位模式的指令集。这个帖子前言后语是不是搭配不起来? 
王栋春 2023-2-25 22:57 回复TA
@henangongda123 :是这样的,本人对单片机编程知识知之甚少,想找那种编程非常非常简单的单片机实现一些非常小的功能。 
henangongda123 2023-2-25 22:51 回复TA
@王栋春 :好像没有 0.08元的OTP单片机、0.3元的辉芒微FMD单片机、1.2元/5元的STC单片机、1.2元(最早的时候)的STM8S单片机、5元的AVR单片机、5元的AT89S51单片机,我都搞过,现在比较看好开源RISC-V内核的国产APT32单片机,这个内核是开源的,现在快要跟ARM、X86并驾齐驱了,国内被阿里巴巴收购的平头哥做的比较好,很多国产单片机MCU都用的是平头哥的内核。 
王栋春 2023-2-25 22:13 回复TA
请问坛友有没有那种非常简单,简单到单片小白都能入手的单片机吗? 
地板
henangongda123| | 2023-2-25 22:51 | 只看该作者
STC不争气,各种硬坑,放弃了

使用特权

评论回复
5
xdqfc| | 2023-2-26 10:53 | 只看该作者
henangongda123 发表于 2023-2-25 22:51
STC不争气,各种硬坑,放弃了

看了APT32的数据手册,专门关注了一下ADC的精度,寒碜了点,只能说还有较大的上升空间。

使用特权

评论回复
6
laoxu|  楼主 | 2023-2-26 15:28 | 只看该作者
henangongda123 发表于 2023-2-25 19:10
已放弃STC,改用国产RISC-V内核的32位APT32单片机,SSOP-24封装的,48M主频,才1.2元!

请问你用的 国产RISC-V内核的32位APT32单片机 的 指令集什么地方有下载?

使用特权

评论回复
7
henangongda123| | 2023-2-26 17:11 | 只看该作者
laoxu 发表于 2023-2-26 15:28
请问你用的 国产RISC-V内核的32位APT32单片机 的 指令集什么地方有下载?

指令集不知道啊 平头哥的 这个国际开源组织 那个里面应该有 我不是太关心这些,因为跟内核打交道比较少,平头哥的开发软件叫:剑池CDK,他们都把库做好了,我只管用库文件操作

使用特权

评论回复
8
henangongda123| | 2023-2-26 17:13 | 只看该作者
xdqfc 发表于 2023-2-26 10:53
看了APT32的数据手册,专门关注了一下ADC的精度,寒碜了点,只能说还有较大的上升空间。
...

0.85-1.1元/PCS,12位ADC+多个高级PWM定时器,这已经很不错啦 比我之前用的STM8、STC的10位ADC好一些,做电压检测确实精度高了不少

使用特权

评论回复
9
henangongda123| | 2023-2-27 16:34 | 只看该作者
jiangjiang6590 发表于 2023-2-27 11:52
STC有高精准12位ADC,STC8H8K64U-45MHZ-TSSOP20,RMB1.9

APT32F1023B 24MHz 12位ADC 0.85元/PCS

使用特权

评论回复
10
henangongda123| | 2023-2-28 14:30 | 只看该作者
jiangjiang6590 发表于 2023-2-28 08:48
一分价钱一分货,贵有贵的道理

嗯 你们STC继续贵 我不用就是了 我换APT32F1023、APT32F1104,又便宜又好用,还没那么多坑,至少主频不会偏移严重

使用特权

评论回复
11
sdwys| | 2023-3-5 23:25 | 只看该作者
STC还是挺可靠的,简单东西stc是不错的选择,risc-v用沁恒的开发板跟踪者调试了一下,感觉模块化指令集效率好低。

使用特权

评论回复
评论
slfzhf 2023-3-7 11:21 回复TA
同感,用惯了STC的,还是感觉STC的方便,资料齐全,查找也方便 
12
kcfoo1| | 2023-3-6 10:02 | 只看该作者
henangongda123 发表于 2023-2-25 19:10
已放弃STC,改用国产RISC-V内核的32位APT32单片机,SSOP-24封装的,48M主频,才1.2元!



阿里的平头哥软件效率不高,生成的代码巨大,用过ssop20封装的apt,32kflash一下就没了,不过资源是真多,带触摸的,没有触摸调试软件,要靠自己写程序

使用特权

评论回复
13
kcfoo1| | 2023-3-6 10:06 | 只看该作者
laoxu 发表于 2023-2-26 15:28
请问你用的 国产RISC-V内核的32位APT32单片机 的 指令集什么地方有下载?

跟指令有什么关系,现在都是用c编译器的,由编译器编译成指令,apt的编译器是平头哥改的,界面和keil差不多,但是效率不高,编译出来的代码比较大

使用特权

评论回复
14
henangongda123| | 2023-3-6 16:00 | 只看该作者
kcfoo1 发表于 2023-3-6 10:06
跟指令有什么关系,现在都是用c编译器的,由编译器编译成指令,apt的编译器是平头哥改的,界面和keil差不 ...

各种硬件初始化东西比较多

使用特权

评论回复
15
henangongda123| | 2023-3-6 16:02 | 只看该作者
sdwys 发表于 2023-3-5 23:25
STC还是挺可靠的,简单东西stc是不错的选择,risc-v用沁恒的开发板跟踪者调试了一下,感觉模块化指令集效率 ...

可靠个毛线 我用的STC8H 32引脚的 主频偏移 搞了好多天搞不定 PWM输出、串口通信频率都对不上

使用特权

评论回复
评论
chineseboyzxy 2023-11-25 15:42 回复TA
我用STC8F2K16S2的4个串口挂了四个串口电流表,长时间连续工作也没啥问题呀。 
16
slfzhf| | 2023-3-7 11:06 | 只看该作者
本帖最后由 slfzhf 于 2023-3-7 11:16 编辑
henangongda123 发表于 2023-3-6 16:02
可靠个毛线 我用的STC8H 32引脚的 主频偏移 搞了好多天搞不定 PWM输出、串口通信频率都对不上 ...

我用STC15系列到STC8H系列,用STC8H3K64S4系列主频很准很稳,40M没有任何问题,你是用在盲区吧
STC8H3K64S2-45MHz-LQFP48, 据说RMB2.4 以下可畅想无限,手册中有内部高精准IRC时钟的使用说明
不要一直讲STC坏话,我从STC15系列到8系列,用了十多年了,非常稳定,质量信得过

使用特权

评论回复
17
henangongda123| | 2023-3-7 13:43 | 只看该作者
slfzhf 发表于 2023-3-7 11:06
我用STC15系列到STC8H系列,用STC8H3K64S4系列主频很准很稳,40M没有任何问题,你是用在盲区吧
STC8H3K64S ...

反正我是被坑了 踩到坑了还不能说出来?为啥不能说STC有问题?什么逻辑?

使用特权

评论回复
18
kissdb| | 2023-3-7 14:14 | 只看该作者
henangongda123 发表于 2023-3-7 13:43
反正我是被坑了 踩到坑了还不能说出来?为啥不能说STC有问题?什么逻辑? ...

程序和现象发出来,大家探讨下

使用特权

评论回复
19
henangongda123| | 2023-3-7 21:14 | 只看该作者
kissdb 发表于 2023-3-7 14:14
程序和现象发出来,大家探讨下

https://bbs.21ic.com/icview-3263632-1-1.html

使用特权

评论回复
20
zhxzhxzzhhxx| | 2023-3-9 21:02 | 只看该作者
henangongda123 发表于 2023-2-28 14:30
嗯 你们STC继续贵 我不用就是了 我换APT32F1023、APT32F1104,又便宜又好用,还没那么多坑,至少主频不会 ...

说STC 啥都行,这个主频可是稳稳的,-45-60,内部RC做通讯都没问题.

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:猜猜俺是谁的马夹?

146

主题

2274

帖子

221

粉丝