请问怎么把下面51单片机的代码改成msp430 g2 pocket的代码,还有改下时间变成30秒

2019-07-15 15:08发布

#include<reg52.h>

#include"delay.h"

#define DataPort P0

sbit Latch1=P2^2;//段锁存

sbit Latch2=P2^3;//位锁存

unsigned char code DuanMa[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};// 显示段码值0~F

unsigned char code WeiMa[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//分别对应相应的数码管点亮,即位码

unsigned char i=0,num=60,j=0;

void Init_timer0(void)

{

TMOD |= 0x01;        //使用模式1,16位定时器,使用"|"符号可以在使用多个定时器时不受影响

TH0=(65536-50000)/256;        //重新赋值

TL0=(65536-50000)%256;

EA=1; //总中断打开

ET0=1; //定时器中断打开

TR0=1; //定时器开关打开

}

main()

{

unsigned char Temp[2];

Init_Timer0();

while(1)

{

Temp[0]=DuanMa[num/10];

Temp[1]=DuanMa[num%10];

DataPort=WeiMa;

Latch2=1;

Latch2=0;

DataPort=Temp;

Latch1=1;

Latch1=0;

DelayMs(1);

i++;

if(i>=2)

{

i=0;

}

if(num==0xff)

{

num=60;

}

}

}

void Timer0_isr(void) interrupt 1 using 1

{

TH0=(65536-50000)/256;        //重新赋值

TL0=(65536-50000)%256;

j++;

if(j==20)

{

j=0;

num--;

}

}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。