|
|
void uart2_init(u32 baud)
{
MUX_SEL |= 0x40;
P0MDOUT &= 0xCF;
P0MDOUT |= 0x10;
ADCON = 0x80;
SCON0 = 0x50;
PCON &= 0x7F;//SMOD=0
//SMOD=0
baud = 1024-(u16)(3225600.0f/baud);
SREL0H = (baud>>8)&0xff;
SREL0L = baud&0xff;
#if(UART2_INT_EN)
ES0 = 1;
EA = 1;
uart2_rx_sta = 0;
uart2_step = 0;
#else
ES0 = 0;
#endif
}
void u2_send_byte(u8 byte)
{
//ES0 = 0;
SBUF0 = byte;
while(!TI0);
TI0 = 0;
#if(UART2_INT_EN)
ES0 = 1;
#endif
}
void u2_send_bytes(u8 *bytes,u16 len)
{
u16 i;
for(i=0;i<len;i++)
{
u2_send_byte(bytes);
}
}
void main(void)
{
u8 closeToSend[] = {0xD0, 0xC4, 0x00, 0x05,0x00,0x05,0x00,0xA0,0x0B,0xDD};
//u16 len;
u16 btn_in_val;
sys_init();
uart2_init(115200);
while(1)
{
sys_read_vp(IN_BTN,(u8*)&btn_in_val,1);
if(btn_in_val==1)
{
u2_send_bytes(closeToSend,10);
btn_in_val = 0;
sys_write_vp(IN_BTN,(u8*)&btn_in_val,1);
}
}
}
发送的51程序就是用的熊佳余老师的代码,电脑端接收到的数据是AF BF 07 3A AD AF 9F D0 32 72
|
|