串行数据输入单片机如何存储。

假如spi总线,用单片机自带的spi接口,数据可以存储到sspubf,接收完成后在做进一步处理。如果模拟spi接口的话,接收数据的过程中如何存储呢?... 假如spi总线,用单片机自带的spi接口,数据可以存储到sspubf,接收完成后在做进一步处理。如果模拟spi接口的话,接收数据的过程中如何存储呢? 展开
 我来答
藏在水中的人
2012-02-21 · TA获得超过990个赞
知道小有建树答主
回答量:474
采纳率:0%
帮助的人:567万
展开全部
//读SPI接口读写程序
sbit MISO =P1^3; //SPI输入端口
sbit MOSI =P1^4; //SPI输出端口
sbit SCK =P1^5; //SPI时钟端口

void inerDelay_us(unsigned char n)
{
for(;n>0;n--)
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();

}

unsigned int SPI_RW(uint uchar)
{
uint bit_ctr;
for(bit_ctr=0;bit_ctr<8;bit_ctr++) // output 8-bit
{
MOSI = (uchar & 0x80); // output 'uchar', MSB to MOSI
uchar = (uchar << 1); // shift next bit into MSB..
SCK = 1; // Set SCK high..
inerDelay_us(1); //延时一定的时间
uchar |= MISO; // 读SPI口输入口
SCK = 0; // ..then set SCK low again
inerDelay_us(1) ; //延时一定的时间
}
return(uchar); // return read uchar
}
JZ_Jack
2012-02-20 · TA获得超过428个赞
知道小有建树答主
回答量:217
采纳率:0%
帮助的人:291万
展开全部
弄一个移位寄存器,时钟边沿到来的时候采样并移位,一个完整的数据传输完毕后,再把结果保存到sspbuf
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式