8H SPI功能執行失败(互为主從)
采用兩颗AI8H1K28,设互为主從,使用手册上的SPI程序(查询方式),仍失败。请高手指点,谢谢!! #include "ai8h.h"#include "intrins.h"sbit SS = P1^0;sbit LED = P1^1;sbit KEY = P0^0;void SPI_Isr() interrupt 9{SPSTAT = 0xc0; //清中断标志if (SPCTL & 0x10){ //主机模式SS = 1; //拉高从机的 SS 管脚SPCTL = 0x40; //重新设置为从机待机}else{ //从机模式SPDAT = SPDAT; //将接收到的数据回传给主机}LED = !LED; //测试端口}void main(){P_SW2 |= 0x80; //使能访问 XFR,没有冲突不用关闭P0M0 = 0x00;P0M1 = 0x00;P1M0 = 0x00;P1M1 = 0x00;P2M0 = 0x00;P2M1 = 0x00;P3M0 = 0x00;P3M1 = 0x00;P4M0 = 0x00;P4M1 = 0x00;P5M0 = 0x00;P5M1 = 0x00;LED = 1;KEY = 1;SS = 1;SPCTL = 0x40; //使能 SPI 从机模式进行待机SPSTAT = 0xc0; //清中断标志IE2 = ESPI; //使能 SPI 中断EA = 1;while (1){if (!KEY) //等待按键触发{SPCTL = 0x50; //使能 SPI 主机模式SS = 0; //拉低从机 SS 管脚SPDAT = 0x5a; //发送测试数据while (!KEY); //等待按键释放}}}加入ai8h.h后,仍報错。 加入aih.h后,仍報错。
页:
[1]