📄 main.c
字号:
#include <hidef.h>
#include <mc9s12dg128.h>
#pragma LINK_INFO DERIVATIVE "mc9s12dg128b"
/*-------记录接受次数------------------------*/
char m;
void light(void)
{
PORTB=m;
}
/*-----------初始化--------------------------*/
void SciInit(){
SCI0BDL = (unsigned char)((16000000UL /* OSC freq */ / 2) / 9600 /* baud rate */ / 16 /*factor*/);
SCI0CR1=0; /*normal,no parity*/
SCI0CR2=0X2C; /*RIE=1,TE=1,RE=1*/
}
/*-----------发送部分-----------------------*/
void SciTx(unsigned char *text){
int i=0;
unsigned char temp;
temp=SCI0SR1; /*clear flag*/
for(i=0;i<10;i++)
{
while (!(SCI0SR1&0x80)); /* wait for output buffer empty */
SCI0DRL = *text++;
}
}
/*---------接受部分------------------------*/
char SciRx(void){
char temp;
char result;
temp=SCI0SR1; /*clear flag*/
while(!(SCI0SR1&0x20));
result=SCI0DRL;
return result;
}
/*---------中断程序------------------------*/
interrupt void Serv_int(void)
{ char data[10];
int i=0;
DisableInterrupts;
for(i=0;i<10;i++){
data[i]=SciRx();
}
light();
m++;
SciTx(data);
EnableInterrupts;
}
/*----------主函数---------------------------*/
void main(void){
EnableInterrupts;
DDRB=0XFF;
SciInit();
for(;;){
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -