STM8S103飞线外接芯片,I2C不能得到slaveAddress应答,通讯失败。
测试标签123
IAR FOR ARM和IAR FOR STM8无法共存,
STM8L052,液晶内部电源怎么用?
STM8S105C6T6 UART2串口,能接收数据,不能发送数据
STM8S105K4 串口2 无奇偶校验,也能接收 偶校验的 数据
在STM8S的IAP使用中断和APP使用中断问题
STM8L151 SMBUS设计
STM8S103F复位异常
STM8L的LCD调试时不亮
微信公众号
手机版
void Uart1_Init()
{
UART1_DeInit();
UART1_Init((u32)9600,
UART1_WORDLENGTH_8D,
UART1_STOPBITS_1,
UART1_PARITY_NO,
UART1_SYNCMODE_CLOCK_DISABLE,
UART1_MODE_TXRX_ENABLE);//收发模式 波特率9600
//UART1_ITConfig(UART1_IT_RXNE_OR, ENABLE);//串口接收中断
UART1_Cmd(ENABLE);//串口打开
}
然后串口就开了。
if((UART1->SR & 0x80)!=0)//TXE =1 发送缓冲空
{//发送缓冲区空
if(message_num)
{
message_num--;
TXREG=Message_pool[message_num];
}
else
{//消息队列结束
if(Data_recived)
{//消息: Got Data!
Data_recived=0;
message_num=10;
Message_pool[9]='G';
Message_pool[8]='o';
Message_pool[7]='t';
Message_pool[6]=' ';
Message_pool[5]='D';
Message_pool[4]='a';
Message_pool[3]='t';
Message_pool[2]='a';
Message_pool[1]='!';
}
else if(OK_flag)
{//消息: Trans Ok
OK_flag=0;
message_num=10;
Message_pool[9]='T';
Message_pool[8]='r';
Message_pool[7]='a';
Message_pool[6]='n';
Message_pool[5]='s';
Message_pool[4]=' ';
Message_pool[3]='O';
Message_pool[2]='K';
Message_pool[1]='!';
}
}
}
主程序添加↑这段,于是当message_num不为0,数据池有数据的时候就发出去了。。
补一个宏定义。
//------------------------
#define TXREG UART1->DR