LAOXU 发表于 2023-1-5 19:16:22

世上(也是史上)功能最全的STC8 MDU16应用 LIB

十一月初, 一次偶然扫荡官网, 看到现在在主推STC32.

很感兴趣, 立刻淘宝上搜了一下, 找了一家拍了块 STC32开发板, 结果快递发了退回, 发了退回........(中间我处封控, 快递进不来).

结果快递走了一个多月才到, 兴致勃勃的一研究, 发现 STC32 串口, USB口都不支持仿真, 要外接 USB Link1D 才能仿真, 再从


淘宝上找了一家拍了块 USB Link1D , 顺手带了 STC32板/ STC8H最小板 各一块, 等收到货发现, 店家 USB Link1D 到 最小板


的仿真电缆线(TYPE-C接口)未配, 无法连到 USB Link1D 上仿真, 早期买的那块 STC32开发板, 有4芯仿真口引出, 用了, 试了几回

就死活没反应, 唯一剩下的就是STC8H最小板 , 生命力最强, 可以直接用 USB仿真, 也只能先玩这个STC8H了~~~

今天又下单在 淘宝上买了 2块STC32开发板

原先想动手搞一个世上(也是史上)功能最全的STC32 数学函数库(STC官方提供的库, 不但简单功能弱, 还问题多多, 单看

反编译生成的代码, 就发现好多问题, 只是手头缺少能联机好用的仿真器+应用板, 无法验证 ) , 这一计划只能延迟, 计划在

春节期间完成, 先打个广告~~~ http://www.stcaimcu.com/static/image/smiley/default/tongue.gif   

言归正传, 现在降级, 搞一个世上(也是史上)功能最全的STC8 MDU16应用 LIB, 把能用 MDU16 指令优化的 C251编译器 内部函数,

全部重新编写一遍, 封装成库, 所有库文件全部公开开源, 用户可自行修改增减成自已的专用库使用.



神农鼎 发表于 2023-1-5 19:30:25

期待,免费+包邮 送的,你不要,你非要淘宝
https://www.stcaimcu.com/data/attachment/forum/202212/26/104232kwwx3w3uxwrueuxw.png
https://www.stcaimcu.com/data/attachment/forum/202212/26/105107ytr0ddkm5po33y13.png
https://www.stcaimcu.com/data/attachment/forum/202212/12/123344zaefyngpuer6vuov.png

LAOXU 发表于 2023-1-5 19:32:29

目前我仅想到这些内联库函数(包括部分STC原LIB), 同学们如能想到其他的, 请提出来, 我加进去.

?C?LSHL    长整数逻辑左移 --> R4R5R6R7 << R0

?C?ULSHR   长整数逻辑右移 --> R4R5R6R7 >> R0

?C?IMUL      16位 * 16位(2字节乘法)

?C?LMUL      32位 * 32位(4字节乘法)

?C?UIDIV   16位 / 16位(2字节无符号除法及取模)

?C?ULDIV   32位 / 32位(4字节无符号除法及取模)

?C?CASTF    浮点数 --> 长整数(4字节)

?C?FCASTL    长整数(4字节) --> 浮点数

?C?FCASTI      整数(2字节) --> 浮点数

?C?FCASTC       字节 --> 浮点数

?C?FPADD      浮点数加数

?C?FPSUB      浮点数减数

?C?FPMUL      浮点数乘数

?C?FPDIV      浮点数除数

除了最后 4个 浮点数加减乘除外, 其他函数均已完成, 并作了初步测试.

神农鼎 发表于 2023-1-5 19:37:25



仿真+串口通信,只占1个USB口
http://www.stcaimcu.com/data/attachment/forum/202212/13/131248b65pb8a53um4jlb0.png

LAOXU 发表于 2023-1-5 19:37:55

STC8_MDU16_LIB 编译参数(条件) 预设.

USE_EAXFR                EQU            0          ;0: 常规用法, 程序精简, 不对EAXFR操作, 请上电系统初始化时将 EAXFR寄存器设置为1(例如: P_SW2|=0x80;)
                                                                ;   使用限制范围: 外部扩展 RAM的最大地址不能超过 0FA00H, 否则无法工作(用户可在访问地址超出 0FA00H的
                                                                ;               外部扩展 RAM时, 先清除 EAXFR位, 待访问完成后再重新置位 EAXFR位)
                                                                ;1: 对EAXFR操作及实时保护, 无任何使用限制及条件范围

CLOSE_EA            EQU            0          ;0: 常规用法, 程序精简, 不对 EA操作, 不影响中断实时响应速度
                                                          ;   使用限制范围: 中断程序中, 不充许便用复杂的数学运算(16位整数及以上的乘除运算, 浮点数运算), 否则可能运算出错
                                                          ;1: 对中断关闭以及实时保护, 无任何使用限制及条件范围, 等待运算完成后再开启中断(缺点, 中断实时响应速度会受影响),
                                                          ;2: 仅在执行MDU16相关指令时关闭中断, 等待运算完成后再开启中断, 中断实时响应速度快, 这项设置是备用功能(不知中断
                                                                ;   对正在进行的MDU16相关运算是否有影响,如无影响请选择设置0, 代码最短速度最快), 使用限制范围:
                                                                ;   同上述0: 中断程序中, 不充许便用复杂的数学运算(16位整数及以上的乘除运算, 浮点数运算), 否则可能运算出错

LAOXU 发表于 2023-1-5 19:42:45

欢迎同学们下载测试及使用

LAOXU 发表于 2023-1-5 19:51:47

神农鼎 发表于 2023-1-5 19:30
期待,免费+包邮 送的,你不要,你非要淘宝
前后有两位朋友留言, 让我加QQ, 微信, 结果加了数天都没反应(可能太忙没登陆:)),

也只能自已到淘宝上去买一点~~~

谢谢你, 管理员.

地址: 河北省保定市满城区107国道郎村红绿灯口菜鸟绎站, 许**, 139*********

神农鼎 发表于 2023-1-5 19:57:51

好,我转 客服,明他们电话你,送些 干净利落的 工具,线,核心板

8051启蒙者 发表于 2023-1-6 09:37:47

感谢楼主分享,带着大家一起进步!

LAOXU 发表于 2023-1-6 13:23:02

加入浮点数加/减/除法, 仅乘一个 浮点数乘法还没测试好, 欢迎同学们下载测试及使用
页: [1] 2 3 4 5
查看完整版本: 世上(也是史上)功能最全的STC8 MDU16应用 LIB