單片機(jī)
我想用單片機(jī)通過串口發(fā)送一串二進(jìn)制數(shù)(例如:0100101,不是8位也不是16位的數(shù)),我只會(huì)C語(yǔ)言,但是c語(yǔ)言好像不能發(fā)二進(jìn)制的,求高手指點(diǎn)。
類似這種:
#include
#define uchar unsigned char
#define uint unsigned int
void init_uart(void);
void delay(uint x);
unsigned char code SHUJU[]={0x82,0x03,0x0a,0x15,0x15,0x15,0x15,0x15,0x15,0x15,0x15,0x24,0x03,0x39,0x71};
void main()
{
init_uart();
while(1)
{
{
SBUF =SHUJU[a];
while(!TI);
TI=0;
}
c=356;
while(c--);
}
}
void init_uart()
{
TMOD=0X20;
TH1=0xfd;
TL1=0xfd;
TR1=1;
SCON=0X40;
PCON=0X80;
// ES=1; //打開接收中斷
// EA=1; //打開總中斷
//打開計(jì)數(shù)器
}
SBUF =SHUJU[a]; 這里要是能寫成SBUF=0100101B就好了,當(dāng)然我不是為了用二進(jìn)制表示16進(jìn)制,我想讓串口輸出單純二進(jìn)制,長(zhǎng)串的二進(jìn)制
其實(shí)我是想模擬一下這個(gè)波形(這個(gè)波形用16進(jìn)制不能表示,也可能是我不會(huì))
MSB=1是地址