搜索
bottom↓
回复: 63
打印 上一主题 下一主题

又见到坑了,白鼠们一起来吧!这 Keil C51 v9.60 版来啰 ~~~

  [复制链接]

出0入34汤圆

跳转到指定楼层
1
发表于 2019-5-15 12:29:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
详见标题,仅供这 Keil C51 v9.60 版官网下载的链接,请自行入坑。并附上这版的 Release Note,但愿这 Release Note 的截图不会造成侵权!也请各位白鼠们自取用,不用谢。

连结于此 -> C51v9.60 - (95,756K) - (MD5:3C29CCF5B8E7AF3340B3B5C4605CAF6D)


本帖子中包含更多资源

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

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入93汤圆

2
发表于 2019-5-15 13:10:18 | 只看该作者
谢谢楼主推荐

出0入25汤圆

3
发表于 2019-5-15 13:20:39 | 只看该作者
keil c51 中文还是不能输入, 会变成乱码。。 为什么 keil 那么不重视 中文支持??

出0入0汤圆

4
发表于 2019-5-15 13:28:20 | 只看该作者
KEILC51 V9.59已经很好了。
看来v9.60又解决了长变量名的问题。
谢谢楼主。

出0入0汤圆

5
发表于 2019-5-15 16:19:07 | 只看该作者
rei1984 发表于 2019-5-15 13:20
keil c51 中文还是不能输入, 会变成乱码。。 为什么 keil 那么不重视 中文支持?? ...

选编码呀

出0入0汤圆

6
发表于 2019-5-15 16:20:37 | 只看该作者
多谢楼主,下载了。

出0入98汤圆

7
发表于 2019-5-15 16:38:41 | 只看该作者
高科技是不是还只支持到2020年?

出0入0汤圆

8
发表于 2019-5-15 17:11:23 | 只看该作者
估计2020以后大家就用不到这个软件了,

出0入0汤圆

9
发表于 2019-5-15 21:38:59 | 只看该作者
2020年快了,不知有没有大神会放出新的

出0入0汤圆

10
发表于 2019-5-16 08:37:05 | 只看该作者
下载收藏!谢谢楼主

出0入0汤圆

11
发表于 2019-5-16 08:48:43 | 只看该作者
正在下载,感谢分享。

出0入0汤圆

12
发表于 2019-5-16 09:06:39 | 只看该作者
还有半年时间  2020   那个高科技有没有进一步发展?  
我是觉得 2020年之后我还会用到keil啊   

出0入0汤圆

13
发表于 2019-5-16 13:24:41 | 只看该作者
KEIL新版本没有以前版本稳定,很容易崩溃了!

出0入0汤圆

14
发表于 2019-5-16 15:01:29 | 只看该作者
一直很好奇现在还有人在用51开发 现在的arm很便宜了‘

出0入0汤圆

15
发表于 2019-5-18 12:47:14 | 只看该作者
谢谢分享

出0入25汤圆

16
发表于 2019-5-18 19:03:18 来自手机 | 只看该作者
2020好快

出0入0汤圆

17
发表于 2019-5-18 19:32:36 | 只看该作者
shuimubai 发表于 2019-5-16 15:01
一直很好奇现在还有人在用51开发 现在的arm很便宜了‘

+1
我又有这个感觉。

出0入4汤圆

18
发表于 2019-5-18 19:40:16 | 只看该作者
shuimubai 发表于 2019-5-16 15:01
一直很好奇现在还有人在用51开发 现在的arm很便宜了‘

51很多优点的,很多老工程师大学时学的就是51.
51相比arm简单,这个也是优势吧

出615入1076汤圆

19
发表于 2019-5-18 20:23:33 | 只看该作者
laujc 发表于 2019-5-18 19:40
51很多优点的,很多老工程师大学时学的就是51.
51相比arm简单,这个也是优势吧 ...

相反,我覺得 51 的內存佈局不統一,很麻煩,特別是涉及到鏈接腳本的編輯,譬如 IAP 的 bootloader.

出0入8汤圆

20
发表于 2019-5-18 20:53:20 来自手机 | 只看该作者
shuimubai 发表于 2019-5-16 15:01
一直很好奇现在还有人在用51开发 现在的arm很便宜了‘

我最近就在用,领导看中的就是极低的价格。

出0入8汤圆

21
发表于 2019-5-18 20:55:26 来自手机 | 只看该作者
dukelec 发表于 2019-5-18 20:23
相反,我覺得 51 的內存佈局不統一,很麻煩,特別是涉及到鏈接腳本的編輯,譬如 IAP 的 bootloader. ...

这确实很扯蛋的地方,导致代码体积大很多。

出0入4汤圆

22
发表于 2019-5-18 21:11:17 | 只看该作者
还是关心的是2020的问题,这软件还需要用的

出0入0汤圆

23
发表于 2019-5-19 01:19:39 来自手机 | 只看该作者
2020年后有很多版本应该不能用了

出0入0汤圆

24
发表于 2019-5-23 11:30:40 | 只看该作者
请问一下楼主有没有汉化包。英文有点差。谢谢啦

出10入120汤圆

25
发表于 2019-5-23 11:35:01 | 只看该作者
改进不多,升级的必要性不强。

另外怎么就不见官方支持我们的大STC呢

出0入0汤圆

26
发表于 2019-5-23 13:18:07 | 只看该作者
发现一个小问题,设置了断点,一仿真,断点不见了,再次点上,可以用,退出仿真就恢复到仿真前设置的断点了

出0入0汤圆

27
发表于 2019-5-23 13:18:31 | 只看该作者
再次仿真,断点又不见了

出0入0汤圆

28
发表于 2019-5-25 09:09:01 | 只看该作者
下载后,发现没有,crack文件,求那个大佬帮我生成一下New License ID code(LIC):    CID:CLFCQ-UPCHS,谢谢啦

出0入4汤圆

29
发表于 2019-5-25 11:46:13 | 只看该作者
rei1984 发表于 2019-5-15 13:20
keil c51 中文还是不能输入, 会变成乱码。。 为什么 keil 那么不重视 中文支持?? ...

本帖子中包含更多资源

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

x

出0入25汤圆

30
发表于 2019-5-25 11:47:06 | 只看该作者

老铁。。。。可以的

出0入34汤圆

31
 楼主| 发表于 2019-5-29 10:22:04 | 只看该作者
再来一个新的坑,放出 Keil C51 v9.60a 版官网下载的链接,请赶紧入坑。并附上这版那一点点的 Release Note,也请各位白鼠们自行取用,最后...不用谢!

连结于此 -> C51v9.60a - (96,152K) - (MD5:A77A3700DD44E75FC0C8C235A1BC8F98)


本帖子中包含更多资源

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

x

出0入0汤圆

32
发表于 2019-5-29 10:48:22 | 只看该作者
我又改用UV2了,可以用到2025,

出0入0汤圆

33
发表于 2019-5-31 12:40:01 | 只看该作者
一个8位机的C编译器,非要对8位数据按16位处理,导致代码量增大,我也是醉了。

出10入120汤圆

34
发表于 2019-5-31 12:58:47 来自手机 | 只看该作者
su33691 发表于 2019-5-31 12:40
一个8位机的C编译器,非要对8位数据按16位处理,导致代码量增大,我也是醉了。 ...

哪个版本开始8位按照16位处理的,还真没注意过

出0入0汤圆

35
发表于 2019-5-31 13:13:09 | 只看该作者
我可用到2029年

出0入0汤圆

36
发表于 2019-5-31 13:13:10 | 只看该作者
makesoft 发表于 2019-5-31 12:58
哪个版本开始8位按照16位处理的,还真没注意过

好像是从V9.24a开始吧。
一个全局变量 u8 data LoopCnt;
if(LoopCnt == 1){...}

if(LoopCnt == (u8)1){...}
看看这两个语句的编译结果就知道了。

出10入120汤圆

37
发表于 2019-5-31 15:30:29 | 只看该作者
su33691 发表于 2019-5-31 13:13
好像是从V9.24a开始吧。
一个全局变量 u8 data LoopCnt;
if(LoopCnt == 1){...}





可能是个例吧,我用9.59测试没有您说的问题。

本帖子中包含更多资源

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

x

出0入8汤圆

38
发表于 2019-5-31 16:33:48 来自手机 | 只看该作者
lianglee 发表于 2019-5-18 21:26
2块钱能解决的问题,为什么要用3块钱的?
答案不是很明显么。

买的一定是可持续发展的机会,这一块钱不亏。

出870入263汤圆

39
发表于 2019-5-31 17:47:22 | 只看该作者
lianglee 发表于 2019-5-18 21:26
2块钱能解决的问题,为什么要用3块钱的?
答案不是很明显么。

除非是很大量的产品,要不然还真不如花3块钱做。

出0入0汤圆

40
发表于 2019-6-2 17:35:28 | 只看该作者
Keil C51越来越垃圾了,新版本编译出来的HEX文件比老版本大多了.

出0入4汤圆

41
发表于 2019-6-2 18:21:06 | 只看该作者
更新好快啊。不过新得貌似没啥优点

出10入120汤圆

42
发表于 2019-6-2 18:23:57 | 只看该作者
korren 发表于 2019-6-2 17:35
Keil C51越来越垃圾了,新版本编译出来的HEX文件比老版本大多了.

简单的看HEX没有用的,要看MAP文件里面的实际大小。

出0入0汤圆

43
发表于 2019-6-3 08:20:53 来自手机 | 只看该作者
makesoft 发表于 2019-6-2 18:23
简单的看HEX没有用的,要看MAP文件里面的实际大小。

老大你牛逼,你对比一下新版本同9.54一下版本就知道了。用事实说话。

出10入120汤圆

44
发表于 2019-6-3 08:34:37 | 只看该作者
korren 发表于 2019-6-3 08:20
老大你牛逼,你对比一下新版本同9.54一下版本就知道了。用事实说话。

也许我的观点是错误的,您有没有可以编译的DEMO工程并且不涉及秘密的可以提供上传,相信您的计算机里面装的是9.54以前的版本吧,试着编译下,把MAP文件传上来对比下。

我也编译您的DEMO,现在计算机安装的是9.59,看看差异到底在什么地方。

出0入0汤圆

45
发表于 2019-8-21 15:09:52 | 只看该作者
本帖最后由 machao 于 2019-8-21 15:26 编辑

最近在编写教程中,发现有差异存在:下面是例子:

c代码:
   9          // time0 中断服务,中断时间为50us, 运行模式12T
  10          uchar time_1k_counter,time_100hz_counter,time_10hz_counter;
  11          bit time_key_ok;
  12         
  13          void Int_time0(void) interrupt T0_VECTOR
  14          {
  15   1        IE = 0;
  16   1        if(++time_1k_counter >= 10)
  17   1        {
  18   2          clk_1k = !clk_1k;
  19   2          time_1k_counter = 0;
  20   2          if (++time_100hz_counter >= 10)
  21   2          {
  22   3            clk_100hz = !clk_100hz;
  23   3            time_100hz_counter = 0;
  24   3            time_key_ok = true;
  25   3            if (++time_10hz_counter >= 10)
  26   3            {
  27   4              clk_10hz = !clk_10hz;
  28   4              time_10hz_counter = 0;
  29   4            }
  30   3          }
  31   2        }
  32   1        IE = 1;
  33   1      }
  34  
==================================================
版本C51 V9.54 编译生成汇编:共27条汇编指令组成

              ; FUNCTION Int_time0 (BEGIN)
0000 C0E0              PUSH    ACC
0002 C0D0              PUSH    PSW
                                           ; SOURCE LINE # 13
                                           ; SOURCE LINE # 15
0004 75A800            MOV     IE,#00H
                                           ; SOURCE LINE # 16
0007 0500        R     INC     time_1k_counter
0009 E500        R     MOV     A,time_1k_counter
000B C3                CLR     C
000C 940A              SUBB    A,#0AH
000E 4021              JC      ?C0001
                                           ; SOURCE LINE # 17
                                           ; SOURCE LINE # 18
0010 B2B3              CPL     clk_1k
                                           ; SOURCE LINE # 19
0012 750000      R     MOV     time_1k_counter,#00H
                                           ; SOURCE LINE # 20
0015 0500        R     INC     time_100hz_counter
0017 E500        R     MOV     A,time_100hz_counter
0019 940A              SUBB    A,#0AH
001B 4014              JC      ?C0001
                                           ; SOURCE LINE # 21
                                           ; SOURCE LINE # 22
001D B2B2              CPL     clk_100hz
                                           ; SOURCE LINE # 23
001F 750000      R     MOV     time_100hz_counter,#00H
                                           ; SOURCE LINE # 24
0022 D200        R     SETB    time_key_ok
                                           ; SOURCE LINE # 25
0024 0500        R     INC     time_10hz_counter
0026 E500        R     MOV     A,time_10hz_counter
0028 940A              SUBB    A,#0AH
002A 4005              JC      ?C0001
                                           ; SOURCE LINE # 26
                                           ; SOURCE LINE # 27
002C B2B1              CPL     clk_10hz
                                           ; SOURCE LINE # 28
002E 750000      R     MOV     time_10hz_counter,#00H
                                           ; SOURCE LINE # 29
                                           ; SOURCE LINE # 30
                                           ; SOURCE LINE # 31
0031         ?C0001:
                                           ; SOURCE LINE # 32
0031 75A801            MOV     IE,#01H
                                           ; SOURCE LINE # 33
0034 D0D0              POP     PSW
0036 D0E0              POP     ACC
0038 32                RETI   
             ; FUNCTION Int_time0 (END)      

========================================
版本C51 V9.60 编译生成汇编:共33条汇编指令组成,多了6条,而且对比后这6条有点莫名其妙的

             ; FUNCTION Int_time0 (BEGIN)
0000 C0E0              PUSH    ACC
0002 C0D0              PUSH    PSW
                                           ; SOURCE LINE # 13
                                           ; SOURCE LINE # 15
0004 75A800            MOV     IE,#00H
                                           ; SOURCE LINE # 16
0007 0500        R     INC     time_1k_counter
0009 C3                CLR     C
000A E500        R     MOV     A,time_1k_counter
000C 940A              SUBB    A,#0AH        ;此处判断A是否大于10,正常
000E 7480              MOV     A,#080H                ;;???
0010 9480              SUBB    A,#080H                ;;???  这两条莫名其妙???
0012 4029              JC      ?C0001
                                           ; SOURCE LINE # 17
                                           ; SOURCE LINE # 18
0014 B2B3              CPL     clk_1k
                                           ; SOURCE LINE # 19
0016 750000      R     MOV     time_1k_counter,#00H
                                           ; SOURCE LINE # 20
0019 0500        R     INC     time_100hz_counter
001B E500        R     MOV     A,time_100hz_counter
001D 940A              SUBB    A,#0AH
001F 7480              MOV     A,#080H                ;;
0021 9480              SUBB    A,#080H                ;;???  再次这两条莫名其妙???
0023 4018              JC      ?C0001
                                           ; SOURCE LINE # 21
                                           ; SOURCE LINE # 22
0025 B2B2              CPL     clk_100hz
                                           ; SOURCE LINE # 23
0027 750000      R     MOV     time_100hz_counter,#00H
                                           ; SOURCE LINE # 24
002A D200        R     SETB    time_key_ok
                                           ; SOURCE LINE # 25
002C 0500        R     INC     time_10hz_counter
002E E500        R     MOV     A,time_10hz_counter
0030 940A              SUBB    A,#0AH
0032 7480              MOV     A,#080H                ;;
0034 9480              SUBB    A,#080H                ;;???  第三次的莫名其妙???
0036 4005              JC      ?C0001
                                           ; SOURCE LINE # 26
                                           ; SOURCE LINE # 27
0038 B2B1              CPL     clk_10hz
                                           ; SOURCE LINE # 28
003A 750000      R     MOV     time_10hz_counter,#00H
                                           ; SOURCE LINE # 29
                                           ; SOURCE LINE # 30
                                           ; SOURCE LINE # 31
003D         ?C0001:
                                           ; SOURCE LINE # 32
003D 75A801            MOV     IE,#01H
                                           ; SOURCE LINE # 33
0040 D0D0              POP     PSW
0042 D0E0              POP     ACC
0044 32                RETI   
             ; FUNCTION Int_time0 (END)

出0入0汤圆

46
发表于 2019-8-21 15:31:51 | 只看该作者
本帖最后由 machao 于 2019-8-21 15:33 编辑
su33691 发表于 2019-5-31 12:40
一个8位机的C编译器,非要对8位数据按16位处理,导致代码量增大,我也是醉了。 ...


官方有解释吗?我也发现有些异常,但不明白是如何按16位处理的?
上面帖子我贴了两个不同版本编译产生的汇编,明显在8位比较时,增加了两句汇编,目前看不出什么意思。

出0入0汤圆

47
发表于 2019-8-21 19:50:25 | 只看该作者
在v9.60的 Release Notes 中找到了为什么。主要是避免8位有符号数与无符号数比较出错的问题(在少数情况下会发生)

Corrected: in rare cases a signed compare with unsigned char treated the unsigned char as signed. This happens if the unsigned char value results from a calculated assignment. Example:
char i;
unsigned char uc0 = 254;
char c1 = 0;

void main() {
  if (c1 <= (uc0 += c1))    // uc0 is wrongly treated signed => -2 therefore the condition (0 <= -2) is false
    i = 1;
  else
    i = 0;
}
Wrong code was generated:
0000 E500        R     MOV     A,uc0
0002 2500        R     ADD     A,c1
0004 F500        R     MOV     uc0,A
0006 D3                SETB    C
0007 6480              XRL     A,#080H       \
0009 F8                MOV     R0,A          |
000A E500        R     MOV     A,c1          |
000C 6480              XRL     A,#080H       |
000E 98                SUBB    A,R0          |
000F 5004              JNC     ?C0001        -> signed char compare
0011 750001      R     MOV     i,#01H
0014 22                RET
0015         ?C0001:
0015 E4                CLR     A
0016 F500        R     MOV     i,A
0018         ?C0003:
0018 22                RET
The correct code is much longer because according to the C standard a cast to int is necessary:
0000 E500        R     MOV     A,uc0
0002 2500        R     ADD     A,c1
0004 FF                MOV     R7,A
0005 F500        R     MOV     uc0,A
0007 AD00        R     MOV     R5,c1         \
0009 ED                MOV     A,R5          |
000A 33                RLC     A             |
000B 95E0              SUBB    A,ACC         |
000D FC                MOV     R4,A          -> cast of signed char to int
000E D3                SETB    C             \
000F ED                MOV     A,R5          |
0010 9F                SUBB    A,R7          |
0011 7480              MOV     A,#080H       +> implicit cast of unsigned char to int
0013 F8                MOV     R0,A          |
0014 6C                XRL     A,R4          |
0015 98                SUBB    A,R0          |
0016 5004              JNC     ?C0001        -> signed int compare
0018 750001      R     MOV     i,#01H
001B 22                RET
001C         ?C0001:
001C E4                CLR     A
001D F500        R     MOV     i,A
001F         ?C0003:
001F 22                RET
To generate smaller code the signedness of the values to be compared should be the same:
...
        if ((unsigned char)c1 <= (uc0 += c1))
...
0000 E500        R     MOV     A,uc0
0002 2500        R     ADD     A,c1
0004 FF                MOV     R7,A
0005 F500        R     MOV     uc0,A
0007 E500        R     MOV     A,c1
0009 D3                SETB    C             \
000A 9F                SUBB    A,R7          |
000B 5004              JNC     ?C0001        -> unsigned char compare
000D 750001      R     MOV     i,#01H
0010 22                RET
0011         ?C0001:
0011 E4                CLR     A
0012 F500        R     MOV     i,A
0014         ?C0003:
0014 22                RET

出0入0汤圆

48
发表于 2019-8-21 19:57:01 | 只看该作者
把C代码稍微做些变化: 把比较常量10 ,强制转换成无符号数,其它不变。

13          void Int_time0(void) interrupt T0_VECTOR
  14          {
  15   1        IE = 0;
  16   1        if(++time_1k_counter >= (uchar)10)
  17   1        {
  18   2          clk_1k = !clk_1k;
  19   2          time_1k_counter = 0;
  20   2          if (++time_100hz_counter >= (uchar)10)
  21   2          {
  22   3            clk_100hz = !clk_100hz;
  23   3            time_100hz_counter = 0;
  24   3            time_key_ok = true;
  25   3            if (++time_10hz_counter >= (uchar)10)
  26   3            {
  27   4              clk_10hz = !clk_10hz;
  28   4              time_10hz_counter = 0;
  29   4            }
  30   3          }
  31   2        }
  32   1        IE = 1;
  33   1      }

==============================
用最新版本C51 V9.60 编译生成汇编,又恢复为原来的27条相同的汇编指令了。

             ; FUNCTION Int_time0 (BEGIN)
0000 C0E0              PUSH    ACC
0002 C0D0              PUSH    PSW
                                           ; SOURCE LINE # 13
                                           ; SOURCE LINE # 15
0004 75A800            MOV     IE,#00H
                                           ; SOURCE LINE # 16
0007 0500        R     INC     time_1k_counter
0009 E500        R     MOV     A,time_1k_counter
000B C3                CLR     C
000C 940A              SUBB    A,#0AH
000E 4021              JC      ?C0001
                                           ; SOURCE LINE # 17
                                           ; SOURCE LINE # 18
0010 B2B3              CPL     clk_1k
                                           ; SOURCE LINE # 19
0012 750000      R     MOV     time_1k_counter,#00H
                                           ; SOURCE LINE # 20
0015 0500        R     INC     time_100hz_counter
0017 E500        R     MOV     A,time_100hz_counter
0019 940A              SUBB    A,#0AH
001B 4014              JC      ?C0001
                                           ; SOURCE LINE # 21
                                           ; SOURCE LINE # 22
001D B2B2              CPL     clk_100hz
                                           ; SOURCE LINE # 23
001F 750000      R     MOV     time_100hz_counter,#00H
                                           ; SOURCE LINE # 24
0022 D200        R     SETB    time_key_ok
                                           ; SOURCE LINE # 25
0024 0500        R     INC     time_10hz_counter
0026 E500        R     MOV     A,time_10hz_counter
0028 940A              SUBB    A,#0AH
002A 4005              JC      ?C0001
                                           ; SOURCE LINE # 26
                                           ; SOURCE LINE # 27
002C B2B1              CPL     clk_10hz
                                           ; SOURCE LINE # 28
002E 750000      R     MOV     time_10hz_counter,#00H
                                           ; SOURCE LINE # 29
                                           ; SOURCE LINE # 30
                                           ; SOURCE LINE # 31
0031         ?C0001:
                                           ; SOURCE LINE # 32
0031 75A801            MOV     IE,#01H
                                           ; SOURCE LINE # 33
0034 D0D0              POP     PSW
0036 D0E0              POP     ACC
0038 32                RETI   
             ; FUNCTION Int_time0 (END)

出0入0汤圆

49
发表于 2019-8-21 20:49:38 | 只看该作者
2020年后,keil该如何使用

出0入0汤圆

50
发表于 2019-10-10 15:14:58 | 只看该作者
shuimubai 发表于 2019-5-16 15:01
一直很好奇现在还有人在用51开发 现在的arm很便宜了‘

你让Arduino情何以堪。。

出0入0汤圆

51
发表于 2019-10-10 21:14:13 | 只看该作者
51有51的优势

出10入12汤圆

52
发表于 2019-10-11 03:56:54 | 只看该作者
rei1984 发表于 2019-5-15 13:20
keil c51 中文还是不能输入, 会变成乱码。。 为什么 keil 那么不重视 中文支持?? ...

uV2选择正确的字体和编码,中文一点问题都没有

出10入12汤圆

53
发表于 2019-10-11 03:58:19 | 只看该作者
51编译器还在更新啊……

出10入120汤圆

54
发表于 2020-10-14 21:57:24 | 只看该作者
xyz543 发表于 2019-5-29 10:22
再来一个新的坑,放出 Keil C51 v9.60a 版官网下载的链接,请赶紧入坑。并附上这版那一点点的 Release Note ...

还有geng新的吗

出0入34汤圆

55
 楼主| 发表于 2020-10-15 09:06:29 | 只看该作者

-> 没有

出0入0汤圆

56
发表于 2021-4-25 15:16:49 | 只看该作者
因为缺芯片,不得已来翻C51了。

出0入0汤圆

57
发表于 2021-4-25 20:40:35 来自手机 | 只看该作者
2021年了!

出0入0汤圆

58
发表于 2022-8-3 17:08:41 | 只看该作者
Keil5 C51 V9.60a
c51v960a.exe
https://www.keil.com/fid/q9op64w ... s/eval/c51v960a.exe

出0入0汤圆

59
发表于 2022-8-3 18:51:17 来自手机 | 只看该作者
mark        

出0入17汤圆

60
发表于 2022-12-21 10:19:02 | 只看该作者
又来翻C51了,其实一直在用uv4,没发现有什么不合适;最近手痒痒玩了两天stm32,装的uv5,发现这两个环境没集成到一起去,每次打开项目很麻烦

出0入4汤圆

61
发表于 2022-12-21 10:58:29 来自手机 | 只看该作者
有更新了。。。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-29 08:11

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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