📄 intrrupu_tes.c
字号:
/***********************************************************************/
/* */
/* FILE :Intrrupu_tes.c */
/* DATE :Fri, Feb 17, 2006 */
/* DESCRIPTION :Main Program */
/* CPU TYPE :SH7144F */
/* */
/* This file is generated by Renesas Project Generator (Ver.4.0). */
/* */
/***********************************************************************/
//#include "typedefine.h"
#ifdef __cplusplus
//#include <ios> // Remove the comment when you use ios
//_SINT ios_base::Init::init_cnt; // Remove the comment when you use ios
#endif
#ifdef __cplusplus
extern "C" {
void abort(void);
#endif
void main(void);
#ifdef __cplusplus
}
#endif
#include <machine.h>
#include "iodefine.h"
void init_SCI(void);
void init_PORT(void);
void put_char(char);
char get_char(void);
void prt_str(char *str);
char inp_str(char *x);
void init_MTU(void);
void main(void)
{
int MTU1_cont;
init_PORT();
init_SCI();
init_MTU();
set_imask(0);
PE.DRL.BIT.B15 = 0;
MTU1.TCNT = 32768; //僇僂儞僩傾僢僾丒僟僂儞偑傢偐傝傗偡偄傛偆偵偵僇僂儞僞傪愝掕
while(1){
MTU1_cont = MTU1.TCNT;
/*丂僇僂儞僞偺抣傪暥帤偵曄姺偟偰昞帵丂*/
put_char((MTU1.TCNT/10000)%10+0x30);
put_char((MTU1.TCNT/1000)%10+0x30);
put_char((MTU1.TCNT/100)%10+0x30);
put_char((MTU1.TCNT/10)%10+0x30);
put_char(MTU1.TCNT%10+0x30);
/*丂夵峴+峴偺愭摢傊丂*/
put_char(0x0a);
put_char(0x0d);
}
}
void init_PORT(void){
PFC.PEIORL.BIT.B15 = 1;
}
void put_char(char str){
while(!SCI1.SSR.BIT.TDRE);
SCI1.TDR = str;
SCI1.SSR.BIT.TDRE = 0;
while(!SCI1.SSR.BIT.TEND);
}
char get_char(void){
char c;
while(!(SCI1.SSR.BYTE & 0x78));
c = SCI1.RDR;
while(!(SCI1.SSR.BIT.RDRF));
SCI1.SSR.BYTE &= ~0x78;
return c;
}
void prt_str(char *str){
while(*str != 0){
put_char(*str);
str++;
}
}
char inp_str(char *x){
char n,d;
while(1){
d = get_char();
if(d == 0x0d)break;
if(d == 0x0a)break;
*x++= d;
n++;
}
*x = 0;
prt_str("\n");
return n;
}
void init_SCI(void){
int i;
MST.CR1.BIT._SCI1 = 0;
PFC.PAIORL.BIT.B4 = 1;
PFC.PACRL2.BIT.PA4MD = 1;
PFC.PACRL2.BIT.PA3MD = 1;
SCI1.SCR.BYTE = 0x00;
SCI1.SMR.BYTE = 0x00;
SCI1.BRR = 19; //38400bps
// SCI1.BRR = 77; 960000bps
for(i=0;i<=1000;i++);
SCI1.SCR.BIT.TE = 1;
SCI1.SCR.BIT.RE = 1;
}
void init_MTU(void){ //僠儍僱儖1傪埵憡學悢儌乕僪偵愝掕
MST.CR2.BIT._MTU = 0; //僗僞儞僶僀儌乕僪偺夝彍
PFC.PACRL2.BIT.PA6MD = 1; //TCLKA抂巕偵愝掕
PFC.PACRL2.BIT.PA7MD = 1; //TCLKB抂巕偵愝掕
MTU1.TMDR.BIT.MD = 4; //僇僂儞僩忦審傪愝掕
MTU.TSTR.BIT.CST1 = 1; //僇僂儞僩僗僞乕僩
}
#ifdef __cplusplus
void abort(void)
{
}
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -