- 21
- 0
- 约6.15千字
- 约 9页
- 2017-04-26 发布于浙江
- 举报
spi同步串行接口
AVR单片机(学习ing)— (十)、ATMEGA16 的同步串行接口SPI—02
一遍就哦了~~
寄存器比较少~~所以~~设置起来也很简单~~
不过有点要注意的:
1)那就是在之前的介绍中说过,在说一遍~~
主机和从机的两个移位寄存器可以被认为是一个公开的 16位环形移位寄存器,当数据从主
机移向从机时,同时从机饿数据也向相反的放向移向主机。这就意味着在一个以为周期内,
主机和从机的数据进行了交换。 (不过这个例子里没有用到这个,下个会用到~~呵呵~~),
早知道对谁都好~~
2)配置为SPI主机时,SPI接口不自动控制SS引脚,必须由用户软件来处理。还有配置为
从机时,只要SS引脚为高,SPI接口将一直保持睡眠状态,并保持MISO为三态。(这个
章节的第一篇文章有详细的介绍~~自己可以看看~~)
3)SPI系统的发送方向只有一个缓冲器,而接收方向有两个缓冲器。也就是说,在发送时
一定要等到移位过程全部结束后才能对SPI数据寄存器执行写操作(这里也就是要有这个语
句:while(!(SPSR(1SPIF)));)。而在接收数据时,需要在下一个字符移位过程结束之前
通过访问SPI数据寄存器读取接收到的字节(来个这个语句:都是一样的
~~while(!(SPSR(1SPIF)));)
)具体的SPI引脚的配 ~~看这一章的第一篇文章~~
十、ATMEGA16 的同步串行接口SPI
十— (02)、ATMEGA16 的同步串行接口SPI的串行通讯实验
然后就是程序喽:
IAR10_1_M.c:(主机发送)
//
//这个是ATMEGA16作为主机的情况下的文件
//主机每隔1s发送数据0x55给从机,从机的D1指示灯每1s闪烁一次
#includeioavr.h
#includedelayics.h
#includemacroandconst.h
//
#defineSPIF7
//
//端口初始化函数
voidport_init()
{
DDRB=0XB0; //SCK、MOSI、SS置位为输出,MISO设置为输入
PORTB=0X00; //输出低电平,输入也是低电平
}
//
//SPI初始化函数
voidspi_init()
{
SPCR=0x51; //使能SPI;时钟选择为16分频;时钟极性 (CPOL)为低电
平,起始沿为上升沿,结束沿为下降沿;
//时钟相位(CPHA)在起始沿采样
}
//
//芯片初始化函数
voiddevice_init()
{
port_init();
spi_init();
}
//
//SPI主机发送函数
voidspi_master_send(uchardat)
{
SPDR=dat;
while(!(SPSR(1SPIF))); //等待传输结束
}
//
//main
voidmain()
{
device_init();
while(1)
{
spi_master_send(0x55);
delay_s(1);
}
}
IAR10_1_S.c:(从机接收)
//
//这就是ATMEGA16从机接收的文件了
#includeioavr.h
#includedelayics.h
#includemacroandconst.h
#includebitics.h
#includeintrinsics.h
//
#defineSPIF7
//
//端口初始化函数
voidport_init()
{
DDRB=0X41; //SCK、MOSI、SS置位为输入,MISO设置为输出
PORTB=0X01; //上面的输出低电平,输入也是低电平;同时PB0为输出高
电平~~用于点亮法官二极管
}
//
//SPI初始化函数
voidspi_init()
{
SPCR=0x41; //使能SPI;为从机模式;时钟选择为16分频;时钟极性
(CPOL)为低电平,起始沿为上升沿,结束沿为下降沿;
//时钟相位(CPHA)在起始沿采样
}
//
//芯片初始化函数
voidd
您可能关注的文档
最近下载
- 常州大学《大学英语一》2024-----2025学年期末试卷(A卷).pdf VIP
- 艾米克变频器AMK3100中文说明书使用手册.pdf
- 必背古诗词75首(可打印) .pdf VIP
- 某知名汽车维修企业员工手册范本.docx VIP
- 2025年二建水利b证考试真题及答案.docx
- 安全驾驶教育培训课件.ppt VIP
- 汽车维修车间员工职责手册.docx VIP
- 黑龙江省哈尔滨市第三中学校2025-2026学年高二上学期9月月考物理试卷.docx VIP
- 初中语文名著导读--《骆驼祥子》知识点总结归纳.docx VIP
- 实施指南(2025)《DAT 22-2015 归档文件整理规则》.pptx VIP
原创力文档

文档评论(0)