54433|1

68

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

IAR For MCS51的使用 [复制链接]

IAR For MSP430/MCS51的使用(破解)

最新版本的5.10.1对Vista的支持很好(到IAR网站注册后下载),破解(Crack)器下载网址:

http://www.61ic.com/code/viewthread.php?tid=26885

要注意的是,使用新版本的IAR,对于USB的MSP430UIF需要升级固件,方法:断开开发板,用跳线将TDO/TDI和RST/NMI 脚短路,然后再接到电脑上,运行IAR的debug会提示升级固件,按照提示进行就可以了
引脚排列:

IAR For MSP430的使用(破解) - jiwm - 汲伟明的博客
有些厂商卖USB UIF时候提供的IAR for MSP430 3.42以及 4.20比较挑系统,特别是对于Vista的支持很不好,而厂家只为了赚钱,不能也不愿意提供好的服务。强烈建议升级到5.10.1。

 

IAR有一系列版本, for ARM/MSP430/Power PC/MCS51/AVR等等,界面类似,操作一样,特别要指出的是For MCS51,截止到2010年5月初,已经升级到5.71。对C8051F的支持很好,特别是对U-EC5/EC2等支持很好。不过要注意的是,在keil下成功运行的程序,需要更改一些配置,下面是一个C8051F330的程序,在keil下和IAR的对比。本程序测试成功。
IAR对51位的操作,网上一直说要打勾enable bit definition in io include,在5.71下并没有这个选项,而参考下面的程序,实现位操作还是非常容易的.

keil:

/*By Jiwm 2010.5
http://jiwm.blog.163.com
*/
#include<c8051f330.h>
#include<stdio.h>
sbit LED0=P1^0;
sbit LED1=P1^2; 
void Delay(uint delay_time);        //声明一个函数,函数的功能定义在Main 函数以后
main()
{
      PCA0MD    &= ~0x40;
      PCA0MD     =  0x00;                       //close WDT
      OSCICN|=0x03;    //时钟24.5M
      RSTSRC=0x04 ; 
      //configure sysclk here
     XBR0 = 0x00; // 未选择任何数字外设
     XBR1 = 0x40; // 使能交叉开关和弱上拉
     P1MDOUT |= 0x05; // 设P1.0,P1.2为输出端口,推挽方式
     
      while(1)
 {
        led0=0; 
        led1=1;
        Delay(50000);
              Delay(50000);
              Delay(50000);
  Delay(50000);
        led0=1; 
        led1=0;
              Delay(50000);
              Delay(50000);
  Delay(50000);
  Delay(50000);
              led0=0; 
        led1=1;
 }
}
void Delay(uint delay_time)
{
   uint i;
   for(i=0;i<delay_time;i++);
}

IAR:

/*By Jiwm 2010.5
http://jiwm.blog.163.com
*/

#include"ioC8051F330.h"
#define led0 P1_bit.P10
#define led1 P1_bit.P12

void Delay(uint delay_time);        //声明一个函数,函数的功能定义在Main 函数以后
main()
{
      PCA0MD    &= ~0x40;
      PCA0MD     =  0x00;                       //close WDT
      OSCICN|=0x03;    //时钟24.5M
      RSTSRC=0x04 ; 
      //configure sysclk here
     XBR0 = 0x00; // 未选择任何数字外设
     XBR1 = 0x40; // 使能交叉开关和弱上拉
     P1MDOUT |= 0x05; // 设P1.0,P1.2为输出端口,推挽方式

      while(1)
 {
        led0=0; 
        led1=1;
        Delay(50000);
              Delay(50000);
              Delay(50000);
  Delay(50000);
        led0=1; 
        led1=0;
              Delay(50000);
              Delay(50000);
  Delay(50000);
  Delay(50000);
              led0=0; 
        led1=1;
 }
}
void Delay(uint delay_time)
{
   uint i;
   for(i=0;i<delay_time;i++);
}

此帖出自单片机论坛

最新回复

  详情 回复 发表于 2010-10-27 11:58
点赞 关注
 

回复
举报

1万

帖子

16

TA的资源

版主

沙发
 

谢谢楼主

此帖出自单片机论坛
 
个人签名http://shop34182318.taobao.com/
https://shop436095304.taobao.com/?spm=a230r.7195193.1997079397.37.69fe60dfT705yr
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表