1221--STM8_uart使用中断收发数据
0赞
发表于 1/5/2011 8:52:50 AM
阅读(4086)
实现串口的接收与发生,当串口接收到电脑发过来的字符,就直接发送该字符给电脑,
调用UART1的接收中断
对于IAR下中断的调用与STVD下的中断不一样的,由于之前很多寄存器都是可以直接替换,
还以为可以,但是编译后就证明了不行
IAR下毫无提示的中断是如何调用的,狂百度看看是否有高手先解决这个问题,但是无解,
很多都是基于库的,算了,硬着头皮看了相关英文文档,《IAR C/C++ Development
Guide Compiling and Linking for STMicroelectronics’STM8 Microcontroller Family》
该文档就有说明中断的使用,需要包含什么H文件,也有相关的例子可以参考
解决了!看来是没什么时间玩IIC了。
调用UART1的接收中断
对于IAR下中断的调用与STVD下的中断不一样的,由于之前很多寄存器都是可以直接替换,
还以为可以,但是编译后就证明了不行
IAR下毫无提示的中断是如何调用的,狂百度看看是否有高手先解决这个问题,但是无解,
很多都是基于库的,算了,硬着头皮看了相关英文文档,《IAR C/C++ Development
Guide Compiling and Linking for STMicroelectronics’STM8 Microcontroller Family》
该文档就有说明中断的使用,需要包含什么H文件,也有相关的例子可以参考
解决了!看来是没什么时间玩IIC了。
具体的代码将会放到论坛里。
中断函数定义例子:
//------------------------------------中断
//#define UART1_R_RXNE_vector 0x14 //串口1中断接收
#pragma vector =UART1_R_RXNE_vector
__interrupt void UART1_receive(void)
{
UART1_receivebyte();
PE_ODR ^=0X01;
}
//#define UART1_R_RXNE_vector 0x14 //串口1中断接收
#pragma vector =UART1_R_RXNE_vector
__interrupt void UART1_receive(void)
{
UART1_receivebyte();
PE_ODR ^=0X01;
}
